diff --git a/CHANGELOG.md b/CHANGELOG.md index ce8b9b304c1..ed444ebc513 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,31 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/). +## 3.99.0 - 2026-10-20 +### Added +- Support for the OCI Public Safety and Security service +- Support for container database cloning and snapshots for Exadata Database Service on Exascale Infrastructure in the Database service +- Support for sandbox warm pools, outbound network policies, and credential injection in the Generative AI service +- Support for sandbox lifecycle and snapshot management, command execution, and file operations in the Generative AI service +- Support for no-auth mode for hosted applications in the Generative AI service +- Support for customer-provided capacity reservations for dedicated AI clusters in the Generative AI service +- Support for listing allocatable GPUs for dedicated AI clusters in the Generative AI service +- Support for the OAI_H100_X4 dedicated AI cluster unit shape in the Generative AI service +- Support for audio-text-to-text, audio translation, and video-text-to-text model capabilities in the Generative AI service +- Support for PostgreSQL database system members in the Disaster Recovery service +- Support for dynamic and static resource management modes for compute shapes in the Compute service +- Support for retrieving subscription details in the OneSubscription service +- Support for listing subscription usage ledgers in the OneSubscription service +- Support for remote reindexing trust configurations with CA bundles in the OpenSearch service +- Support for AI provider connections in the GoldenGate service +- Support for Databricks engine connections with Azure Data Lake Storage, OCI Object Storage, and Unity Catalog artifact locations in the GoldenGate service +- Support for Spark connections with OCI Object Storage artifact locations in the GoldenGate service +- Support for Oracle AI Data Platform engine connections in the GoldenGate service +- Support for in-place major version upgrades of database systems in the PostgreSQL service   + +### Breaking Changes +- Method `public java.lang.String getCertificateId()` has been removed from the model `com.oracle.bmc.opensearch.model.RemoteReindexSourceDetails` in the OpenSearch service + ## 3.98.0 - 2026-10-13 ### Added - Support for the Continuous Consumption Discount Offers service diff --git a/bmc-accessgovernancecp/pom.xml b/bmc-accessgovernancecp/pom.xml index c0371743670..d563493947c 100644 --- a/bmc-accessgovernancecp/pom.xml +++ b/bmc-accessgovernancecp/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-accessgovernancecp @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-addons/bmc-adk/pom.xml b/bmc-addons/bmc-adk/pom.xml index f008d56eafc..f2cfb959723 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.98.0 + 3.99.0 oci-java-sdk-addons-adk diff --git a/bmc-addons/bmc-aispeech-realtime/pom.xml b/bmc-addons/bmc-aispeech-realtime/pom.xml index 67da65dc107..9d7b656c6ae 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.98.0 + 3.99.0 ../pom.xml 4.0.0 @@ -53,12 +53,12 @@ com.oracle.oci.sdk oci-java-sdk-aispeech - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 compile diff --git a/bmc-addons/bmc-apache-configurator-jersey-addon/pom.xml b/bmc-addons/bmc-apache-configurator-jersey-addon/pom.xml index fd46f8939b1..3665c5f6564 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.98.0 + 3.99.0 ../pom.xml @@ -17,14 +17,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.98.0 + 3.99.0 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 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 91acf1a98b9..eef981fa6e8 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.98.0 + 3.99.0 ../pom.xml @@ -17,14 +17,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.98.0 + 3.99.0 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.98.0 + 3.99.0 pom import diff --git a/bmc-addons/bmc-apache-connector-provider/pom.xml b/bmc-addons/bmc-apache-connector-provider/pom.xml index 1427d52615a..09e849c23ca 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.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ 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 0eb97631b39..61c63f1032e 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.98.0 + 3.99.0 4.0.0 @@ -38,25 +38,25 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 compile com.oracle.oci.sdk oci-java-sdk-core - 3.98.0 + 3.99.0 test com.oracle.oci.sdk oci-java-sdk-identity - 3.98.0 + 3.99.0 test com.oracle.oci.sdk oci-java-sdk-keymanagement - 3.98.0 + 3.99.0 test diff --git a/bmc-addons/bmc-resteasy-client-configurator/pom.xml b/bmc-addons/bmc-resteasy-client-configurator/pom.xml index 2d22047b07a..68a8f7a5795 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.98.0 + 3.99.0 ../pom.xml @@ -23,7 +23,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ 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 813f24e9034..47e0a2bc3be 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.98.0 + 3.99.0 ../pom.xml 4.0.0 @@ -39,13 +39,13 @@ com.oracle.oci.sdk oci-java-sdk-addons-sasl - 3.98.0 + 3.99.0 compile com.oracle.oci.sdk oci-java-sdk-addons-oke-workload-identity - 3.98.0 + 3.99.0 compile diff --git a/bmc-addons/bmc-sasl/pom.xml b/bmc-addons/bmc-sasl/pom.xml index c97d99fa1e5..54f22ebb069 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.98.0 + 3.99.0 ../pom.xml @@ -61,7 +61,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-addons/bmc-sse-support-jersey3/pom.xml b/bmc-addons/bmc-sse-support-jersey3/pom.xml index 87406c7b261..f6acb5ad056 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.98.0 + 3.99.0 ../pom.xml 4.0.0 @@ -150,12 +150,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-generativeaiinference - 3.98.0 + 3.99.0 test @@ -164,7 +164,7 @@ but the code in it needs it. --> com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.98.0 + 3.99.0 diff --git a/bmc-addons/bmc-sse-support/pom.xml b/bmc-addons/bmc-sse-support/pom.xml index f04db2207ec..d64c7ac3e29 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.98.0 + 3.99.0 ../pom.xml 4.0.0 @@ -150,12 +150,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-generativeaiinference - 3.98.0 + 3.99.0 test @@ -164,7 +164,7 @@ but the code in it needs it. --> com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 diff --git a/bmc-addons/pom.xml b/bmc-addons/pom.xml index 445a320229a..1f83d34b7a5 100644 --- a/bmc-addons/pom.xml +++ b/bmc-addons/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml diff --git a/bmc-adm/pom.xml b/bmc-adm/pom.xml index 137df85f569..a45eec60984 100644 --- a/bmc-adm/pom.xml +++ b/bmc-adm/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-adm @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-aidataplatform/pom.xml b/bmc-aidataplatform/pom.xml index 69036fa3285..cfe4e58ae71 100644 --- a/bmc-aidataplatform/pom.xml +++ b/bmc-aidataplatform/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-aidataplatform @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-aidocument/pom.xml b/bmc-aidocument/pom.xml index b8acf101921..63a43d89391 100644 --- a/bmc-aidocument/pom.xml +++ b/bmc-aidocument/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-aidocument @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ailanguage/pom.xml b/bmc-ailanguage/pom.xml index 585382427a0..6e6a1ba1aff 100644 --- a/bmc-ailanguage/pom.xml +++ b/bmc-ailanguage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ailanguage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-aispeech/pom.xml b/bmc-aispeech/pom.xml index 51544b4c32b..2cf7d7aa612 100644 --- a/bmc-aispeech/pom.xml +++ b/bmc-aispeech/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-aispeech @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-aivision/pom.xml b/bmc-aivision/pom.xml index 90539c0479d..74abb4b6f32 100644 --- a/bmc-aivision/pom.xml +++ b/bmc-aivision/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-aivision @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-analytics/pom.xml b/bmc-analytics/pom.xml index b3cab4b6208..a50fe2a405e 100644 --- a/bmc-analytics/pom.xml +++ b/bmc-analytics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-analytics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-announcementsservice/pom.xml b/bmc-announcementsservice/pom.xml index 3e6b756d718..d7a402a4c23 100644 --- a/bmc-announcementsservice/pom.xml +++ b/bmc-announcementsservice/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-announcementsservice @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apiaccesscontrol/pom.xml b/bmc-apiaccesscontrol/pom.xml index 42cba373f8a..e56b00e4be5 100644 --- a/bmc-apiaccesscontrol/pom.xml +++ b/bmc-apiaccesscontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apiaccesscontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apigateway/pom.xml b/bmc-apigateway/pom.xml index e18275619ea..f5f7cd7c56a 100644 --- a/bmc-apigateway/pom.xml +++ b/bmc-apigateway/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apigateway @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apiplatform/pom.xml b/bmc-apiplatform/pom.xml index 3f2fb644237..fa6ec48b8fd 100644 --- a/bmc-apiplatform/pom.xml +++ b/bmc-apiplatform/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apiplatform @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apmconfig/pom.xml b/bmc-apmconfig/pom.xml index 9215eeebb76..db8e16c00e6 100644 --- a/bmc-apmconfig/pom.xml +++ b/bmc-apmconfig/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apmconfig @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apmcontrolplane/pom.xml b/bmc-apmcontrolplane/pom.xml index da52d4efaec..4048bcf9d00 100644 --- a/bmc-apmcontrolplane/pom.xml +++ b/bmc-apmcontrolplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apmcontrolplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apmsynthetics/pom.xml b/bmc-apmsynthetics/pom.xml index 496f792cefc..727a9685021 100644 --- a/bmc-apmsynthetics/pom.xml +++ b/bmc-apmsynthetics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apmsynthetics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-apmtraces/pom.xml b/bmc-apmtraces/pom.xml index 5c48aa13f06..a7414c3388f 100644 --- a/bmc-apmtraces/pom.xml +++ b/bmc-apmtraces/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-apmtraces @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-appmgmtcontrol/pom.xml b/bmc-appmgmtcontrol/pom.xml index b69868cd1d2..2ecf610d491 100644 --- a/bmc-appmgmtcontrol/pom.xml +++ b/bmc-appmgmtcontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-appmgmtcontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-artifacts/pom.xml b/bmc-artifacts/pom.xml index 2182df6735e..a373372f73b 100644 --- a/bmc-artifacts/pom.xml +++ b/bmc-artifacts/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-artifacts @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-audit/pom.xml b/bmc-audit/pom.xml index e6b5e3aee16..8d7b921b08d 100644 --- a/bmc-audit/pom.xml +++ b/bmc-audit/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-autoscaling/pom.xml b/bmc-autoscaling/pom.xml index fbc894fef86..9f53e49ff87 100644 --- a/bmc-autoscaling/pom.xml +++ b/bmc-autoscaling/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-autoscaling @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-bastion/pom.xml b/bmc-bastion/pom.xml index b3332a97f43..649ebf672a0 100644 --- a/bmc-bastion/pom.xml +++ b/bmc-bastion/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-bastion @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-batch/pom.xml b/bmc-batch/pom.xml index ca82d60d0a4..d7b2aad2a86 100644 --- a/bmc-batch/pom.xml +++ b/bmc-batch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-batch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-bds/pom.xml b/bmc-bds/pom.xml index 47a64b7095f..3031bc0ae0f 100644 --- a/bmc-bds/pom.xml +++ b/bmc-bds/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-bds @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-blockchain/pom.xml b/bmc-blockchain/pom.xml index 8c98fd14aba..31f381a08f5 100644 --- a/bmc-blockchain/pom.xml +++ b/bmc-blockchain/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-blockchain @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-bom/pom.xml b/bmc-bom/pom.xml index abe5be7ab96..41ada64c819 100644 --- a/bmc-bom/pom.xml +++ b/bmc-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk - 3.98.0 + 3.99.0 oci-java-sdk-bom pom Oracle Cloud Infrastructure SDK - BOM @@ -38,1141 +38,1153 @@ com.oracle.oci.sdk oci-java-sdk-circuitbreaker - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-enforcer-rules - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-shaded-full - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-audit - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-containerengine - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-core - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-database - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-dns - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-email - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-objectstorage-generated - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-objectstorage-extensions - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-filestorage - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-identity - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-loadbalancer - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-objectstorage - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey3 - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-addons-resteasy-client-configurator - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-addons-sasl - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-addons-oke-workload-identity - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-addons-sasl-oke-workload-identity - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-addons-aispeech-realtime - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-resourcesearch - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-addons-apache - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-keymanagement - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-announcementsservice - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-healthchecks - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-waas - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-streaming - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-resourcemanager - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-monitoring - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ons - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-autoscaling - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-budget - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-workrequests - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-limits - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-functions - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-events - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-oce - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-oda - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-analytics - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-integration - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-marketplace - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apigateway - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-datacatalog - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-dataflow - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-datascience - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-nosql - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-secrets - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-vault - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-bds - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-encryption - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-cims - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-datasafe - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-mysql - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-dataintegration - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ocvp - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-usageapi - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-blockchain - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-loggingingestion - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-logging - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-loganalytics - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-managementdashboard - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-sch - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-loggingsearch - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-managementagent - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-cloudguard - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-opsi - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-computeinstanceagent - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-optimizer - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-tenantmanagercontrolplane - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-rover - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-databasemanagement - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-artifacts - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apmsynthetics - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-goldengate - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apmcontrolplane - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apmtraces - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-networkloadbalancer - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-vulnerabilityscanning - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-databasemigration - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-servicecatalog - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ailanguage - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-operatoraccesscontrol - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-bastion - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-genericartifactscontent - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-jms - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-devops - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-datalabelingservice - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-datalabelingservicedataplane - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apmconfig - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-waf - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-certificates - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-certificatesmanagement - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-usage - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-databasetools - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-servicemanagerproxy - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-appmgmtcontrol - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ospgateway - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-identitydataplane - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-visualbuilder - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-osubusage - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-osubsubscription - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-osuborganizationsubscription - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-osubbillingschedule - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-dashboardservice - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-threatintelligence - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-aivision - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-aispeech - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-stackmonitoring - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-adm - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-licensemanager - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-onesubscription - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-governancerulescontrolplane - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-waa - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-networkfirewall - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-vnmonitoring - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-emwarehouse - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-lockbox - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-fusionapps - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-mediaservices - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-opa - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-opensearch - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-cloudmigrations - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-cloudbridge - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-disasterrecovery - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-containerinstances - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-aidocument - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-queue - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-recovery - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-vbsinst - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-identitydomains - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-accessgovernancecp - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ocicontrolcenter - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-osmanagementhub - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-fleetsoftwareupdate - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-computecloudatcustomer - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-marketplacepublisher - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-redis - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-jmsjavadownloads - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-psql - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-generativeai - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-generativeaiinference - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-capacitymanagement - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-desktops - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-emaildataplane - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-clusterplacementgroups - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-resourcescheduler - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-demandsignal - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-fleetappsmanagement - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-delegateaccesscontrol - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-generativeaiagent - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-generativeaiagentruntime - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-securityattribute - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-zpr - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-dblm - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-mngdmac - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-lustrefilestorage - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-modeldeployment - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apiaccesscontrol - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-wlms - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-addons-adk - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-dbmulticloud - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-apiplatform - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-managedkafka - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-aidataplatform - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-multicloud - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-resourceanalytics - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-jmsutils - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-iot - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-psa - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-dif - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-batch - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-marketplaceprivateoffer - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-gdp - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-limitsincrease - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-generativeaidata - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-self - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-containerregistry - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-databasetoolsruntime - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-costad - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-datacc - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ddfs - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-clusterhealth - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-distributeddatabase - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ociproductcatalog - 3.98.0 + 3.99.0 false com.oracle.oci.sdk oci-java-sdk-ccdoffers - 3.98.0 + 3.99.0 + false + + + com.oracle.oci.sdk + oci-java-sdk-pss + 3.99.0 + false + + + com.oracle.oci.sdk + oci-java-sdk-generativeaisandbox + 3.99.0 false diff --git a/bmc-budget/pom.xml b/bmc-budget/pom.xml index 3ba9ffabe28..201e2eb16d2 100644 --- a/bmc-budget/pom.xml +++ b/bmc-budget/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-budget @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-capacitymanagement/pom.xml b/bmc-capacitymanagement/pom.xml index 113a42fdfd1..e9a42f42c56 100644 --- a/bmc-capacitymanagement/pom.xml +++ b/bmc-capacitymanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-capacitymanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ccdoffers/pom.xml b/bmc-ccdoffers/pom.xml index 42381e3564c..f6433e37c6c 100644 --- a/bmc-ccdoffers/pom.xml +++ b/bmc-ccdoffers/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ccdoffers @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-certificates/pom.xml b/bmc-certificates/pom.xml index e9bc62cba68..fb59ed4d8d9 100644 --- a/bmc-certificates/pom.xml +++ b/bmc-certificates/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-certificates @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-certificatesmanagement/pom.xml b/bmc-certificatesmanagement/pom.xml index 11d7f65b30c..e7f4be7ea6f 100644 --- a/bmc-certificatesmanagement/pom.xml +++ b/bmc-certificatesmanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-certificatesmanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-cims/pom.xml b/bmc-cims/pom.xml index eca370eaba7..57c9fddab8c 100644 --- a/bmc-cims/pom.xml +++ b/bmc-cims/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-cims @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-circuitbreaker/pom.xml b/bmc-circuitbreaker/pom.xml index e5341b78749..7037ee8670e 100644 --- a/bmc-circuitbreaker/pom.xml +++ b/bmc-circuitbreaker/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-circuitbreaker diff --git a/bmc-cloudbridge/pom.xml b/bmc-cloudbridge/pom.xml index 7f06df0d178..c77dbb96e38 100644 --- a/bmc-cloudbridge/pom.xml +++ b/bmc-cloudbridge/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-cloudbridge @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-cloudguard/pom.xml b/bmc-cloudguard/pom.xml index 1fd4571edc9..81a148518b4 100644 --- a/bmc-cloudguard/pom.xml +++ b/bmc-cloudguard/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-cloudguard @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-cloudmigrations/pom.xml b/bmc-cloudmigrations/pom.xml index 6a529dfdea0..75897e36c99 100644 --- a/bmc-cloudmigrations/pom.xml +++ b/bmc-cloudmigrations/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-cloudmigrations @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-clusterhealth/pom.xml b/bmc-clusterhealth/pom.xml index 9f157c7b092..59864018936 100644 --- a/bmc-clusterhealth/pom.xml +++ b/bmc-clusterhealth/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-clusterhealth @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-clusterplacementgroups/pom.xml b/bmc-clusterplacementgroups/pom.xml index 88d5f7101b2..dea09ac21e3 100644 --- a/bmc-clusterplacementgroups/pom.xml +++ b/bmc-clusterplacementgroups/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-clusterplacementgroups @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ 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 27d6c279cd2..c14a9a90327 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.98.0 + 3.99.0 ../pom.xml @@ -93,7 +93,7 @@ com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey - 3.98.0 + 3.99.0 @@ -102,7 +102,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.98.0 + 3.99.0 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 93ae5c3ca23..6fc2e133182 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.98.0 + 3.99.0 ../pom.xml @@ -93,7 +93,7 @@ com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey3 - 3.98.0 + 3.99.0 @@ -102,7 +102,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.98.0 + 3.99.0 jakarta.ws.rs diff --git a/bmc-common-httpclient-choices/pom.xml b/bmc-common-httpclient-choices/pom.xml index 0f4bf6c12bf..bc396ec6c3d 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.98.0 + 3.99.0 ../pom.xml diff --git a/bmc-common-httpclient/pom.xml b/bmc-common-httpclient/pom.xml index 5400d1827a0..b43053f9e40 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.98.0 + 3.99.0 ../pom.xml diff --git a/bmc-common/pom.xml b/bmc-common/pom.xml index ad0d499548f..0317b506a94 100644 --- a/bmc-common/pom.xml +++ b/bmc-common/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -87,12 +87,12 @@ com.oracle.oci.sdk oci-java-sdk-circuitbreaker - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.98.0 + 3.99.0 @@ -137,7 +137,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 test diff --git a/bmc-computecloudatcustomer/pom.xml b/bmc-computecloudatcustomer/pom.xml index a33ce7195b4..1dc6bd90d33 100644 --- a/bmc-computecloudatcustomer/pom.xml +++ b/bmc-computecloudatcustomer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-computecloudatcustomer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-computeinstanceagent/pom.xml b/bmc-computeinstanceagent/pom.xml index 3e7a36b1b3e..96989972890 100644 --- a/bmc-computeinstanceagent/pom.xml +++ b/bmc-computeinstanceagent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-computeinstanceagent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-containerengine/pom.xml b/bmc-containerengine/pom.xml index 92e922c4de4..778db47a040 100644 --- a/bmc-containerengine/pom.xml +++ b/bmc-containerengine/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-containerinstances/pom.xml b/bmc-containerinstances/pom.xml index 746038d4bae..e247c7b4feb 100644 --- a/bmc-containerinstances/pom.xml +++ b/bmc-containerinstances/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-containerinstances @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-containerregistry/pom.xml b/bmc-containerregistry/pom.xml index 9341392693a..b61ab78d2f8 100644 --- a/bmc-containerregistry/pom.xml +++ b/bmc-containerregistry/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-containerregistry @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-core/pom.xml b/bmc-core/pom.xml index a2f7acac7eb..2de266434bf 100644 --- a/bmc-core/pom.xml +++ b/bmc-core/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.98.0 + 3.99.0 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 1ce0df6ac4d..19e85135e5d 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 @@ -53,6 +53,7 @@ public final class Shape extends com.oracle.bmc.http.client.internal.ExplicitlyS "quotaNames", "isSubcore", "isFlexible", + "supportedResourceManagement", "resizeCompatibleShapes", "recommendedAlternatives", "platformNames" @@ -86,6 +87,7 @@ public Shape( java.util.List quotaNames, Boolean isSubcore, Boolean isFlexible, + java.util.List supportedResourceManagement, java.util.List resizeCompatibleShapes, java.util.List recommendedAlternatives, java.util.List platformNames) { @@ -118,6 +120,7 @@ public Shape( this.quotaNames = quotaNames; this.isSubcore = isSubcore; this.isFlexible = isFlexible; + this.supportedResourceManagement = supportedResourceManagement; this.resizeCompatibleShapes = resizeCompatibleShapes; this.recommendedAlternatives = recommendedAlternatives; this.platformNames = platformNames; @@ -575,6 +578,22 @@ public Builder isFlexible(Boolean isFlexible) { this.__explicitlySet__.add("isFlexible"); return this; } + /** The resource management modes supported by this shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("supportedResourceManagement") + private java.util.List supportedResourceManagement; + + /** + * The resource management modes supported by this shape. + * + * @param supportedResourceManagement the value to set + * @return this builder + */ + public Builder supportedResourceManagement( + java.util.List supportedResourceManagement) { + this.supportedResourceManagement = supportedResourceManagement; + this.__explicitlySet__.add("supportedResourceManagement"); + return this; + } /** * The list of compatible shapes that this shape can be changed to. For more information, * see [Changing the Shape of an @@ -666,6 +685,7 @@ public Shape build() { this.quotaNames, this.isSubcore, this.isFlexible, + this.supportedResourceManagement, this.resizeCompatibleShapes, this.recommendedAlternatives, this.platformNames); @@ -761,6 +781,9 @@ public Builder copy(Shape model) { if (model.wasPropertyExplicitlySet("isFlexible")) { this.isFlexible(model.getIsFlexible()); } + if (model.wasPropertyExplicitlySet("supportedResourceManagement")) { + this.supportedResourceManagement(model.getSupportedResourceManagement()); + } if (model.wasPropertyExplicitlySet("resizeCompatibleShapes")) { this.resizeCompatibleShapes(model.getResizeCompatibleShapes()); } @@ -1263,6 +1286,65 @@ public Boolean getIsFlexible() { return isFlexible; } + /** */ + public enum SupportedResourceManagement implements com.oracle.bmc.http.internal.BmcEnum { + Dynamic("DYNAMIC"), + Static("STATIC"), + + /** + * 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(SupportedResourceManagement.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SupportedResourceManagement v : SupportedResourceManagement.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + SupportedResourceManagement(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SupportedResourceManagement create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'SupportedResourceManagement', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** The resource management modes supported by this shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("supportedResourceManagement") + private final java.util.List supportedResourceManagement; + + /** + * The resource management modes supported by this shape. + * + * @return the value + */ + public java.util.List getSupportedResourceManagement() { + return supportedResourceManagement; + } + /** * The list of compatible shapes that this shape can be changed to. For more information, see * [Changing the Shape of an @@ -1364,6 +1446,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", quotaNames=").append(String.valueOf(this.quotaNames)); sb.append(", isSubcore=").append(String.valueOf(this.isSubcore)); sb.append(", isFlexible=").append(String.valueOf(this.isFlexible)); + sb.append(", supportedResourceManagement=") + .append(String.valueOf(this.supportedResourceManagement)); sb.append(", resizeCompatibleShapes=").append(String.valueOf(this.resizeCompatibleShapes)); sb.append(", recommendedAlternatives=") .append(String.valueOf(this.recommendedAlternatives)); @@ -1419,6 +1503,8 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.quotaNames, other.quotaNames) && java.util.Objects.equals(this.isSubcore, other.isSubcore) && java.util.Objects.equals(this.isFlexible, other.isFlexible) + && java.util.Objects.equals( + this.supportedResourceManagement, other.supportedResourceManagement) && java.util.Objects.equals( this.resizeCompatibleShapes, other.resizeCompatibleShapes) && java.util.Objects.equals( @@ -1519,6 +1605,11 @@ public int hashCode() { result = (result * PRIME) + (this.quotaNames == null ? 43 : this.quotaNames.hashCode()); result = (result * PRIME) + (this.isSubcore == null ? 43 : this.isSubcore.hashCode()); result = (result * PRIME) + (this.isFlexible == null ? 43 : this.isFlexible.hashCode()); + result = + (result * PRIME) + + (this.supportedResourceManagement == null + ? 43 + : this.supportedResourceManagement.hashCode()); result = (result * PRIME) + (this.resizeCompatibleShapes == null 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 ef0fbfbba83..cc58bf237dd 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 @@ -9187,6 +9187,12 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.Shape$SupportedResourceManagement", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.core.model.ShapeAccessControlServiceEnabledPlatformOptions", diff --git a/bmc-costad/pom.xml b/bmc-costad/pom.xml index 6493ec9aea5..b7655af6a20 100644 --- a/bmc-costad/pom.xml +++ b/bmc-costad/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-costad @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dashboardservice/pom.xml b/bmc-dashboardservice/pom.xml index 0800aef5ebc..e6a7626c00b 100644 --- a/bmc-dashboardservice/pom.xml +++ b/bmc-dashboardservice/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-dashboardservice @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-database/pom.xml b/bmc-database/pom.xml index 07c1b6d1683..91c3af14fe1 100644 --- a/bmc-database/pom.xml +++ b/bmc-database/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.98.0 + 3.99.0 diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/Database.java b/bmc-database/src/main/java/com/oracle/bmc/database/Database.java index 1869de4350c..6e387da0d3a 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/Database.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/Database.java @@ -1471,6 +1471,22 @@ CreateDataGuardAssociationResponse createDataGuardAssociation( */ CreateDatabaseResponse createDatabase(CreateDatabaseRequest request); + /** + * Creates a Database Snapshot + * + * @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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 + * CreateDatabaseSnapshot API. + */ + CreateDatabaseSnapshotResponse createDatabaseSnapshot(CreateDatabaseSnapshotRequest request); + /** * create database software image in the specified compartment. * @@ -2169,6 +2185,22 @@ DeleteCloudExadataInfrastructureResponse deleteCloudExadataInfrastructure( */ DeleteDatabaseResponse deleteDatabase(DeleteDatabaseRequest request); + /** + * Deletes the specified Exadata Database Snapshot. + * + * @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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 + * DeleteDatabaseSnapshot API. + */ + DeleteDatabaseSnapshotResponse deleteDatabaseSnapshot(DeleteDatabaseSnapshotRequest request); + /** * Delete a database software image * @@ -3895,6 +3927,22 @@ GetConsoleHistoryContentResponse getConsoleHistoryContent( */ GetDatabaseResponse getDatabase(GetDatabaseRequest request); + /** + * Gets information about the specified Exadata Database Snapshot. + * + * @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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 GetDatabaseSnapshot + * API. + */ + GetDatabaseSnapshotResponse getDatabaseSnapshot(GetDatabaseSnapshotRequest request); + /** * Gets information about the specified database software image. * @@ -5477,6 +5525,22 @@ ListContainerDatabasePatchesResponse listContainerDatabasePatches( ListDataGuardAssociationsResponse listDataGuardAssociations( ListDataGuardAssociationsRequest request); + /** + * Gets a list of the Exadata Database Snapshots in the specified 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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 + * ListDatabaseSnapshots API. + */ + ListDatabaseSnapshotsResponse listDatabaseSnapshots(ListDatabaseSnapshotsRequest request); + /** * Gets a list of the database software images in the specified compartment. * @@ -8088,6 +8152,22 @@ UpdateDataGuardAssociationResponse updateDataGuardAssociation( */ UpdateDatabaseResponse updateDatabase(UpdateDatabaseRequest request); + /** + * Updates a Database Snapshot + * + * @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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 + * UpdateDatabaseSnapshot API. + */ + UpdateDatabaseSnapshotResponse updateDatabaseSnapshot(UpdateDatabaseSnapshotRequest request); + /** * Updates the properties of a Database Software Image, like Display Nmae * diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsync.java b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsync.java index 1dbfc37c50d..b5b1002fa70 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsync.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsync.java @@ -1500,6 +1500,22 @@ java.util.concurrent.Future createDatabase( com.oracle.bmc.responses.AsyncHandler handler); + /** + * Creates a Database Snapshot + * + * @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 createDatabaseSnapshot( + CreateDatabaseSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + CreateDatabaseSnapshotRequest, CreateDatabaseSnapshotResponse> + handler); + /** * create database software image in the specified compartment. * @@ -2207,6 +2223,22 @@ java.util.concurrent.Future deleteDatabase( com.oracle.bmc.responses.AsyncHandler handler); + /** + * Deletes the specified Exadata Database Snapshot. + * + * @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 deleteDatabaseSnapshot( + DeleteDatabaseSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + DeleteDatabaseSnapshotRequest, DeleteDatabaseSnapshotResponse> + handler); + /** * Delete a database software image * @@ -3948,6 +3980,22 @@ java.util.concurrent.Future getDatabase( GetDatabaseRequest request, com.oracle.bmc.responses.AsyncHandler handler); + /** + * Gets information about the specified Exadata Database Snapshot. + * + * @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 getDatabaseSnapshot( + GetDatabaseSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetDatabaseSnapshotRequest, GetDatabaseSnapshotResponse> + handler); + /** * Gets information about the specified database software image. * @@ -5543,6 +5591,22 @@ java.util.concurrent.Future listDataGuardAsso ListDataGuardAssociationsRequest, ListDataGuardAssociationsResponse> handler); + /** + * Gets a list of the Exadata Database Snapshots in the specified 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 listDatabaseSnapshots( + ListDatabaseSnapshotsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListDatabaseSnapshotsRequest, ListDatabaseSnapshotsResponse> + handler); + /** * Gets a list of the database software images in the specified compartment. * @@ -8183,6 +8247,22 @@ java.util.concurrent.Future updateDatabase( com.oracle.bmc.responses.AsyncHandler handler); + /** + * Updates a Database Snapshot + * + * @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 updateDatabaseSnapshot( + UpdateDatabaseSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + UpdateDatabaseSnapshotRequest, UpdateDatabaseSnapshotResponse> + handler); + /** * Updates the properties of a Database Software Image, like Display Nmae * diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsyncClient.java b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsyncClient.java index 0679ae52982..07faa6d638a 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsyncClient.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseAsyncClient.java @@ -3275,6 +3275,39 @@ public java.util.concurrent.Future createDatabase( .callAsync(handler); } + @Override + public java.util.concurrent.Future createDatabaseSnapshot( + CreateDatabaseSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CreateDatabaseSnapshotRequest, CreateDatabaseSnapshotResponse> + handler) { + Objects.requireNonNull( + request.getCreateDatabaseSnapshotDetails(), + "createDatabaseSnapshotDetails is required"); + + return clientCall(request, CreateDatabaseSnapshotResponse::builder) + .logger(LOG, "createDatabaseSnapshot") + .serviceDetails("Database", "CreateDatabaseSnapshot", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshot.class, + CreateDatabaseSnapshotResponse.Builder::databaseSnapshot) + .handleResponseHeaderString( + "opc-work-request-id", + CreateDatabaseSnapshotResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString("etag", CreateDatabaseSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", CreateDatabaseSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future createDatabaseSoftwareImage( @@ -4682,6 +4715,37 @@ public java.util.concurrent.Future deleteDatabase( .callAsync(handler); } + @Override + public java.util.concurrent.Future deleteDatabaseSnapshot( + DeleteDatabaseSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + DeleteDatabaseSnapshotRequest, DeleteDatabaseSnapshotResponse> + handler) { + + Validate.notBlank(request.getDatabaseSnapshotId(), "databaseSnapshotId must not be blank"); + + return clientCall(request, DeleteDatabaseSnapshotResponse::builder) + .logger(LOG, "deleteDatabaseSnapshot") + .serviceDetails( + "Database", + "DeleteDatabaseSnapshot", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/DeleteDatabaseSnapshot") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendPathParam(request.getDatabaseSnapshotId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleResponseHeaderString( + "opc-work-request-id", + DeleteDatabaseSnapshotResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", DeleteDatabaseSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future deleteDatabaseSoftwareImage( @@ -8419,6 +8483,37 @@ public java.util.concurrent.Future getDatabase( .callAsync(handler); } + @Override + public java.util.concurrent.Future getDatabaseSnapshot( + GetDatabaseSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetDatabaseSnapshotRequest, GetDatabaseSnapshotResponse> + handler) { + + Validate.notBlank(request.getDatabaseSnapshotId(), "databaseSnapshotId must not be blank"); + + return clientCall(request, GetDatabaseSnapshotResponse::builder) + .logger(LOG, "getDatabaseSnapshot") + .serviceDetails( + "Database", + "GetDatabaseSnapshot", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/GetDatabaseSnapshot") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendPathParam(request.getDatabaseSnapshotId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshot.class, + GetDatabaseSnapshotResponse.Builder::databaseSnapshot) + .handleResponseHeaderString("etag", GetDatabaseSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetDatabaseSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future getDatabaseSoftwareImage( GetDatabaseSoftwareImageRequest request, @@ -11742,6 +11837,44 @@ public java.util.concurrent.Future listDataGu .callAsync(handler); } + @Override + public java.util.concurrent.Future listDatabaseSnapshots( + ListDatabaseSnapshotsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListDatabaseSnapshotsRequest, ListDatabaseSnapshotsResponse> + handler) { + + return clientCall(request, ListDatabaseSnapshotsResponse::builder) + .logger(LOG, "listDatabaseSnapshots") + .serviceDetails( + "Database", + "ListDatabaseSnapshots", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/ListDatabaseSnapshots") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListDatabaseSnapshotsRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendQueryParam("name", request.getName()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendQueryParam("databaseId", request.getDatabaseId()) + .appendQueryParam("clusterId", request.getClusterId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshotCollection.class, + ListDatabaseSnapshotsResponse.Builder::databaseSnapshotCollection) + .handleResponseHeaderString( + "opc-request-id", ListDatabaseSnapshotsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListDatabaseSnapshotsResponse.Builder::opcNextPage) + .callAsync(handler); + } + @Override public java.util.concurrent.Future listDatabaseSoftwareImages( @@ -17836,6 +17969,43 @@ public java.util.concurrent.Future updateDatabase( .callAsync(handler); } + @Override + public java.util.concurrent.Future updateDatabaseSnapshot( + UpdateDatabaseSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + UpdateDatabaseSnapshotRequest, UpdateDatabaseSnapshotResponse> + handler) { + + Validate.notBlank(request.getDatabaseSnapshotId(), "databaseSnapshotId must not be blank"); + Objects.requireNonNull( + request.getUpdateDatabaseSnapshotDetails(), + "updateDatabaseSnapshotDetails is required"); + + return clientCall(request, UpdateDatabaseSnapshotResponse::builder) + .logger(LOG, "updateDatabaseSnapshot") + .serviceDetails( + "Database", + "UpdateDatabaseSnapshot", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/UpdateDatabaseSnapshot") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendPathParam(request.getDatabaseSnapshotId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshot.class, + UpdateDatabaseSnapshotResponse.Builder::databaseSnapshot) + .handleResponseHeaderString("etag", UpdateDatabaseSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", UpdateDatabaseSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future updateDatabaseSoftwareImage( diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseClient.java b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseClient.java index 7f4edf0f330..e7f27f29730 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseClient.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseClient.java @@ -2977,6 +2977,36 @@ public CreateDatabaseResponse createDatabase(CreateDatabaseRequest request) { .callSync(); } + @Override + public CreateDatabaseSnapshotResponse createDatabaseSnapshot( + CreateDatabaseSnapshotRequest request) { + Objects.requireNonNull( + request.getCreateDatabaseSnapshotDetails(), + "createDatabaseSnapshotDetails is required"); + + return clientCall(request, CreateDatabaseSnapshotResponse::builder) + .logger(LOG, "createDatabaseSnapshot") + .serviceDetails("Database", "CreateDatabaseSnapshot", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshot.class, + CreateDatabaseSnapshotResponse.Builder::databaseSnapshot) + .handleResponseHeaderString( + "opc-work-request-id", + CreateDatabaseSnapshotResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString("etag", CreateDatabaseSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", CreateDatabaseSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + @Override public CreateDatabaseSoftwareImageResponse createDatabaseSoftwareImage( CreateDatabaseSoftwareImageRequest request) { @@ -4228,6 +4258,34 @@ public DeleteDatabaseResponse deleteDatabase(DeleteDatabaseRequest request) { .callSync(); } + @Override + public DeleteDatabaseSnapshotResponse deleteDatabaseSnapshot( + DeleteDatabaseSnapshotRequest request) { + + Validate.notBlank(request.getDatabaseSnapshotId(), "databaseSnapshotId must not be blank"); + + return clientCall(request, DeleteDatabaseSnapshotResponse::builder) + .logger(LOG, "deleteDatabaseSnapshot") + .serviceDetails( + "Database", + "DeleteDatabaseSnapshot", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/DeleteDatabaseSnapshot") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendPathParam(request.getDatabaseSnapshotId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleResponseHeaderString( + "opc-work-request-id", + DeleteDatabaseSnapshotResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", DeleteDatabaseSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + @Override public DeleteDatabaseSoftwareImageResponse deleteDatabaseSoftwareImage( DeleteDatabaseSoftwareImageRequest request) { @@ -7560,6 +7618,33 @@ public GetDatabaseResponse getDatabase(GetDatabaseRequest request) { .callSync(); } + @Override + public GetDatabaseSnapshotResponse getDatabaseSnapshot(GetDatabaseSnapshotRequest request) { + + Validate.notBlank(request.getDatabaseSnapshotId(), "databaseSnapshotId must not be blank"); + + return clientCall(request, GetDatabaseSnapshotResponse::builder) + .logger(LOG, "getDatabaseSnapshot") + .serviceDetails( + "Database", + "GetDatabaseSnapshot", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/GetDatabaseSnapshot") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendPathParam(request.getDatabaseSnapshotId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshot.class, + GetDatabaseSnapshotResponse.Builder::databaseSnapshot) + .handleResponseHeaderString("etag", GetDatabaseSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetDatabaseSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + @Override public GetDatabaseSoftwareImageResponse getDatabaseSoftwareImage( GetDatabaseSoftwareImageRequest request) { @@ -10508,6 +10593,41 @@ public ListDataGuardAssociationsResponse listDataGuardAssociations( .callSync(); } + @Override + public ListDatabaseSnapshotsResponse listDatabaseSnapshots( + ListDatabaseSnapshotsRequest request) { + + return clientCall(request, ListDatabaseSnapshotsResponse::builder) + .logger(LOG, "listDatabaseSnapshots") + .serviceDetails( + "Database", + "ListDatabaseSnapshots", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/ListDatabaseSnapshots") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListDatabaseSnapshotsRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendQueryParam("name", request.getName()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendQueryParam("databaseId", request.getDatabaseId()) + .appendQueryParam("clusterId", request.getClusterId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshotCollection.class, + ListDatabaseSnapshotsResponse.Builder::databaseSnapshotCollection) + .handleResponseHeaderString( + "opc-request-id", ListDatabaseSnapshotsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListDatabaseSnapshotsResponse.Builder::opcNextPage) + .callSync(); + } + @Override public ListDatabaseSoftwareImagesResponse listDatabaseSoftwareImages( ListDatabaseSoftwareImagesRequest request) { @@ -15980,6 +16100,40 @@ public UpdateDatabaseResponse updateDatabase(UpdateDatabaseRequest request) { .callSync(); } + @Override + public UpdateDatabaseSnapshotResponse updateDatabaseSnapshot( + UpdateDatabaseSnapshotRequest request) { + + Validate.notBlank(request.getDatabaseSnapshotId(), "databaseSnapshotId must not be blank"); + Objects.requireNonNull( + request.getUpdateDatabaseSnapshotDetails(), + "updateDatabaseSnapshotDetails is required"); + + return clientCall(request, UpdateDatabaseSnapshotResponse::builder) + .logger(LOG, "updateDatabaseSnapshot") + .serviceDetails( + "Database", + "UpdateDatabaseSnapshot", + "https://docs.oracle.com/iaas/api/#/en/database/20160918/DatabaseSnapshot/UpdateDatabaseSnapshot") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateDatabaseSnapshotRequest::builder) + .basePath("/20160918") + .appendPathParam("databaseSnapshots") + .appendPathParam(request.getDatabaseSnapshotId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.database.model.DatabaseSnapshot.class, + UpdateDatabaseSnapshotResponse.Builder::databaseSnapshot) + .handleResponseHeaderString("etag", UpdateDatabaseSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", UpdateDatabaseSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + @Override public UpdateDatabaseSoftwareImageResponse updateDatabaseSoftwareImage( UpdateDatabaseSoftwareImageRequest request) { diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/DatabasePaginators.java b/bmc-database/src/main/java/com/oracle/bmc/database/DatabasePaginators.java index d7fab4da586..0b3c5afdebc 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/DatabasePaginators.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/DatabasePaginators.java @@ -4701,6 +4701,128 @@ public ListDataGuardAssociationsResponse apply( }); } + /** + * Creates a new iterable which will iterate over the responses received from the + * listDatabaseSnapshots 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 listDatabaseSnapshotsResponseIterator( + final ListDatabaseSnapshotsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListDatabaseSnapshotsRequest.Builder, + ListDatabaseSnapshotsRequest, + ListDatabaseSnapshotsResponse>( + new java.util.function.Supplier() { + @Override + public ListDatabaseSnapshotsRequest.Builder get() { + return ListDatabaseSnapshotsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListDatabaseSnapshotsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDatabaseSnapshotsRequest.Builder>, + ListDatabaseSnapshotsRequest>() { + @Override + public ListDatabaseSnapshotsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDatabaseSnapshotsRequest.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< + ListDatabaseSnapshotsRequest, ListDatabaseSnapshotsResponse>() { + @Override + public ListDatabaseSnapshotsResponse apply( + ListDatabaseSnapshotsRequest request) { + return client.listDatabaseSnapshots(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.database.model.DatabaseSnapshotSummary} objects contained in responses from + * the listDatabaseSnapshots 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.database.model.DatabaseSnapshotSummary} objects contained in responses + * received from the service. + */ + public Iterable + listDatabaseSnapshotsRecordIterator(final ListDatabaseSnapshotsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListDatabaseSnapshotsRequest.Builder, + ListDatabaseSnapshotsRequest, + ListDatabaseSnapshotsResponse, + com.oracle.bmc.database.model.DatabaseSnapshotSummary>( + new java.util.function.Supplier() { + @Override + public ListDatabaseSnapshotsRequest.Builder get() { + return ListDatabaseSnapshotsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListDatabaseSnapshotsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDatabaseSnapshotsRequest.Builder>, + ListDatabaseSnapshotsRequest>() { + @Override + public ListDatabaseSnapshotsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDatabaseSnapshotsRequest.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< + ListDatabaseSnapshotsRequest, ListDatabaseSnapshotsResponse>() { + @Override + public ListDatabaseSnapshotsResponse apply( + ListDatabaseSnapshotsRequest request) { + return client.listDatabaseSnapshots(request); + } + }, + new java.util.function.Function< + ListDatabaseSnapshotsResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListDatabaseSnapshotsResponse response) { + return response.getDatabaseSnapshotCollection().getItems(); + } + }); + } + /** * Creates a new iterable which will iterate over the responses received from the * listDatabaseSoftwareImages operation. This iterable will fetch more data from the server as diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseWaiters.java b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseWaiters.java index a264d717c8d..94cabc889ab 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseWaiters.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/DatabaseWaiters.java @@ -4821,6 +4821,69 @@ public CreateDatabaseResponse call() throws Exception { request); } + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. + * + * @param request the request to send + * @return a new {@link com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter< + CreateDatabaseSnapshotRequest, CreateDatabaseSnapshotResponse> + forCreateDatabaseSnapshot(CreateDatabaseSnapshotRequest request) { + return forCreateDatabaseSnapshot( + request, + com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_TERMINATION_STRATEGY, + com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_DELAY_STRATEGY); + } + + /** + * 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 + * @return a new {@link com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter< + CreateDatabaseSnapshotRequest, CreateDatabaseSnapshotResponse> + forCreateDatabaseSnapshot( + CreateDatabaseSnapshotRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy) { + if (workRequestClient == null) { + throw new IllegalStateException( + "A WorkRequestClient must be supplied to this waiter for this operation"); + } + + return new com.oracle.bmc.waiter.internal.SimpleWaiterImpl<>( + executorService, + new java.util.concurrent.Callable() { + @Override + public CreateDatabaseSnapshotResponse call() throws Exception { + final CreateDatabaseSnapshotResponse response = + client.createDatabaseSnapshot(request); + + if (response.getOpcWorkRequestId() != null) { + final com.oracle.bmc.workrequests.requests.GetWorkRequestRequest + getWorkRequestRequest = + com.oracle.bmc.workrequests.requests + .GetWorkRequestRequest.builder() + .workRequestId(response.getOpcWorkRequestId()) + .build(); + workRequestClient + .getWaiters() + .forWorkRequest( + getWorkRequestRequest, + terminationStrategy, + delayStrategy) + .execute(); + } + return response; + } + }, + request); + } + /** * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. * @@ -7118,6 +7181,69 @@ public DeleteDatabaseResponse call() throws Exception { request); } + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. + * + * @param request the request to send + * @return a new {@link com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter< + DeleteDatabaseSnapshotRequest, DeleteDatabaseSnapshotResponse> + forDeleteDatabaseSnapshot(DeleteDatabaseSnapshotRequest request) { + return forDeleteDatabaseSnapshot( + request, + com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_TERMINATION_STRATEGY, + com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_DELAY_STRATEGY); + } + + /** + * 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 + * @return a new {@link com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter< + DeleteDatabaseSnapshotRequest, DeleteDatabaseSnapshotResponse> + forDeleteDatabaseSnapshot( + DeleteDatabaseSnapshotRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy) { + if (workRequestClient == null) { + throw new IllegalStateException( + "A WorkRequestClient must be supplied to this waiter for this operation"); + } + + return new com.oracle.bmc.waiter.internal.SimpleWaiterImpl<>( + executorService, + new java.util.concurrent.Callable() { + @Override + public DeleteDatabaseSnapshotResponse call() throws Exception { + final DeleteDatabaseSnapshotResponse response = + client.deleteDatabaseSnapshot(request); + + if (response.getOpcWorkRequestId() != null) { + final com.oracle.bmc.workrequests.requests.GetWorkRequestRequest + getWorkRequestRequest = + com.oracle.bmc.workrequests.requests + .GetWorkRequestRequest.builder() + .workRequestId(response.getOpcWorkRequestId()) + .build(); + workRequestClient + .getWaiters() + .forWorkRequest( + getWorkRequestRequest, + terminationStrategy, + delayStrategy) + .execute(); + } + return response; + } + }, + request); + } + /** * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. * @@ -13419,6 +13545,113 @@ public boolean test(GetDatabaseResponse response) { request); } + /** + * 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 + forDatabaseSnapshot( + GetDatabaseSnapshotRequest request, + com.oracle.bmc.database.model.DatabaseSnapshot.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 forDatabaseSnapshot( + 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 + forDatabaseSnapshot( + GetDatabaseSnapshotRequest request, + com.oracle.bmc.database.model.DatabaseSnapshot.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 forDatabaseSnapshot( + 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 + forDatabaseSnapshot( + GetDatabaseSnapshotRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.database.model.DatabaseSnapshot.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 forDatabaseSnapshot( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for DatabaseSnapshot. + private com.oracle.bmc.waiter.Waiter + forDatabaseSnapshot( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetDatabaseSnapshotRequest request, + final com.oracle.bmc.database.model.DatabaseSnapshot.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< + GetDatabaseSnapshotRequest, GetDatabaseSnapshotResponse>() { + @Override + public GetDatabaseSnapshotResponse apply( + GetDatabaseSnapshotRequest request) { + return client.getDatabaseSnapshot(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetDatabaseSnapshotResponse response) { + return targetStatesSet.contains( + response.getDatabaseSnapshot().getLifecycleState()); + } + }, + targetStatesSet.contains( + com.oracle.bmc.database.model.DatabaseSnapshot.LifecycleState + .Terminated)), + request); + } + /** * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. * diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/CloneDatabaseDetails.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/CloneDatabaseDetails.java new file mode 100644 index 00000000000..06b6ed0dfbe --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/CloneDatabaseDetails.java @@ -0,0 +1,1079 @@ +/** + * 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.database.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 = CloneDatabaseDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CloneDatabaseDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + public CloneDatabaseDetails( + String sourceDatabaseId, + Boolean isThinClone, + String sourceTdePassword, + String sourceAdminPassword, + EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails, + String tdeWalletPassword, + DbBackupConfig dbBackupConfig, + String adminPassword, + String dbUniqueName, + String dbName, + String characterSet, + String ncharacterSet, + String sidPrefix, + String keyStoreId, + EncryptionKeyLocationDetails encryptionKeyLocationDetails, + DatabaseStorageSizeDetails storageSizeDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + DataSafeRegistrationRequestDetails dataSafeRegistrationDetails) { + super(); + this.sourceDatabaseId = sourceDatabaseId; + this.isThinClone = isThinClone; + this.sourceTdePassword = sourceTdePassword != null ? sourceTdePassword.toCharArray() : null; + this.sourceAdminPassword = + sourceAdminPassword != null ? sourceAdminPassword.toCharArray() : null; + this.sourceEncryptionKeyLocationDetails = sourceEncryptionKeyLocationDetails; + this.tdeWalletPassword = tdeWalletPassword != null ? tdeWalletPassword.toCharArray() : null; + this.dbBackupConfig = dbBackupConfig; + this.adminPassword = adminPassword != null ? adminPassword.toCharArray() : null; + this.dbUniqueName = dbUniqueName; + this.dbName = dbName; + this.characterSet = characterSet; + this.ncharacterSet = ncharacterSet; + this.sidPrefix = sidPrefix; + this.keyStoreId = keyStoreId; + this.encryptionKeyLocationDetails = encryptionKeyLocationDetails; + this.storageSizeDetails = storageSizeDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.dataSafeRegistrationDetails = dataSafeRegistrationDetails; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + @java.beans.ConstructorProperties({ + "sourceDatabaseId", + "isThinClone", + "sourceTdePassword", + "sourceAdminPassword", + "sourceEncryptionKeyLocationDetails", + "tdeWalletPassword", + "dbBackupConfig", + "adminPassword", + "dbUniqueName", + "dbName", + "characterSet", + "ncharacterSet", + "sidPrefix", + "keyStoreId", + "encryptionKeyLocationDetails", + "storageSizeDetails", + "freeformTags", + "definedTags", + "dataSafeRegistrationDetails" + }) + public CloneDatabaseDetails( + String sourceDatabaseId, + Boolean isThinClone, + char[] sourceTdePassword, + char[] sourceAdminPassword, + EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails, + char[] tdeWalletPassword, + DbBackupConfig dbBackupConfig, + char[] adminPassword, + String dbUniqueName, + String dbName, + String characterSet, + String ncharacterSet, + String sidPrefix, + String keyStoreId, + EncryptionKeyLocationDetails encryptionKeyLocationDetails, + DatabaseStorageSizeDetails storageSizeDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + DataSafeRegistrationRequestDetails dataSafeRegistrationDetails) { + super(); + this.sourceDatabaseId = sourceDatabaseId; + this.isThinClone = isThinClone; + this.sourceTdePassword = sourceTdePassword; + this.sourceAdminPassword = sourceAdminPassword; + this.sourceEncryptionKeyLocationDetails = sourceEncryptionKeyLocationDetails; + this.tdeWalletPassword = tdeWalletPassword; + this.dbBackupConfig = dbBackupConfig; + this.adminPassword = adminPassword; + this.dbUniqueName = dbUniqueName; + this.dbName = dbName; + this.characterSet = characterSet; + this.ncharacterSet = ncharacterSet; + this.sidPrefix = sidPrefix; + this.keyStoreId = keyStoreId; + this.encryptionKeyLocationDetails = encryptionKeyLocationDetails; + this.storageSizeDetails = storageSizeDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.dataSafeRegistrationDetails = dataSafeRegistrationDetails; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The source database + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceDatabaseId") + private String sourceDatabaseId; + + /** + * The source database + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @param sourceDatabaseId the value to set + * @return this builder + */ + public Builder sourceDatabaseId(String sourceDatabaseId) { + this.sourceDatabaseId = sourceDatabaseId; + this.__explicitlySet__.add("sourceDatabaseId"); + return this; + } + /** Specifies whether thick or thin database cloning is to be performed. */ + @com.fasterxml.jackson.annotation.JsonProperty("isThinClone") + private Boolean isThinClone; + + /** + * Specifies whether thick or thin database cloning is to be performed. + * + * @param isThinClone the value to set + * @return this builder + */ + public Builder isThinClone(Boolean isThinClone) { + this.isThinClone = isThinClone; + this.__explicitlySet__.add("isThinClone"); + return this; + } + /** The password to open the TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceTdePassword") + private char[] sourceTdePassword; + + /** + * The password to open the TDE wallet. + * + * @param sourceTdePassword the value to set + * @return this builder + */ + public Builder sourceTdePassword(char[] sourceTdePassword) { + this.sourceTdePassword = sourceTdePassword; + this.__explicitlySet__.add("sourceTdePassword"); + return this; + } + + public Builder sourceTdePassword(String sourceTdePassword) { + this.sourceTdePassword = + sourceTdePassword != null ? sourceTdePassword.toCharArray() : null; + this.__explicitlySet__.add("sourceTdePassword"); + return this; + } + /** The source database's password for SYS, SYSTEM. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceAdminPassword") + private char[] sourceAdminPassword; + + /** + * The source database's password for SYS, SYSTEM. + * + * @param sourceAdminPassword the value to set + * @return this builder + */ + public Builder sourceAdminPassword(char[] sourceAdminPassword) { + this.sourceAdminPassword = sourceAdminPassword; + this.__explicitlySet__.add("sourceAdminPassword"); + return this; + } + + public Builder sourceAdminPassword(String sourceAdminPassword) { + this.sourceAdminPassword = + sourceAdminPassword != null ? sourceAdminPassword.toCharArray() : null; + this.__explicitlySet__.add("sourceAdminPassword"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("sourceEncryptionKeyLocationDetails") + private EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails; + + public Builder sourceEncryptionKeyLocationDetails( + EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails) { + this.sourceEncryptionKeyLocationDetails = sourceEncryptionKeyLocationDetails; + this.__explicitlySet__.add("sourceEncryptionKeyLocationDetails"); + return this; + } + /** The password for the target Database TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("tdeWalletPassword") + private char[] tdeWalletPassword; + + /** + * The password for the target Database TDE wallet. + * + * @param tdeWalletPassword the value to set + * @return this builder + */ + public Builder tdeWalletPassword(char[] tdeWalletPassword) { + this.tdeWalletPassword = tdeWalletPassword; + this.__explicitlySet__.add("tdeWalletPassword"); + return this; + } + + public Builder tdeWalletPassword(String tdeWalletPassword) { + this.tdeWalletPassword = + tdeWalletPassword != null ? tdeWalletPassword.toCharArray() : null; + this.__explicitlySet__.add("tdeWalletPassword"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dbBackupConfig") + private DbBackupConfig dbBackupConfig; + + public Builder dbBackupConfig(DbBackupConfig dbBackupConfig) { + this.dbBackupConfig = dbBackupConfig; + this.__explicitlySet__.add("dbBackupConfig"); + return this; + } + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at + * least nine characters and contain at least two uppercase, two lowercase, two numbers, and + * two special characters. The special characters must be _, \\#, or -. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminPassword") + private char[] adminPassword; + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at + * least nine characters and contain at least two uppercase, two lowercase, two numbers, and + * two special characters. The special characters must be _, \\#, or -. + * + * @param adminPassword the value to set + * @return this builder + */ + public Builder adminPassword(char[] adminPassword) { + this.adminPassword = adminPassword; + this.__explicitlySet__.add("adminPassword"); + return this; + } + + public Builder adminPassword(String adminPassword) { + this.adminPassword = adminPassword != null ? adminPassword.toCharArray() : null; + this.__explicitlySet__.add("adminPassword"); + return this; + } + /** The {@code DB_UNIQUE_NAME} for the new Oracle Database. */ + @com.fasterxml.jackson.annotation.JsonProperty("dbUniqueName") + private String dbUniqueName; + + /** + * The {@code DB_UNIQUE_NAME} for the new Oracle Database. + * + * @param dbUniqueName the value to set + * @return this builder + */ + public Builder dbUniqueName(String dbUniqueName) { + this.dbUniqueName = dbUniqueName; + this.__explicitlySet__.add("dbUniqueName"); + return this; + } + /** + * The display name of the database to be created from the snapshot/database. It must begin + * with an alphabetic character and can contain a maximum of eight alphanumeric characters. + * Special characters are not permitted. + */ + @com.fasterxml.jackson.annotation.JsonProperty("dbName") + private String dbName; + + /** + * The display name of the database to be created from the snapshot/database. It must begin + * with an alphabetic character and can contain a maximum of eight alphanumeric characters. + * Special characters are not permitted. + * + * @param dbName the value to set + * @return this builder + */ + public Builder dbName(String dbName) { + this.dbName = dbName; + this.__explicitlySet__.add("dbName"); + return this; + } + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: + * AL32UTF8, AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, + * AR8MSWIN1256, AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, + * AZ8ISO8859P9E, BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, + * BN8BSCII, CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, + * CL8MACCYRILLICS, CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, + * EE8PC852, EL8DEC, EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, + * EL8PC869, ET8MSWIN923, HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, + * IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, + * JA16VMS, KO16KSC5601, KO16KSCCS, KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, + * LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, LV8RST104090, N8PC865, NE8ISO8859P10, + * NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, + * TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, US7ASCII, US8PC437, UTF8, VN8MSWIN1258, + * VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, WE8ISO8859P9, WE8MACROMAN8S, + * WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, WE8PC860, WE8ROMAN8, + * ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, ZHT16MSWIN950, + * ZHT32EUC, ZHT32SOPS, ZHT32TRIS + */ + @com.fasterxml.jackson.annotation.JsonProperty("characterSet") + private String characterSet; + + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: + * AL32UTF8, AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, + * AR8MSWIN1256, AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, + * AZ8ISO8859P9E, BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, + * BN8BSCII, CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, + * CL8MACCYRILLICS, CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, + * EE8PC852, EL8DEC, EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, + * EL8PC869, ET8MSWIN923, HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, + * IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, + * JA16VMS, KO16KSC5601, KO16KSCCS, KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, + * LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, LV8RST104090, N8PC865, NE8ISO8859P10, + * NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, + * TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, US7ASCII, US8PC437, UTF8, VN8MSWIN1258, + * VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, WE8ISO8859P9, WE8MACROMAN8S, + * WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, WE8PC860, WE8ROMAN8, + * ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, ZHT16MSWIN950, + * ZHT32EUC, ZHT32SOPS, ZHT32TRIS + * + * @param characterSet the value to set + * @return this builder + */ + public Builder characterSet(String characterSet) { + this.characterSet = characterSet; + this.__explicitlySet__.add("characterSet"); + return this; + } + /** + * The national character set for the database. The default is AL16UTF16. Allowed values + * are: AL16UTF16 or UTF8. + */ + @com.fasterxml.jackson.annotation.JsonProperty("ncharacterSet") + private String ncharacterSet; + + /** + * The national character set for the database. The default is AL16UTF16. Allowed values + * are: AL16UTF16 or UTF8. + * + * @param ncharacterSet the value to set + * @return this builder + */ + public Builder ncharacterSet(String ncharacterSet) { + this.ncharacterSet = ncharacterSet; + this.__explicitlySet__.add("ncharacterSet"); + return this; + } + /** Specifies a prefix for the {@code Oracle SID} of the database to be created. */ + @com.fasterxml.jackson.annotation.JsonProperty("sidPrefix") + private String sidPrefix; + + /** + * Specifies a prefix for the {@code Oracle SID} of the database to be created. + * + * @param sidPrefix the value to set + * @return this builder + */ + public Builder sidPrefix(String sidPrefix) { + this.sidPrefix = sidPrefix; + this.__explicitlySet__.add("sidPrefix"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * key store of Oracle Vault. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreId") + private String keyStoreId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * key store of Oracle Vault. + * + * @param keyStoreId the value to set + * @return this builder + */ + public Builder keyStoreId(String keyStoreId) { + this.keyStoreId = keyStoreId; + this.__explicitlySet__.add("keyStoreId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("encryptionKeyLocationDetails") + private EncryptionKeyLocationDetails encryptionKeyLocationDetails; + + public Builder encryptionKeyLocationDetails( + EncryptionKeyLocationDetails encryptionKeyLocationDetails) { + this.encryptionKeyLocationDetails = encryptionKeyLocationDetails; + this.__explicitlySet__.add("encryptionKeyLocationDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("storageSizeDetails") + private DatabaseStorageSizeDetails storageSizeDetails; + + public Builder storageSizeDetails(DatabaseStorageSizeDetails storageSizeDetails) { + this.storageSizeDetails = storageSizeDetails; + this.__explicitlySet__.add("storageSizeDetails"); + 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). + */ + @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). + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dataSafeRegistrationDetails") + private DataSafeRegistrationRequestDetails dataSafeRegistrationDetails; + + public Builder dataSafeRegistrationDetails( + DataSafeRegistrationRequestDetails dataSafeRegistrationDetails) { + this.dataSafeRegistrationDetails = dataSafeRegistrationDetails; + this.__explicitlySet__.add("dataSafeRegistrationDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CloneDatabaseDetails build() { + CloneDatabaseDetails model = + new CloneDatabaseDetails( + this.sourceDatabaseId, + this.isThinClone, + this.sourceTdePassword, + this.sourceAdminPassword, + this.sourceEncryptionKeyLocationDetails, + this.tdeWalletPassword, + this.dbBackupConfig, + this.adminPassword, + this.dbUniqueName, + this.dbName, + this.characterSet, + this.ncharacterSet, + this.sidPrefix, + this.keyStoreId, + this.encryptionKeyLocationDetails, + this.storageSizeDetails, + this.freeformTags, + this.definedTags, + this.dataSafeRegistrationDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CloneDatabaseDetails model) { + if (model.wasPropertyExplicitlySet("sourceDatabaseId")) { + this.sourceDatabaseId(model.getSourceDatabaseId()); + } + if (model.wasPropertyExplicitlySet("isThinClone")) { + this.isThinClone(model.getIsThinClone()); + } + if (model.wasPropertyExplicitlySet("sourceTdePassword")) { + this.sourceTdePassword(model.getSourceTdePassword()); + } + if (model.wasPropertyExplicitlySet("sourceAdminPassword")) { + this.sourceAdminPassword(model.getSourceAdminPassword()); + } + if (model.wasPropertyExplicitlySet("sourceEncryptionKeyLocationDetails")) { + this.sourceEncryptionKeyLocationDetails( + model.getSourceEncryptionKeyLocationDetails()); + } + if (model.wasPropertyExplicitlySet("tdeWalletPassword")) { + this.tdeWalletPassword(model.getTdeWalletPassword()); + } + if (model.wasPropertyExplicitlySet("dbBackupConfig")) { + this.dbBackupConfig(model.getDbBackupConfig()); + } + if (model.wasPropertyExplicitlySet("adminPassword")) { + this.adminPassword(model.getAdminPassword()); + } + if (model.wasPropertyExplicitlySet("dbUniqueName")) { + this.dbUniqueName(model.getDbUniqueName()); + } + if (model.wasPropertyExplicitlySet("dbName")) { + this.dbName(model.getDbName()); + } + if (model.wasPropertyExplicitlySet("characterSet")) { + this.characterSet(model.getCharacterSet()); + } + if (model.wasPropertyExplicitlySet("ncharacterSet")) { + this.ncharacterSet(model.getNcharacterSet()); + } + if (model.wasPropertyExplicitlySet("sidPrefix")) { + this.sidPrefix(model.getSidPrefix()); + } + if (model.wasPropertyExplicitlySet("keyStoreId")) { + this.keyStoreId(model.getKeyStoreId()); + } + if (model.wasPropertyExplicitlySet("encryptionKeyLocationDetails")) { + this.encryptionKeyLocationDetails(model.getEncryptionKeyLocationDetails()); + } + if (model.wasPropertyExplicitlySet("storageSizeDetails")) { + this.storageSizeDetails(model.getStorageSizeDetails()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("dataSafeRegistrationDetails")) { + this.dataSafeRegistrationDetails(model.getDataSafeRegistrationDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The source database + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceDatabaseId") + private final String sourceDatabaseId; + + /** + * The source database + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return the value + */ + public String getSourceDatabaseId() { + return sourceDatabaseId; + } + + /** Specifies whether thick or thin database cloning is to be performed. */ + @com.fasterxml.jackson.annotation.JsonProperty("isThinClone") + private final Boolean isThinClone; + + /** + * Specifies whether thick or thin database cloning is to be performed. + * + * @return the value + */ + public Boolean getIsThinClone() { + return isThinClone; + } + + /** The password to open the TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceTdePassword") + private final char[] sourceTdePassword; + + /** + * The password to open the TDE wallet. + * + * @return the value + * @deprecated Use getSourceTdePassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSourceTdePassword() { + return sourceTdePassword != null ? new String(sourceTdePassword) : null; + } + + /** + * The password to open the TDE wallet. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceTdePassword") + public char[] getSourceTdePassword__AsCharArray() { + return sourceTdePassword; + } + + /** The source database's password for SYS, SYSTEM. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceAdminPassword") + private final char[] sourceAdminPassword; + + /** + * The source database's password for SYS, SYSTEM. + * + * @return the value + * @deprecated Use getSourceAdminPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSourceAdminPassword() { + return sourceAdminPassword != null ? new String(sourceAdminPassword) : null; + } + + /** + * The source database's password for SYS, SYSTEM. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceAdminPassword") + public char[] getSourceAdminPassword__AsCharArray() { + return sourceAdminPassword; + } + + @com.fasterxml.jackson.annotation.JsonProperty("sourceEncryptionKeyLocationDetails") + private final EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails; + + public EncryptionKeyLocationDetails getSourceEncryptionKeyLocationDetails() { + return sourceEncryptionKeyLocationDetails; + } + + /** The password for the target Database TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("tdeWalletPassword") + private final char[] tdeWalletPassword; + + /** + * The password for the target Database TDE wallet. + * + * @return the value + * @deprecated Use getTdeWalletPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getTdeWalletPassword() { + return tdeWalletPassword != null ? new String(tdeWalletPassword) : null; + } + + /** + * The password for the target Database TDE wallet. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("tdeWalletPassword") + public char[] getTdeWalletPassword__AsCharArray() { + return tdeWalletPassword; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dbBackupConfig") + private final DbBackupConfig dbBackupConfig; + + public DbBackupConfig getDbBackupConfig() { + return dbBackupConfig; + } + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at least + * nine characters and contain at least two uppercase, two lowercase, two numbers, and two + * special characters. The special characters must be _, \\#, or -. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminPassword") + private final char[] adminPassword; + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at least + * nine characters and contain at least two uppercase, two lowercase, two numbers, and two + * special characters. The special characters must be _, \\#, or -. + * + * @return the value + * @deprecated Use getAdminPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAdminPassword() { + return adminPassword != null ? new String(adminPassword) : null; + } + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at least + * nine characters and contain at least two uppercase, two lowercase, two numbers, and two + * special characters. The special characters must be _, \\#, or -. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminPassword") + public char[] getAdminPassword__AsCharArray() { + return adminPassword; + } + + /** The {@code DB_UNIQUE_NAME} for the new Oracle Database. */ + @com.fasterxml.jackson.annotation.JsonProperty("dbUniqueName") + private final String dbUniqueName; + + /** + * The {@code DB_UNIQUE_NAME} for the new Oracle Database. + * + * @return the value + */ + public String getDbUniqueName() { + return dbUniqueName; + } + + /** + * The display name of the database to be created from the snapshot/database. It must begin with + * an alphabetic character and can contain a maximum of eight alphanumeric characters. Special + * characters are not permitted. + */ + @com.fasterxml.jackson.annotation.JsonProperty("dbName") + private final String dbName; + + /** + * The display name of the database to be created from the snapshot/database. It must begin with + * an alphabetic character and can contain a maximum of eight alphanumeric characters. Special + * characters are not permitted. + * + * @return the value + */ + public String getDbName() { + return dbName; + } + + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: AL32UTF8, + * AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, AR8MSWIN1256, + * AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, AZ8ISO8859P9E, + * BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, BN8BSCII, + * CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, CL8MACCYRILLICS, + * CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, EE8PC852, EL8DEC, + * EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, EL8PC869, ET8MSWIN923, + * HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, + * JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, JA16VMS, KO16KSC5601, KO16KSCCS, + * KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, + * LV8RST104090, N8PC865, NE8ISO8859P10, NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, + * SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, + * US7ASCII, US8PC437, UTF8, VN8MSWIN1258, VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, + * WE8ISO8859P9, WE8MACROMAN8S, WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, + * WE8PC860, WE8ROMAN8, ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, + * ZHT16MSWIN950, ZHT32EUC, ZHT32SOPS, ZHT32TRIS + */ + @com.fasterxml.jackson.annotation.JsonProperty("characterSet") + private final String characterSet; + + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: AL32UTF8, + * AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, AR8MSWIN1256, + * AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, AZ8ISO8859P9E, + * BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, BN8BSCII, + * CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, CL8MACCYRILLICS, + * CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, EE8PC852, EL8DEC, + * EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, EL8PC869, ET8MSWIN923, + * HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, + * JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, JA16VMS, KO16KSC5601, KO16KSCCS, + * KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, + * LV8RST104090, N8PC865, NE8ISO8859P10, NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, + * SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, + * US7ASCII, US8PC437, UTF8, VN8MSWIN1258, VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, + * WE8ISO8859P9, WE8MACROMAN8S, WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, + * WE8PC860, WE8ROMAN8, ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, + * ZHT16MSWIN950, ZHT32EUC, ZHT32SOPS, ZHT32TRIS + * + * @return the value + */ + public String getCharacterSet() { + return characterSet; + } + + /** + * The national character set for the database. The default is AL16UTF16. Allowed values are: + * AL16UTF16 or UTF8. + */ + @com.fasterxml.jackson.annotation.JsonProperty("ncharacterSet") + private final String ncharacterSet; + + /** + * The national character set for the database. The default is AL16UTF16. Allowed values are: + * AL16UTF16 or UTF8. + * + * @return the value + */ + public String getNcharacterSet() { + return ncharacterSet; + } + + /** Specifies a prefix for the {@code Oracle SID} of the database to be created. */ + @com.fasterxml.jackson.annotation.JsonProperty("sidPrefix") + private final String sidPrefix; + + /** + * Specifies a prefix for the {@code Oracle SID} of the database to be created. + * + * @return the value + */ + public String getSidPrefix() { + return sidPrefix; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the key + * store of Oracle Vault. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreId") + private final String keyStoreId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the key + * store of Oracle Vault. + * + * @return the value + */ + public String getKeyStoreId() { + return keyStoreId; + } + + @com.fasterxml.jackson.annotation.JsonProperty("encryptionKeyLocationDetails") + private final EncryptionKeyLocationDetails encryptionKeyLocationDetails; + + public EncryptionKeyLocationDetails getEncryptionKeyLocationDetails() { + return encryptionKeyLocationDetails; + } + + @com.fasterxml.jackson.annotation.JsonProperty("storageSizeDetails") + private final DatabaseStorageSizeDetails storageSizeDetails; + + public DatabaseStorageSizeDetails getStorageSizeDetails() { + return storageSizeDetails; + } + + /** + * 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). + */ + @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). + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dataSafeRegistrationDetails") + private final DataSafeRegistrationRequestDetails dataSafeRegistrationDetails; + + public DataSafeRegistrationRequestDetails getDataSafeRegistrationDetails() { + return dataSafeRegistrationDetails; + } + + @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("CloneDatabaseDetails("); + sb.append("super=").append(super.toString()); + sb.append("sourceDatabaseId=").append(String.valueOf(this.sourceDatabaseId)); + sb.append(", isThinClone=").append(String.valueOf(this.isThinClone)); + sb.append(", sourceTdePassword=").append(""); + sb.append(", sourceAdminPassword=").append(""); + sb.append(", sourceEncryptionKeyLocationDetails=") + .append(String.valueOf(this.sourceEncryptionKeyLocationDetails)); + sb.append(", tdeWalletPassword=").append(""); + sb.append(", dbBackupConfig=").append(String.valueOf(this.dbBackupConfig)); + sb.append(", adminPassword=").append(""); + sb.append(", dbUniqueName=").append(String.valueOf(this.dbUniqueName)); + sb.append(", dbName=").append(String.valueOf(this.dbName)); + sb.append(", characterSet=").append(String.valueOf(this.characterSet)); + sb.append(", ncharacterSet=").append(String.valueOf(this.ncharacterSet)); + sb.append(", sidPrefix=").append(String.valueOf(this.sidPrefix)); + sb.append(", keyStoreId=").append(String.valueOf(this.keyStoreId)); + sb.append(", encryptionKeyLocationDetails=") + .append(String.valueOf(this.encryptionKeyLocationDetails)); + sb.append(", storageSizeDetails=").append(String.valueOf(this.storageSizeDetails)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(", dataSafeRegistrationDetails=") + .append(String.valueOf(this.dataSafeRegistrationDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CloneDatabaseDetails)) { + return false; + } + + CloneDatabaseDetails other = (CloneDatabaseDetails) o; + return java.util.Objects.equals(this.sourceDatabaseId, other.sourceDatabaseId) + && java.util.Objects.equals(this.isThinClone, other.isThinClone) + && java.util.Objects.equals(this.sourceTdePassword, other.sourceTdePassword) + && java.util.Objects.equals(this.sourceAdminPassword, other.sourceAdminPassword) + && java.util.Objects.equals( + this.sourceEncryptionKeyLocationDetails, + other.sourceEncryptionKeyLocationDetails) + && java.util.Objects.equals(this.tdeWalletPassword, other.tdeWalletPassword) + && java.util.Objects.equals(this.dbBackupConfig, other.dbBackupConfig) + && java.util.Objects.equals(this.adminPassword, other.adminPassword) + && java.util.Objects.equals(this.dbUniqueName, other.dbUniqueName) + && java.util.Objects.equals(this.dbName, other.dbName) + && java.util.Objects.equals(this.characterSet, other.characterSet) + && java.util.Objects.equals(this.ncharacterSet, other.ncharacterSet) + && java.util.Objects.equals(this.sidPrefix, other.sidPrefix) + && java.util.Objects.equals(this.keyStoreId, other.keyStoreId) + && java.util.Objects.equals( + this.encryptionKeyLocationDetails, other.encryptionKeyLocationDetails) + && java.util.Objects.equals(this.storageSizeDetails, other.storageSizeDetails) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals( + this.dataSafeRegistrationDetails, other.dataSafeRegistrationDetails) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.sourceDatabaseId == null ? 43 : this.sourceDatabaseId.hashCode()); + result = (result * PRIME) + (this.isThinClone == null ? 43 : this.isThinClone.hashCode()); + result = + (result * PRIME) + + (this.sourceTdePassword == null ? 43 : this.sourceTdePassword.hashCode()); + result = + (result * PRIME) + + (this.sourceAdminPassword == null + ? 43 + : this.sourceAdminPassword.hashCode()); + result = + (result * PRIME) + + (this.sourceEncryptionKeyLocationDetails == null + ? 43 + : this.sourceEncryptionKeyLocationDetails.hashCode()); + result = + (result * PRIME) + + (this.tdeWalletPassword == null ? 43 : this.tdeWalletPassword.hashCode()); + result = + (result * PRIME) + + (this.dbBackupConfig == null ? 43 : this.dbBackupConfig.hashCode()); + result = + (result * PRIME) + + (this.adminPassword == null ? 43 : this.adminPassword.hashCode()); + result = (result * PRIME) + (this.dbUniqueName == null ? 43 : this.dbUniqueName.hashCode()); + result = (result * PRIME) + (this.dbName == null ? 43 : this.dbName.hashCode()); + result = (result * PRIME) + (this.characterSet == null ? 43 : this.characterSet.hashCode()); + result = + (result * PRIME) + + (this.ncharacterSet == null ? 43 : this.ncharacterSet.hashCode()); + result = (result * PRIME) + (this.sidPrefix == null ? 43 : this.sidPrefix.hashCode()); + result = (result * PRIME) + (this.keyStoreId == null ? 43 : this.keyStoreId.hashCode()); + result = + (result * PRIME) + + (this.encryptionKeyLocationDetails == null + ? 43 + : this.encryptionKeyLocationDetails.hashCode()); + result = + (result * PRIME) + + (this.storageSizeDetails == null + ? 43 + : this.storageSizeDetails.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.dataSafeRegistrationDetails == null + ? 43 + : this.dataSafeRegistrationDetails.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateCloneDatabaseFromDatabase.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateCloneDatabaseFromDatabase.java new file mode 100644 index 00000000000..3392fdff115 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateCloneDatabaseFromDatabase.java @@ -0,0 +1,183 @@ +/** + * 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.database.model; + +/** + * Details for creating a database by cloning from another database. + * + *

*Warning:** Oracle recommends that you avoid using any confidential information when you + * supply string values using the 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: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateCloneDatabaseFromDatabase.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "source") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateCloneDatabaseFromDatabase extends CreateDatabaseBase { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("dbHomeId") + private String dbHomeId; + + public Builder dbHomeId(String dbHomeId) { + this.dbHomeId = dbHomeId; + this.__explicitlySet__.add("dbHomeId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dbVersion") + private String dbVersion; + + public Builder dbVersion(String dbVersion) { + this.dbVersion = dbVersion; + this.__explicitlySet__.add("dbVersion"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId") + private String kmsKeyId; + + public Builder kmsKeyId(String kmsKeyId) { + this.kmsKeyId = kmsKeyId; + this.__explicitlySet__.add("kmsKeyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyVersionId") + private String kmsKeyVersionId; + + public Builder kmsKeyVersionId(String kmsKeyVersionId) { + this.kmsKeyVersionId = kmsKeyVersionId; + this.__explicitlySet__.add("kmsKeyVersionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("database") + private CloneDatabaseDetails database; + + public Builder database(CloneDatabaseDetails database) { + this.database = database; + this.__explicitlySet__.add("database"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateCloneDatabaseFromDatabase build() { + CreateCloneDatabaseFromDatabase model = + new CreateCloneDatabaseFromDatabase( + this.dbHomeId, + this.dbVersion, + this.kmsKeyId, + this.kmsKeyVersionId, + this.database); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateCloneDatabaseFromDatabase model) { + if (model.wasPropertyExplicitlySet("dbHomeId")) { + this.dbHomeId(model.getDbHomeId()); + } + if (model.wasPropertyExplicitlySet("dbVersion")) { + this.dbVersion(model.getDbVersion()); + } + if (model.wasPropertyExplicitlySet("kmsKeyId")) { + this.kmsKeyId(model.getKmsKeyId()); + } + if (model.wasPropertyExplicitlySet("kmsKeyVersionId")) { + this.kmsKeyVersionId(model.getKmsKeyVersionId()); + } + if (model.wasPropertyExplicitlySet("database")) { + this.database(model.getDatabase()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateCloneDatabaseFromDatabase( + String dbHomeId, + String dbVersion, + String kmsKeyId, + String kmsKeyVersionId, + CloneDatabaseDetails database) { + super(dbHomeId, dbVersion, kmsKeyId, kmsKeyVersionId); + this.database = database; + } + + @com.fasterxml.jackson.annotation.JsonProperty("database") + private final CloneDatabaseDetails database; + + public CloneDatabaseDetails getDatabase() { + return database; + } + + @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("CreateCloneDatabaseFromDatabase("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", database=").append(String.valueOf(this.database)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateCloneDatabaseFromDatabase)) { + return false; + } + + CreateCloneDatabaseFromDatabase other = (CreateCloneDatabaseFromDatabase) o; + return java.util.Objects.equals(this.database, other.database) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.database == null ? 43 : this.database.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseBase.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseBase.java index 7567f9f1bc4..c773ad3c48e 100644 --- a/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseBase.java +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseBase.java @@ -31,9 +31,15 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateStandByDatabaseDetails.class, name = "DATAGUARD"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateCloneDatabaseFromDatabase.class, + name = "DB_CLONE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateDatabaseFromDatabase.class, name = "DATABASE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDatabaseFromSnapshot.class, + name = "DB_SNAPSHOT"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateDatabaseFromBackup.class, name = "DB_BACKUP") @@ -195,13 +201,17 @@ public int hashCode() { /** * The source of the database: Use {@code NONE} for creating a new database. Use {@code * DB_BACKUP} for creating a new database by restoring from a backup. Use {@code DATAGUARD} for - * creating a new STANDBY database for a Data Guard setup.. The default is {@code NONE}. + * creating a new STANDBY database for a Data Guard setup.. Use {@code DB_SNAPSHOT} for creating + * a new database by cloning from snapshot. Use {@code DB_CLONE} for creating a new database by + * cloning from another database. The default is {@code NONE}. */ public enum Source implements com.oracle.bmc.http.internal.BmcEnum { None("NONE"), DbBackup("DB_BACKUP"), Database("DATABASE"), Dataguard("DATAGUARD"), + DbSnapshot("DB_SNAPSHOT"), + DbClone("DB_CLONE"), ; private final String value; diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseFromSnapshot.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseFromSnapshot.java new file mode 100644 index 00000000000..672a332b2bb --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseFromSnapshot.java @@ -0,0 +1,182 @@ +/** + * 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.database.model; + +/** + * Details for creating a database by cloning from a database snapshot. **Warning:** Oracle + * recommends that you avoid using any confidential information when you supply string values using + * the 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: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDatabaseFromSnapshot.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "source") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabaseFromSnapshot extends CreateDatabaseBase { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("dbHomeId") + private String dbHomeId; + + public Builder dbHomeId(String dbHomeId) { + this.dbHomeId = dbHomeId; + this.__explicitlySet__.add("dbHomeId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dbVersion") + private String dbVersion; + + public Builder dbVersion(String dbVersion) { + this.dbVersion = dbVersion; + this.__explicitlySet__.add("dbVersion"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId") + private String kmsKeyId; + + public Builder kmsKeyId(String kmsKeyId) { + this.kmsKeyId = kmsKeyId; + this.__explicitlySet__.add("kmsKeyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyVersionId") + private String kmsKeyVersionId; + + public Builder kmsKeyVersionId(String kmsKeyVersionId) { + this.kmsKeyVersionId = kmsKeyVersionId; + this.__explicitlySet__.add("kmsKeyVersionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("database") + private CreateDatabaseFromSnapshotDetails database; + + public Builder database(CreateDatabaseFromSnapshotDetails database) { + this.database = database; + this.__explicitlySet__.add("database"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabaseFromSnapshot build() { + CreateDatabaseFromSnapshot model = + new CreateDatabaseFromSnapshot( + this.dbHomeId, + this.dbVersion, + this.kmsKeyId, + this.kmsKeyVersionId, + this.database); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDatabaseFromSnapshot model) { + if (model.wasPropertyExplicitlySet("dbHomeId")) { + this.dbHomeId(model.getDbHomeId()); + } + if (model.wasPropertyExplicitlySet("dbVersion")) { + this.dbVersion(model.getDbVersion()); + } + if (model.wasPropertyExplicitlySet("kmsKeyId")) { + this.kmsKeyId(model.getKmsKeyId()); + } + if (model.wasPropertyExplicitlySet("kmsKeyVersionId")) { + this.kmsKeyVersionId(model.getKmsKeyVersionId()); + } + if (model.wasPropertyExplicitlySet("database")) { + this.database(model.getDatabase()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDatabaseFromSnapshot( + String dbHomeId, + String dbVersion, + String kmsKeyId, + String kmsKeyVersionId, + CreateDatabaseFromSnapshotDetails database) { + super(dbHomeId, dbVersion, kmsKeyId, kmsKeyVersionId); + this.database = database; + } + + @com.fasterxml.jackson.annotation.JsonProperty("database") + private final CreateDatabaseFromSnapshotDetails database; + + public CreateDatabaseFromSnapshotDetails getDatabase() { + return database; + } + + @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("CreateDatabaseFromSnapshot("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", database=").append(String.valueOf(this.database)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabaseFromSnapshot)) { + return false; + } + + CreateDatabaseFromSnapshot other = (CreateDatabaseFromSnapshot) o; + return java.util.Objects.equals(this.database, other.database) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.database == null ? 43 : this.database.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseFromSnapshotDetails.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseFromSnapshotDetails.java new file mode 100644 index 00000000000..d7cd8a5b8ca --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseFromSnapshotDetails.java @@ -0,0 +1,1077 @@ +/** + * 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.database.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 = CreateDatabaseFromSnapshotDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabaseFromSnapshotDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + public CreateDatabaseFromSnapshotDetails( + String sourceSnapshotId, + Boolean isThinClone, + String sourceTdePassword, + String sourceAdminPassword, + EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails, + String tdeWalletPassword, + DbBackupConfig dbBackupConfig, + String adminPassword, + String dbUniqueName, + String dbName, + String characterSet, + String ncharacterSet, + String sidPrefix, + String keyStoreId, + EncryptionKeyLocationDetails encryptionKeyLocationDetails, + DatabaseStorageSizeDetails storageSizeDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + DataSafeRegistrationRequestDetails dataSafeRegistrationDetails) { + super(); + this.sourceSnapshotId = sourceSnapshotId; + this.isThinClone = isThinClone; + this.sourceTdePassword = sourceTdePassword != null ? sourceTdePassword.toCharArray() : null; + this.sourceAdminPassword = + sourceAdminPassword != null ? sourceAdminPassword.toCharArray() : null; + this.sourceEncryptionKeyLocationDetails = sourceEncryptionKeyLocationDetails; + this.tdeWalletPassword = tdeWalletPassword != null ? tdeWalletPassword.toCharArray() : null; + this.dbBackupConfig = dbBackupConfig; + this.adminPassword = adminPassword != null ? adminPassword.toCharArray() : null; + this.dbUniqueName = dbUniqueName; + this.dbName = dbName; + this.characterSet = characterSet; + this.ncharacterSet = ncharacterSet; + this.sidPrefix = sidPrefix; + this.keyStoreId = keyStoreId; + this.encryptionKeyLocationDetails = encryptionKeyLocationDetails; + this.storageSizeDetails = storageSizeDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.dataSafeRegistrationDetails = dataSafeRegistrationDetails; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + @java.beans.ConstructorProperties({ + "sourceSnapshotId", + "isThinClone", + "sourceTdePassword", + "sourceAdminPassword", + "sourceEncryptionKeyLocationDetails", + "tdeWalletPassword", + "dbBackupConfig", + "adminPassword", + "dbUniqueName", + "dbName", + "characterSet", + "ncharacterSet", + "sidPrefix", + "keyStoreId", + "encryptionKeyLocationDetails", + "storageSizeDetails", + "freeformTags", + "definedTags", + "dataSafeRegistrationDetails" + }) + public CreateDatabaseFromSnapshotDetails( + String sourceSnapshotId, + Boolean isThinClone, + char[] sourceTdePassword, + char[] sourceAdminPassword, + EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails, + char[] tdeWalletPassword, + DbBackupConfig dbBackupConfig, + char[] adminPassword, + String dbUniqueName, + String dbName, + String characterSet, + String ncharacterSet, + String sidPrefix, + String keyStoreId, + EncryptionKeyLocationDetails encryptionKeyLocationDetails, + DatabaseStorageSizeDetails storageSizeDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + DataSafeRegistrationRequestDetails dataSafeRegistrationDetails) { + super(); + this.sourceSnapshotId = sourceSnapshotId; + this.isThinClone = isThinClone; + this.sourceTdePassword = sourceTdePassword; + this.sourceAdminPassword = sourceAdminPassword; + this.sourceEncryptionKeyLocationDetails = sourceEncryptionKeyLocationDetails; + this.tdeWalletPassword = tdeWalletPassword; + this.dbBackupConfig = dbBackupConfig; + this.adminPassword = adminPassword; + this.dbUniqueName = dbUniqueName; + this.dbName = dbName; + this.characterSet = characterSet; + this.ncharacterSet = ncharacterSet; + this.sidPrefix = sidPrefix; + this.keyStoreId = keyStoreId; + this.encryptionKeyLocationDetails = encryptionKeyLocationDetails; + this.storageSizeDetails = storageSizeDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.dataSafeRegistrationDetails = dataSafeRegistrationDetails; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceSnapshotId") + private String sourceSnapshotId; + + /** + * The snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @param sourceSnapshotId the value to set + * @return this builder + */ + public Builder sourceSnapshotId(String sourceSnapshotId) { + this.sourceSnapshotId = sourceSnapshotId; + this.__explicitlySet__.add("sourceSnapshotId"); + return this; + } + /** Specifies whether thick or thin database cloning is to be performed. */ + @com.fasterxml.jackson.annotation.JsonProperty("isThinClone") + private Boolean isThinClone; + + /** + * Specifies whether thick or thin database cloning is to be performed. + * + * @param isThinClone the value to set + * @return this builder + */ + public Builder isThinClone(Boolean isThinClone) { + this.isThinClone = isThinClone; + this.__explicitlySet__.add("isThinClone"); + return this; + } + /** The password to open the TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceTdePassword") + private char[] sourceTdePassword; + + /** + * The password to open the TDE wallet. + * + * @param sourceTdePassword the value to set + * @return this builder + */ + public Builder sourceTdePassword(char[] sourceTdePassword) { + this.sourceTdePassword = sourceTdePassword; + this.__explicitlySet__.add("sourceTdePassword"); + return this; + } + + public Builder sourceTdePassword(String sourceTdePassword) { + this.sourceTdePassword = + sourceTdePassword != null ? sourceTdePassword.toCharArray() : null; + this.__explicitlySet__.add("sourceTdePassword"); + return this; + } + /** The source database's password for SYS, SYSTEM. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceAdminPassword") + private char[] sourceAdminPassword; + + /** + * The source database's password for SYS, SYSTEM. + * + * @param sourceAdminPassword the value to set + * @return this builder + */ + public Builder sourceAdminPassword(char[] sourceAdminPassword) { + this.sourceAdminPassword = sourceAdminPassword; + this.__explicitlySet__.add("sourceAdminPassword"); + return this; + } + + public Builder sourceAdminPassword(String sourceAdminPassword) { + this.sourceAdminPassword = + sourceAdminPassword != null ? sourceAdminPassword.toCharArray() : null; + this.__explicitlySet__.add("sourceAdminPassword"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("sourceEncryptionKeyLocationDetails") + private EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails; + + public Builder sourceEncryptionKeyLocationDetails( + EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails) { + this.sourceEncryptionKeyLocationDetails = sourceEncryptionKeyLocationDetails; + this.__explicitlySet__.add("sourceEncryptionKeyLocationDetails"); + return this; + } + /** The password for the target Database TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("tdeWalletPassword") + private char[] tdeWalletPassword; + + /** + * The password for the target Database TDE wallet. + * + * @param tdeWalletPassword the value to set + * @return this builder + */ + public Builder tdeWalletPassword(char[] tdeWalletPassword) { + this.tdeWalletPassword = tdeWalletPassword; + this.__explicitlySet__.add("tdeWalletPassword"); + return this; + } + + public Builder tdeWalletPassword(String tdeWalletPassword) { + this.tdeWalletPassword = + tdeWalletPassword != null ? tdeWalletPassword.toCharArray() : null; + this.__explicitlySet__.add("tdeWalletPassword"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dbBackupConfig") + private DbBackupConfig dbBackupConfig; + + public Builder dbBackupConfig(DbBackupConfig dbBackupConfig) { + this.dbBackupConfig = dbBackupConfig; + this.__explicitlySet__.add("dbBackupConfig"); + return this; + } + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at + * least nine characters and contain at least two uppercase, two lowercase, two numbers, and + * two special characters. The special characters must be _, \\#, or -. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminPassword") + private char[] adminPassword; + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at + * least nine characters and contain at least two uppercase, two lowercase, two numbers, and + * two special characters. The special characters must be _, \\#, or -. + * + * @param adminPassword the value to set + * @return this builder + */ + public Builder adminPassword(char[] adminPassword) { + this.adminPassword = adminPassword; + this.__explicitlySet__.add("adminPassword"); + return this; + } + + public Builder adminPassword(String adminPassword) { + this.adminPassword = adminPassword != null ? adminPassword.toCharArray() : null; + this.__explicitlySet__.add("adminPassword"); + return this; + } + /** The {@code DB_UNIQUE_NAME} for the new Oracle Database. */ + @com.fasterxml.jackson.annotation.JsonProperty("dbUniqueName") + private String dbUniqueName; + + /** + * The {@code DB_UNIQUE_NAME} for the new Oracle Database. + * + * @param dbUniqueName the value to set + * @return this builder + */ + public Builder dbUniqueName(String dbUniqueName) { + this.dbUniqueName = dbUniqueName; + this.__explicitlySet__.add("dbUniqueName"); + return this; + } + /** + * The display name of the database to be created from the snapshot/database. It must begin + * with an alphabetic character and can contain a maximum of eight alphanumeric characters. + * Special characters are not permitted. + */ + @com.fasterxml.jackson.annotation.JsonProperty("dbName") + private String dbName; + + /** + * The display name of the database to be created from the snapshot/database. It must begin + * with an alphabetic character and can contain a maximum of eight alphanumeric characters. + * Special characters are not permitted. + * + * @param dbName the value to set + * @return this builder + */ + public Builder dbName(String dbName) { + this.dbName = dbName; + this.__explicitlySet__.add("dbName"); + return this; + } + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: + * AL32UTF8, AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, + * AR8MSWIN1256, AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, + * AZ8ISO8859P9E, BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, + * BN8BSCII, CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, + * CL8MACCYRILLICS, CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, + * EE8PC852, EL8DEC, EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, + * EL8PC869, ET8MSWIN923, HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, + * IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, + * JA16VMS, KO16KSC5601, KO16KSCCS, KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, + * LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, LV8RST104090, N8PC865, NE8ISO8859P10, + * NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, + * TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, US7ASCII, US8PC437, UTF8, VN8MSWIN1258, + * VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, WE8ISO8859P9, WE8MACROMAN8S, + * WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, WE8PC860, WE8ROMAN8, + * ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, ZHT16MSWIN950, + * ZHT32EUC, ZHT32SOPS, ZHT32TRIS + */ + @com.fasterxml.jackson.annotation.JsonProperty("characterSet") + private String characterSet; + + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: + * AL32UTF8, AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, + * AR8MSWIN1256, AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, + * AZ8ISO8859P9E, BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, + * BN8BSCII, CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, + * CL8MACCYRILLICS, CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, + * EE8PC852, EL8DEC, EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, + * EL8PC869, ET8MSWIN923, HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, + * IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, + * JA16VMS, KO16KSC5601, KO16KSCCS, KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, + * LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, LV8RST104090, N8PC865, NE8ISO8859P10, + * NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, + * TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, US7ASCII, US8PC437, UTF8, VN8MSWIN1258, + * VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, WE8ISO8859P9, WE8MACROMAN8S, + * WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, WE8PC860, WE8ROMAN8, + * ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, ZHT16MSWIN950, + * ZHT32EUC, ZHT32SOPS, ZHT32TRIS + * + * @param characterSet the value to set + * @return this builder + */ + public Builder characterSet(String characterSet) { + this.characterSet = characterSet; + this.__explicitlySet__.add("characterSet"); + return this; + } + /** + * The national character set for the database. The default is AL16UTF16. Allowed values + * are: AL16UTF16 or UTF8. + */ + @com.fasterxml.jackson.annotation.JsonProperty("ncharacterSet") + private String ncharacterSet; + + /** + * The national character set for the database. The default is AL16UTF16. Allowed values + * are: AL16UTF16 or UTF8. + * + * @param ncharacterSet the value to set + * @return this builder + */ + public Builder ncharacterSet(String ncharacterSet) { + this.ncharacterSet = ncharacterSet; + this.__explicitlySet__.add("ncharacterSet"); + return this; + } + /** Specifies a prefix for the {@code Oracle SID} of the database to be created. */ + @com.fasterxml.jackson.annotation.JsonProperty("sidPrefix") + private String sidPrefix; + + /** + * Specifies a prefix for the {@code Oracle SID} of the database to be created. + * + * @param sidPrefix the value to set + * @return this builder + */ + public Builder sidPrefix(String sidPrefix) { + this.sidPrefix = sidPrefix; + this.__explicitlySet__.add("sidPrefix"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * key store of Oracle Vault. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreId") + private String keyStoreId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * key store of Oracle Vault. + * + * @param keyStoreId the value to set + * @return this builder + */ + public Builder keyStoreId(String keyStoreId) { + this.keyStoreId = keyStoreId; + this.__explicitlySet__.add("keyStoreId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("encryptionKeyLocationDetails") + private EncryptionKeyLocationDetails encryptionKeyLocationDetails; + + public Builder encryptionKeyLocationDetails( + EncryptionKeyLocationDetails encryptionKeyLocationDetails) { + this.encryptionKeyLocationDetails = encryptionKeyLocationDetails; + this.__explicitlySet__.add("encryptionKeyLocationDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("storageSizeDetails") + private DatabaseStorageSizeDetails storageSizeDetails; + + public Builder storageSizeDetails(DatabaseStorageSizeDetails storageSizeDetails) { + this.storageSizeDetails = storageSizeDetails; + this.__explicitlySet__.add("storageSizeDetails"); + 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). + */ + @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). + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dataSafeRegistrationDetails") + private DataSafeRegistrationRequestDetails dataSafeRegistrationDetails; + + public Builder dataSafeRegistrationDetails( + DataSafeRegistrationRequestDetails dataSafeRegistrationDetails) { + this.dataSafeRegistrationDetails = dataSafeRegistrationDetails; + this.__explicitlySet__.add("dataSafeRegistrationDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabaseFromSnapshotDetails build() { + CreateDatabaseFromSnapshotDetails model = + new CreateDatabaseFromSnapshotDetails( + this.sourceSnapshotId, + this.isThinClone, + this.sourceTdePassword, + this.sourceAdminPassword, + this.sourceEncryptionKeyLocationDetails, + this.tdeWalletPassword, + this.dbBackupConfig, + this.adminPassword, + this.dbUniqueName, + this.dbName, + this.characterSet, + this.ncharacterSet, + this.sidPrefix, + this.keyStoreId, + this.encryptionKeyLocationDetails, + this.storageSizeDetails, + this.freeformTags, + this.definedTags, + this.dataSafeRegistrationDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDatabaseFromSnapshotDetails model) { + if (model.wasPropertyExplicitlySet("sourceSnapshotId")) { + this.sourceSnapshotId(model.getSourceSnapshotId()); + } + if (model.wasPropertyExplicitlySet("isThinClone")) { + this.isThinClone(model.getIsThinClone()); + } + if (model.wasPropertyExplicitlySet("sourceTdePassword")) { + this.sourceTdePassword(model.getSourceTdePassword()); + } + if (model.wasPropertyExplicitlySet("sourceAdminPassword")) { + this.sourceAdminPassword(model.getSourceAdminPassword()); + } + if (model.wasPropertyExplicitlySet("sourceEncryptionKeyLocationDetails")) { + this.sourceEncryptionKeyLocationDetails( + model.getSourceEncryptionKeyLocationDetails()); + } + if (model.wasPropertyExplicitlySet("tdeWalletPassword")) { + this.tdeWalletPassword(model.getTdeWalletPassword()); + } + if (model.wasPropertyExplicitlySet("dbBackupConfig")) { + this.dbBackupConfig(model.getDbBackupConfig()); + } + if (model.wasPropertyExplicitlySet("adminPassword")) { + this.adminPassword(model.getAdminPassword()); + } + if (model.wasPropertyExplicitlySet("dbUniqueName")) { + this.dbUniqueName(model.getDbUniqueName()); + } + if (model.wasPropertyExplicitlySet("dbName")) { + this.dbName(model.getDbName()); + } + if (model.wasPropertyExplicitlySet("characterSet")) { + this.characterSet(model.getCharacterSet()); + } + if (model.wasPropertyExplicitlySet("ncharacterSet")) { + this.ncharacterSet(model.getNcharacterSet()); + } + if (model.wasPropertyExplicitlySet("sidPrefix")) { + this.sidPrefix(model.getSidPrefix()); + } + if (model.wasPropertyExplicitlySet("keyStoreId")) { + this.keyStoreId(model.getKeyStoreId()); + } + if (model.wasPropertyExplicitlySet("encryptionKeyLocationDetails")) { + this.encryptionKeyLocationDetails(model.getEncryptionKeyLocationDetails()); + } + if (model.wasPropertyExplicitlySet("storageSizeDetails")) { + this.storageSizeDetails(model.getStorageSizeDetails()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("dataSafeRegistrationDetails")) { + this.dataSafeRegistrationDetails(model.getDataSafeRegistrationDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The snapshot [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceSnapshotId") + private final String sourceSnapshotId; + + /** + * The snapshot [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @return the value + */ + public String getSourceSnapshotId() { + return sourceSnapshotId; + } + + /** Specifies whether thick or thin database cloning is to be performed. */ + @com.fasterxml.jackson.annotation.JsonProperty("isThinClone") + private final Boolean isThinClone; + + /** + * Specifies whether thick or thin database cloning is to be performed. + * + * @return the value + */ + public Boolean getIsThinClone() { + return isThinClone; + } + + /** The password to open the TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceTdePassword") + private final char[] sourceTdePassword; + + /** + * The password to open the TDE wallet. + * + * @return the value + * @deprecated Use getSourceTdePassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSourceTdePassword() { + return sourceTdePassword != null ? new String(sourceTdePassword) : null; + } + + /** + * The password to open the TDE wallet. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceTdePassword") + public char[] getSourceTdePassword__AsCharArray() { + return sourceTdePassword; + } + + /** The source database's password for SYS, SYSTEM. */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceAdminPassword") + private final char[] sourceAdminPassword; + + /** + * The source database's password for SYS, SYSTEM. + * + * @return the value + * @deprecated Use getSourceAdminPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSourceAdminPassword() { + return sourceAdminPassword != null ? new String(sourceAdminPassword) : null; + } + + /** + * The source database's password for SYS, SYSTEM. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("sourceAdminPassword") + public char[] getSourceAdminPassword__AsCharArray() { + return sourceAdminPassword; + } + + @com.fasterxml.jackson.annotation.JsonProperty("sourceEncryptionKeyLocationDetails") + private final EncryptionKeyLocationDetails sourceEncryptionKeyLocationDetails; + + public EncryptionKeyLocationDetails getSourceEncryptionKeyLocationDetails() { + return sourceEncryptionKeyLocationDetails; + } + + /** The password for the target Database TDE wallet. */ + @com.fasterxml.jackson.annotation.JsonProperty("tdeWalletPassword") + private final char[] tdeWalletPassword; + + /** + * The password for the target Database TDE wallet. + * + * @return the value + * @deprecated Use getTdeWalletPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getTdeWalletPassword() { + return tdeWalletPassword != null ? new String(tdeWalletPassword) : null; + } + + /** + * The password for the target Database TDE wallet. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("tdeWalletPassword") + public char[] getTdeWalletPassword__AsCharArray() { + return tdeWalletPassword; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dbBackupConfig") + private final DbBackupConfig dbBackupConfig; + + public DbBackupConfig getDbBackupConfig() { + return dbBackupConfig; + } + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at least + * nine characters and contain at least two uppercase, two lowercase, two numbers, and two + * special characters. The special characters must be _, \\#, or -. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminPassword") + private final char[] adminPassword; + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at least + * nine characters and contain at least two uppercase, two lowercase, two numbers, and two + * special characters. The special characters must be _, \\#, or -. + * + * @return the value + * @deprecated Use getAdminPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAdminPassword() { + return adminPassword != null ? new String(adminPassword) : null; + } + + /** + * A strong password for SYS, SYSTEM, PDB Admin and TDE Wallet. The password must be at least + * nine characters and contain at least two uppercase, two lowercase, two numbers, and two + * special characters. The special characters must be _, \\#, or -. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminPassword") + public char[] getAdminPassword__AsCharArray() { + return adminPassword; + } + + /** The {@code DB_UNIQUE_NAME} for the new Oracle Database. */ + @com.fasterxml.jackson.annotation.JsonProperty("dbUniqueName") + private final String dbUniqueName; + + /** + * The {@code DB_UNIQUE_NAME} for the new Oracle Database. + * + * @return the value + */ + public String getDbUniqueName() { + return dbUniqueName; + } + + /** + * The display name of the database to be created from the snapshot/database. It must begin with + * an alphabetic character and can contain a maximum of eight alphanumeric characters. Special + * characters are not permitted. + */ + @com.fasterxml.jackson.annotation.JsonProperty("dbName") + private final String dbName; + + /** + * The display name of the database to be created from the snapshot/database. It must begin with + * an alphabetic character and can contain a maximum of eight alphanumeric characters. Special + * characters are not permitted. + * + * @return the value + */ + public String getDbName() { + return dbName; + } + + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: AL32UTF8, + * AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, AR8MSWIN1256, + * AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, AZ8ISO8859P9E, + * BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, BN8BSCII, + * CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, CL8MACCYRILLICS, + * CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, EE8PC852, EL8DEC, + * EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, EL8PC869, ET8MSWIN923, + * HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, + * JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, JA16VMS, KO16KSC5601, KO16KSCCS, + * KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, + * LV8RST104090, N8PC865, NE8ISO8859P10, NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, + * SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, + * US7ASCII, US8PC437, UTF8, VN8MSWIN1258, VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, + * WE8ISO8859P9, WE8MACROMAN8S, WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, + * WE8PC860, WE8ROMAN8, ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, + * ZHT16MSWIN950, ZHT32EUC, ZHT32SOPS, ZHT32TRIS + */ + @com.fasterxml.jackson.annotation.JsonProperty("characterSet") + private final String characterSet; + + /** + * The character set for the database. The default is AL32UTF8. Allowed values are: AL32UTF8, + * AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, AR8MSWIN1256, + * AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, AZ8ISO8859P9E, + * BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, BN8BSCII, + * CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, CL8MACCYRILLICS, + * CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, EE8PC852, EL8DEC, + * EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, EL8PC869, ET8MSWIN923, + * HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, + * JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, JA16VMS, KO16KSC5601, KO16KSCCS, + * KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, + * LV8RST104090, N8PC865, NE8ISO8859P10, NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, + * SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, + * US7ASCII, US8PC437, UTF8, VN8MSWIN1258, VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, + * WE8ISO8859P9, WE8MACROMAN8S, WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, + * WE8PC860, WE8ROMAN8, ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, + * ZHT16MSWIN950, ZHT32EUC, ZHT32SOPS, ZHT32TRIS + * + * @return the value + */ + public String getCharacterSet() { + return characterSet; + } + + /** + * The national character set for the database. The default is AL16UTF16. Allowed values are: + * AL16UTF16 or UTF8. + */ + @com.fasterxml.jackson.annotation.JsonProperty("ncharacterSet") + private final String ncharacterSet; + + /** + * The national character set for the database. The default is AL16UTF16. Allowed values are: + * AL16UTF16 or UTF8. + * + * @return the value + */ + public String getNcharacterSet() { + return ncharacterSet; + } + + /** Specifies a prefix for the {@code Oracle SID} of the database to be created. */ + @com.fasterxml.jackson.annotation.JsonProperty("sidPrefix") + private final String sidPrefix; + + /** + * Specifies a prefix for the {@code Oracle SID} of the database to be created. + * + * @return the value + */ + public String getSidPrefix() { + return sidPrefix; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the key + * store of Oracle Vault. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreId") + private final String keyStoreId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the key + * store of Oracle Vault. + * + * @return the value + */ + public String getKeyStoreId() { + return keyStoreId; + } + + @com.fasterxml.jackson.annotation.JsonProperty("encryptionKeyLocationDetails") + private final EncryptionKeyLocationDetails encryptionKeyLocationDetails; + + public EncryptionKeyLocationDetails getEncryptionKeyLocationDetails() { + return encryptionKeyLocationDetails; + } + + @com.fasterxml.jackson.annotation.JsonProperty("storageSizeDetails") + private final DatabaseStorageSizeDetails storageSizeDetails; + + public DatabaseStorageSizeDetails getStorageSizeDetails() { + return storageSizeDetails; + } + + /** + * 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). + */ + @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). + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + @com.fasterxml.jackson.annotation.JsonProperty("dataSafeRegistrationDetails") + private final DataSafeRegistrationRequestDetails dataSafeRegistrationDetails; + + public DataSafeRegistrationRequestDetails getDataSafeRegistrationDetails() { + return dataSafeRegistrationDetails; + } + + @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("CreateDatabaseFromSnapshotDetails("); + sb.append("super=").append(super.toString()); + sb.append("sourceSnapshotId=").append(String.valueOf(this.sourceSnapshotId)); + sb.append(", isThinClone=").append(String.valueOf(this.isThinClone)); + sb.append(", sourceTdePassword=").append(""); + sb.append(", sourceAdminPassword=").append(""); + sb.append(", sourceEncryptionKeyLocationDetails=") + .append(String.valueOf(this.sourceEncryptionKeyLocationDetails)); + sb.append(", tdeWalletPassword=").append(""); + sb.append(", dbBackupConfig=").append(String.valueOf(this.dbBackupConfig)); + sb.append(", adminPassword=").append(""); + sb.append(", dbUniqueName=").append(String.valueOf(this.dbUniqueName)); + sb.append(", dbName=").append(String.valueOf(this.dbName)); + sb.append(", characterSet=").append(String.valueOf(this.characterSet)); + sb.append(", ncharacterSet=").append(String.valueOf(this.ncharacterSet)); + sb.append(", sidPrefix=").append(String.valueOf(this.sidPrefix)); + sb.append(", keyStoreId=").append(String.valueOf(this.keyStoreId)); + sb.append(", encryptionKeyLocationDetails=") + .append(String.valueOf(this.encryptionKeyLocationDetails)); + sb.append(", storageSizeDetails=").append(String.valueOf(this.storageSizeDetails)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(", dataSafeRegistrationDetails=") + .append(String.valueOf(this.dataSafeRegistrationDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabaseFromSnapshotDetails)) { + return false; + } + + CreateDatabaseFromSnapshotDetails other = (CreateDatabaseFromSnapshotDetails) o; + return java.util.Objects.equals(this.sourceSnapshotId, other.sourceSnapshotId) + && java.util.Objects.equals(this.isThinClone, other.isThinClone) + && java.util.Objects.equals(this.sourceTdePassword, other.sourceTdePassword) + && java.util.Objects.equals(this.sourceAdminPassword, other.sourceAdminPassword) + && java.util.Objects.equals( + this.sourceEncryptionKeyLocationDetails, + other.sourceEncryptionKeyLocationDetails) + && java.util.Objects.equals(this.tdeWalletPassword, other.tdeWalletPassword) + && java.util.Objects.equals(this.dbBackupConfig, other.dbBackupConfig) + && java.util.Objects.equals(this.adminPassword, other.adminPassword) + && java.util.Objects.equals(this.dbUniqueName, other.dbUniqueName) + && java.util.Objects.equals(this.dbName, other.dbName) + && java.util.Objects.equals(this.characterSet, other.characterSet) + && java.util.Objects.equals(this.ncharacterSet, other.ncharacterSet) + && java.util.Objects.equals(this.sidPrefix, other.sidPrefix) + && java.util.Objects.equals(this.keyStoreId, other.keyStoreId) + && java.util.Objects.equals( + this.encryptionKeyLocationDetails, other.encryptionKeyLocationDetails) + && java.util.Objects.equals(this.storageSizeDetails, other.storageSizeDetails) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals( + this.dataSafeRegistrationDetails, other.dataSafeRegistrationDetails) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.sourceSnapshotId == null ? 43 : this.sourceSnapshotId.hashCode()); + result = (result * PRIME) + (this.isThinClone == null ? 43 : this.isThinClone.hashCode()); + result = + (result * PRIME) + + (this.sourceTdePassword == null ? 43 : this.sourceTdePassword.hashCode()); + result = + (result * PRIME) + + (this.sourceAdminPassword == null + ? 43 + : this.sourceAdminPassword.hashCode()); + result = + (result * PRIME) + + (this.sourceEncryptionKeyLocationDetails == null + ? 43 + : this.sourceEncryptionKeyLocationDetails.hashCode()); + result = + (result * PRIME) + + (this.tdeWalletPassword == null ? 43 : this.tdeWalletPassword.hashCode()); + result = + (result * PRIME) + + (this.dbBackupConfig == null ? 43 : this.dbBackupConfig.hashCode()); + result = + (result * PRIME) + + (this.adminPassword == null ? 43 : this.adminPassword.hashCode()); + result = (result * PRIME) + (this.dbUniqueName == null ? 43 : this.dbUniqueName.hashCode()); + result = (result * PRIME) + (this.dbName == null ? 43 : this.dbName.hashCode()); + result = (result * PRIME) + (this.characterSet == null ? 43 : this.characterSet.hashCode()); + result = + (result * PRIME) + + (this.ncharacterSet == null ? 43 : this.ncharacterSet.hashCode()); + result = (result * PRIME) + (this.sidPrefix == null ? 43 : this.sidPrefix.hashCode()); + result = (result * PRIME) + (this.keyStoreId == null ? 43 : this.keyStoreId.hashCode()); + result = + (result * PRIME) + + (this.encryptionKeyLocationDetails == null + ? 43 + : this.encryptionKeyLocationDetails.hashCode()); + result = + (result * PRIME) + + (this.storageSizeDetails == null + ? 43 + : this.storageSizeDetails.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.dataSafeRegistrationDetails == null + ? 43 + : this.dataSafeRegistrationDetails.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseSnapshotDetails.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseSnapshotDetails.java new file mode 100644 index 00000000000..a61c5a5d879 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/CreateDatabaseSnapshotDetails.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.database.model; + +/** + * Details to create a Database Snapshot.
+ * 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 = CreateDatabaseSnapshotDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabaseSnapshotDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"name", "databaseId", "freeformTags", "definedTags"}) + public CreateDatabaseSnapshotDetails( + String name, + String databaseId, + java.util.Map freeformTags, + java.util.Map> definedTags) { + super(); + this.name = name; + this.databaseId = databaseId; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The user-friendly name for the Database Snapshot. The name should be unique. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * The user-friendly name for the Database Snapshot. The name should be unique. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + */ + @com.fasterxml.jackson.annotation.JsonProperty("databaseId") + private String databaseId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + * + * @param databaseId the value to set + * @return this builder + */ + public Builder databaseId(String databaseId) { + this.databaseId = databaseId; + this.__explicitlySet__.add("databaseId"); + 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). + */ + @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). + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabaseSnapshotDetails build() { + CreateDatabaseSnapshotDetails model = + new CreateDatabaseSnapshotDetails( + this.name, this.databaseId, this.freeformTags, this.definedTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDatabaseSnapshotDetails model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("databaseId")) { + this.databaseId(model.getDatabaseId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The user-friendly name for the Database Snapshot. The name should be unique. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * The user-friendly name for the Database Snapshot. The name should be unique. + * + * @return the value + */ + public String getName() { + return name; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + */ + @com.fasterxml.jackson.annotation.JsonProperty("databaseId") + private final String databaseId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + * + * @return the value + */ + public String getDatabaseId() { + return databaseId; + } + + /** + * 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). + */ + @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). + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + @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("CreateDatabaseSnapshotDetails("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(", databaseId=").append(String.valueOf(this.databaseId)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabaseSnapshotDetails)) { + return false; + } + + CreateDatabaseSnapshotDetails other = (CreateDatabaseSnapshotDetails) o; + return java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.databaseId, other.databaseId) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && 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.databaseId == null ? 43 : this.databaseId.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshot.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshot.java new file mode 100644 index 00000000000..15b96f69a2e --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshot.java @@ -0,0 +1,664 @@ +/** + * 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.database.model; + +/** + * Details of the Database Snapshot.
+ * 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 = DatabaseSnapshot.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabaseSnapshot + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "lifecycleState", + "name", + "databaseId", + "timeCreated", + "lifecycleDetails", + "freeformTags", + "definedTags", + "systemTags", + "compartmentId", + "clusterId" + }) + public DatabaseSnapshot( + String id, + LifecycleState lifecycleState, + String name, + String databaseId, + java.util.Date timeCreated, + String lifecycleDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + String compartmentId, + String clusterId) { + super(); + this.id = id; + this.lifecycleState = lifecycleState; + this.name = name; + this.databaseId = databaseId; + this.timeCreated = timeCreated; + this.lifecycleDetails = lifecycleDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + this.compartmentId = compartmentId; + this.clusterId = clusterId; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** The current state of the Exadata Database Snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The current state of the Exadata Database Snapshot. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** The user-friendly name for the Database Snapshot. The name should be unique. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * The user-friendly name for the Database Snapshot. The name should be unique. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + */ + @com.fasterxml.jackson.annotation.JsonProperty("databaseId") + private String databaseId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + * + * @param databaseId the value to set + * @return this builder + */ + public Builder databaseId(String databaseId) { + this.databaseId = databaseId; + this.__explicitlySet__.add("databaseId"); + return this; + } + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC + * 3339 format. For example: 2023-06-27T21:10:29Z + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC + * 3339 format. For example: 2023-06-27T21:10:29Z + * + * @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; + } + /** + * Additional information about the current lifecycle state of the Exadata Database + * Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * Additional information about the current lifecycle state of the Exadata Database + * Snapshot. + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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). + */ + @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). + * + * @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. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + */ + @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. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + * @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; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * VM cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterId") + private String clusterId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * VM cluster. + * + * @param clusterId the value to set + * @return this builder + */ + public Builder clusterId(String clusterId) { + this.clusterId = clusterId; + this.__explicitlySet__.add("clusterId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabaseSnapshot build() { + DatabaseSnapshot model = + new DatabaseSnapshot( + this.id, + this.lifecycleState, + this.name, + this.databaseId, + this.timeCreated, + this.lifecycleDetails, + this.freeformTags, + this.definedTags, + this.systemTags, + this.compartmentId, + this.clusterId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabaseSnapshot model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("databaseId")) { + this.databaseId(model.getDatabaseId()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("clusterId")) { + this.clusterId(model.getClusterId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + * + * @return the value + */ + public String getId() { + return id; + } + + /** The current state of the Exadata Database Snapshot. */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Creating("CREATING"), + Available("AVAILABLE"), + Terminating("TERMINATING"), + Terminated("TERMINATED"), + Failed("FAILED"), + + /** + * 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 current state of the Exadata Database Snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The current state of the Exadata Database Snapshot. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** The user-friendly name for the Database Snapshot. The name should be unique. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * The user-friendly name for the Database Snapshot. The name should be unique. + * + * @return the value + */ + public String getName() { + return name; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + */ + @com.fasterxml.jackson.annotation.JsonProperty("databaseId") + private final String databaseId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + * + * @return the value + */ + public String getDatabaseId() { + return databaseId; + } + + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC 3339 + * format. For example: 2023-06-27T21:10:29Z + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC 3339 + * format. For example: 2023-06-27T21:10:29Z + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * Additional information about the current lifecycle state of the Exadata Database Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * Additional information about the current lifecycle state of the Exadata Database Snapshot. + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** + * 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). + */ + @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). + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + /** + * System 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). + */ + @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. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + * @return the value + */ + public java.util.Map> getSystemTags() { + return systemTags; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM + * cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterId") + private final String clusterId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM + * cluster. + * + * @return the value + */ + public String getClusterId() { + return clusterId; + } + + @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("DatabaseSnapshot("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", databaseId=").append(String.valueOf(this.databaseId)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + 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(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", clusterId=").append(String.valueOf(this.clusterId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabaseSnapshot)) { + return false; + } + + DatabaseSnapshot other = (DatabaseSnapshot) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.databaseId, other.databaseId) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals(this.systemTags, other.systemTags) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.clusterId, other.clusterId) + && 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.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.databaseId == null ? 43 : this.databaseId.hashCode()); + result = (result * PRIME) + (this.timeCreated == null ? 43 : this.timeCreated.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.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) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.clusterId == null ? 43 : this.clusterId.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshotCollection.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshotCollection.java new file mode 100644 index 00000000000..128de597432 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshotCollection.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.database.model; + +/** + * Results of database snapshot search
+ * 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 = DatabaseSnapshotCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabaseSnapshotCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public DatabaseSnapshotCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Array of Exadata Database Snapshots */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * Array of Exadata Database Snapshots + * + * @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 DatabaseSnapshotCollection build() { + DatabaseSnapshotCollection model = new DatabaseSnapshotCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabaseSnapshotCollection 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); + } + + /** Array of Exadata Database Snapshots */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * Array of Exadata Database Snapshots + * + * @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("DatabaseSnapshotCollection("); + 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 DatabaseSnapshotCollection)) { + return false; + } + + DatabaseSnapshotCollection other = (DatabaseSnapshotCollection) 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-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshotSummary.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshotSummary.java new file mode 100644 index 00000000000..dbe3007ce44 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/DatabaseSnapshotSummary.java @@ -0,0 +1,616 @@ +/** + * 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.database.model; + +/** + * Details of the Exadata Database Snapshot.
+ * 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 = DatabaseSnapshotSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabaseSnapshotSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "databaseId", + "lifecycleState", + "name", + "timeCreated", + "lifecycleDetails", + "freeformTags", + "definedTags", + "systemTags", + "compartmentId", + "clusterId" + }) + public DatabaseSnapshotSummary( + String id, + String databaseId, + DatabaseSnapshot.LifecycleState lifecycleState, + String name, + java.util.Date timeCreated, + String lifecycleDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + String compartmentId, + String clusterId) { + super(); + this.id = id; + this.databaseId = databaseId; + this.lifecycleState = lifecycleState; + this.name = name; + this.timeCreated = timeCreated; + this.lifecycleDetails = lifecycleDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + this.compartmentId = compartmentId; + this.clusterId = clusterId; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + * + * @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](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + */ + @com.fasterxml.jackson.annotation.JsonProperty("databaseId") + private String databaseId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + * + * @param databaseId the value to set + * @return this builder + */ + public Builder databaseId(String databaseId) { + this.databaseId = databaseId; + this.__explicitlySet__.add("databaseId"); + return this; + } + /** The current state of the Exadata Database Snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private DatabaseSnapshot.LifecycleState lifecycleState; + + /** + * The current state of the Exadata Database Snapshot. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(DatabaseSnapshot.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** The user-friendly name for the Database Snapshot. The name should be unique. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * The user-friendly name for the Database Snapshot. The name should be unique. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC + * 3339 format. For example: 2023-06-27T21:10:29Z + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC + * 3339 format. For example: 2023-06-27T21:10:29Z + * + * @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; + } + /** + * Additional information about the current lifecycle state of the Exadata Database + * Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * Additional information about the current lifecycle state of the Exadata Database + * Snapshot. + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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). + */ + @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). + * + * @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. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + */ + @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. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + * @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; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * VM cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterId") + private String clusterId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * VM cluster. + * + * @param clusterId the value to set + * @return this builder + */ + public Builder clusterId(String clusterId) { + this.clusterId = clusterId; + this.__explicitlySet__.add("clusterId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabaseSnapshotSummary build() { + DatabaseSnapshotSummary model = + new DatabaseSnapshotSummary( + this.id, + this.databaseId, + this.lifecycleState, + this.name, + this.timeCreated, + this.lifecycleDetails, + this.freeformTags, + this.definedTags, + this.systemTags, + this.compartmentId, + this.clusterId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabaseSnapshotSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("databaseId")) { + this.databaseId(model.getDatabaseId()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("clusterId")) { + this.clusterId(model.getClusterId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database Snapshot. + * + * @return the value + */ + public String getId() { + return id; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + */ + @com.fasterxml.jackson.annotation.JsonProperty("databaseId") + private final String databaseId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Exadata Database. + * + * @return the value + */ + public String getDatabaseId() { + return databaseId; + } + + /** The current state of the Exadata Database Snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final DatabaseSnapshot.LifecycleState lifecycleState; + + /** + * The current state of the Exadata Database Snapshot. + * + * @return the value + */ + public DatabaseSnapshot.LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** The user-friendly name for the Database Snapshot. The name should be unique. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * The user-friendly name for the Database Snapshot. The name should be unique. + * + * @return the value + */ + public String getName() { + return name; + } + + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC 3339 + * format. For example: 2023-06-27T21:10:29Z + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time that the Exadata Database Snapshot was created, as expressed in RFC 3339 + * format. For example: 2023-06-27T21:10:29Z + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * Additional information about the current lifecycle state of the Exadata Database Snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * Additional information about the current lifecycle state of the Exadata Database Snapshot. + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** + * 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). + */ + @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). + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + /** + * System 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). + */ + @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. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + * @return the value + */ + public java.util.Map> getSystemTags() { + return systemTags; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM + * cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterId") + private final String clusterId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VM + * cluster. + * + * @return the value + */ + public String getClusterId() { + return clusterId; + } + + @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("DatabaseSnapshotSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", databaseId=").append(String.valueOf(this.databaseId)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + 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(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", clusterId=").append(String.valueOf(this.clusterId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabaseSnapshotSummary)) { + return false; + } + + DatabaseSnapshotSummary other = (DatabaseSnapshotSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.databaseId, other.databaseId) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals(this.systemTags, other.systemTags) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.clusterId, other.clusterId) + && 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.databaseId == null ? 43 : this.databaseId.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.timeCreated == null ? 43 : this.timeCreated.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.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) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.clusterId == null ? 43 : this.clusterId.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/model/UpdateDatabaseSnapshotDetails.java b/bmc-database/src/main/java/com/oracle/bmc/database/model/UpdateDatabaseSnapshotDetails.java new file mode 100644 index 00000000000..5bf35e656f7 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/model/UpdateDatabaseSnapshotDetails.java @@ -0,0 +1,205 @@ +/** + * 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.database.model; + +/** + * Details to update a Database Snapshot.
+ * 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 = UpdateDatabaseSnapshotDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDatabaseSnapshotDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"freeformTags", "definedTags"}) + public UpdateDatabaseSnapshotDetails( + java.util.Map freeformTags, + java.util.Map> definedTags) { + super(); + this.freeformTags = freeformTags; + this.definedTags = definedTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * 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). + */ + @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). + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDatabaseSnapshotDetails build() { + UpdateDatabaseSnapshotDetails model = + new UpdateDatabaseSnapshotDetails(this.freeformTags, this.definedTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateDatabaseSnapshotDetails model) { + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(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 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). + */ + @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). + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + @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("UpdateDatabaseSnapshotDetails("); + sb.append("super=").append(super.toString()); + sb.append("freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabaseSnapshotDetails)) { + return false; + } + + UpdateDatabaseSnapshotDetails other = (UpdateDatabaseSnapshotDetails) o; + return java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/requests/CreateDatabaseSnapshotRequest.java b/bmc-database/src/main/java/com/oracle/bmc/database/requests/CreateDatabaseSnapshotRequest.java new file mode 100644 index 00000000000..a472fdd82ef --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/requests/CreateDatabaseSnapshotRequest.java @@ -0,0 +1,282 @@ +/** + * 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.database.requests; + +import com.oracle.bmc.database.model.*; +/** + * Example: Click here to see how to use + * CreateDatabaseSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class CreateDatabaseSnapshotRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails> { + + /** Request to create a database snapshot. */ + private com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails + createDatabaseSnapshotDetails; + + /** Request to create a database snapshot. */ + public com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails + getCreateDatabaseSnapshotDetails() { + return createDatabaseSnapshotDetails; + } + /** + * A token that uniquely identifies a request so it can be retried in case of a timeout or + * server error without risk of executing that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations (for example, if a + * resource has been deleted and purged from the system, then a retry of the original creation + * request may be rejected). + */ + private String opcRetryToken; + + /** + * A token that uniquely identifies a request so it can be retried in case of a timeout or + * server error without risk of executing that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations (for example, if a + * resource has been deleted and purged from the system, then a retry of the original creation + * request may be rejected). + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** Unique identifier for the request. */ + private String opcRequestId; + + /** Unique identifier for the request. */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails getBody$() { + return createDatabaseSnapshotDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateDatabaseSnapshotRequest, + com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Request to create a database snapshot. */ + private com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails + createDatabaseSnapshotDetails = null; + + /** + * Request to create a database snapshot. + * + * @param createDatabaseSnapshotDetails the value to set + * @return this builder instance + */ + public Builder createDatabaseSnapshotDetails( + com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails + createDatabaseSnapshotDetails) { + this.createDatabaseSnapshotDetails = createDatabaseSnapshotDetails; + 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. Retry tokens expire after + * 24 hours, but can be invalidated before then due to conflicting operations (for example, + * if a resource has been deleted and purged from the system, then a retry of the original + * creation request may be rejected). + */ + private String opcRetryToken = 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. Retry tokens expire after + * 24 hours, but can be invalidated before then due to conflicting operations (for example, + * if a resource has been deleted and purged from the system, then a retry of the original + * creation request may be rejected). + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** Unique identifier for the request. */ + private String opcRequestId = null; + + /** + * Unique identifier for the request. + * + * @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(CreateDatabaseSnapshotRequest o) { + createDatabaseSnapshotDetails(o.getCreateDatabaseSnapshotDetails()); + opcRetryToken(o.getOpcRetryToken()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateDatabaseSnapshotRequest 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 CreateDatabaseSnapshotRequest + */ + public CreateDatabaseSnapshotRequest build() { + CreateDatabaseSnapshotRequest 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.database.model.CreateDatabaseSnapshotDetails body) { + createDatabaseSnapshotDetails(body); + return this; + } + + /** + * Build the instance of CreateDatabaseSnapshotRequest 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 CreateDatabaseSnapshotRequest + */ + public CreateDatabaseSnapshotRequest buildWithoutInvocationCallback() { + CreateDatabaseSnapshotRequest request = new CreateDatabaseSnapshotRequest(); + request.createDatabaseSnapshotDetails = createDatabaseSnapshotDetails; + request.opcRetryToken = opcRetryToken; + request.opcRequestId = opcRequestId; + return request; + // new CreateDatabaseSnapshotRequest(createDatabaseSnapshotDetails, 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() + .createDatabaseSnapshotDetails(createDatabaseSnapshotDetails) + .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(",createDatabaseSnapshotDetails=") + .append(String.valueOf(this.createDatabaseSnapshotDetails)); + 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 CreateDatabaseSnapshotRequest)) { + return false; + } + + CreateDatabaseSnapshotRequest other = (CreateDatabaseSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals( + this.createDatabaseSnapshotDetails, other.createDatabaseSnapshotDetails) + && 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.createDatabaseSnapshotDetails == null + ? 43 + : this.createDatabaseSnapshotDetails.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-database/src/main/java/com/oracle/bmc/database/requests/DeleteDatabaseSnapshotRequest.java b/bmc-database/src/main/java/com/oracle/bmc/database/requests/DeleteDatabaseSnapshotRequest.java new file mode 100644 index 00000000000..01c36d78769 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/requests/DeleteDatabaseSnapshotRequest.java @@ -0,0 +1,253 @@ +/** + * 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.database.requests; + +import com.oracle.bmc.database.model.*; +/** + * Example: Click here to see how to use + * DeleteDatabaseSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class DeleteDatabaseSnapshotRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String databaseSnapshotId; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + public String getDatabaseSnapshotId() { + return databaseSnapshotId; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** Unique identifier for the request. */ + private String opcRequestId; + + /** Unique identifier for the request. */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + DeleteDatabaseSnapshotRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String databaseSnapshotId = null; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @param databaseSnapshotId the value to set + * @return this builder instance + */ + public Builder databaseSnapshotId(String databaseSnapshotId) { + this.databaseSnapshotId = databaseSnapshotId; + 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 will be 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 will be 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; + } + + /** Unique identifier for the request. */ + private String opcRequestId = null; + + /** + * Unique identifier for the request. + * + * @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(DeleteDatabaseSnapshotRequest o) { + databaseSnapshotId(o.getDatabaseSnapshotId()); + ifMatch(o.getIfMatch()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteDatabaseSnapshotRequest 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 DeleteDatabaseSnapshotRequest + */ + public DeleteDatabaseSnapshotRequest build() { + DeleteDatabaseSnapshotRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteDatabaseSnapshotRequest 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 DeleteDatabaseSnapshotRequest + */ + public DeleteDatabaseSnapshotRequest buildWithoutInvocationCallback() { + DeleteDatabaseSnapshotRequest request = new DeleteDatabaseSnapshotRequest(); + request.databaseSnapshotId = databaseSnapshotId; + request.ifMatch = ifMatch; + request.opcRequestId = opcRequestId; + return request; + // new DeleteDatabaseSnapshotRequest(databaseSnapshotId, ifMatch, 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() + .databaseSnapshotId(databaseSnapshotId) + .ifMatch(ifMatch) + .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(",databaseSnapshotId=").append(String.valueOf(this.databaseSnapshotId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + 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 DeleteDatabaseSnapshotRequest)) { + return false; + } + + DeleteDatabaseSnapshotRequest other = (DeleteDatabaseSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.databaseSnapshotId, other.databaseSnapshotId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.databaseSnapshotId == null + ? 43 + : this.databaseSnapshotId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/requests/GetDatabaseSnapshotRequest.java b/bmc-database/src/main/java/com/oracle/bmc/database/requests/GetDatabaseSnapshotRequest.java new file mode 100644 index 00000000000..98fad1399fa --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/requests/GetDatabaseSnapshotRequest.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.database.requests; + +import com.oracle.bmc.database.model.*; +/** + * Example: Click here to see how to use GetDatabaseSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class GetDatabaseSnapshotRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String databaseSnapshotId; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + public String getDatabaseSnapshotId() { + return databaseSnapshotId; + } + /** Unique identifier for the request. */ + private String opcRequestId; + + /** Unique identifier for the request. */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetDatabaseSnapshotRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String databaseSnapshotId = null; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @param databaseSnapshotId the value to set + * @return this builder instance + */ + public Builder databaseSnapshotId(String databaseSnapshotId) { + this.databaseSnapshotId = databaseSnapshotId; + return this; + } + + /** Unique identifier for the request. */ + private String opcRequestId = null; + + /** + * Unique identifier for the request. + * + * @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(GetDatabaseSnapshotRequest o) { + databaseSnapshotId(o.getDatabaseSnapshotId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetDatabaseSnapshotRequest 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 GetDatabaseSnapshotRequest + */ + public GetDatabaseSnapshotRequest build() { + GetDatabaseSnapshotRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetDatabaseSnapshotRequest 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 GetDatabaseSnapshotRequest + */ + public GetDatabaseSnapshotRequest buildWithoutInvocationCallback() { + GetDatabaseSnapshotRequest request = new GetDatabaseSnapshotRequest(); + request.databaseSnapshotId = databaseSnapshotId; + request.opcRequestId = opcRequestId; + return request; + // new GetDatabaseSnapshotRequest(databaseSnapshotId, 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().databaseSnapshotId(databaseSnapshotId).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(",databaseSnapshotId=").append(String.valueOf(this.databaseSnapshotId)); + 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 GetDatabaseSnapshotRequest)) { + return false; + } + + GetDatabaseSnapshotRequest other = (GetDatabaseSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.databaseSnapshotId, other.databaseSnapshotId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.databaseSnapshotId == null + ? 43 + : this.databaseSnapshotId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/requests/ListDatabaseSnapshotsRequest.java b/bmc-database/src/main/java/com/oracle/bmc/database/requests/ListDatabaseSnapshotsRequest.java new file mode 100644 index 00000000000..415fdc8e999 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/requests/ListDatabaseSnapshotsRequest.java @@ -0,0 +1,532 @@ +/** + * 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.database.requests; + +import com.oracle.bmc.database.model.*; +/** + * Example: Click here to see how to use + * ListDatabaseSnapshotsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class ListDatabaseSnapshotsRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * The compartment + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String compartmentId; + + /** + * The compartment + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + public String getCompartmentId() { + return compartmentId; + } + /** The maximum number of items to return per page. */ + private Integer limit; + + /** The maximum number of items to return per page. */ + public Integer getLimit() { + return limit; + } + /** The pagination token to continue listing from. */ + private String page; + + /** The pagination token to continue listing from. */ + public String getPage() { + return page; + } + /** + * The field to sort by. You can provide one sort order ({@code sortOrder}). Default order for + * TIMECREATED is descending. Default order for NAME is ascending. The NAME sort order is case + * sensitive. + */ + private SortBy sortBy; + + /** + * The field to sort by. You can provide one sort order ({@code sortOrder}). Default order for + * TIMECREATED is descending. Default order for NAME is ascending. The NAME sort order is case + * sensitive. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + Timecreated("TIMECREATED"), + Name("NAME"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. You can provide one sort order ({@code sortOrder}). Default order for + * TIMECREATED is descending. Default order for NAME is ascending. The NAME sort order is case + * sensitive. + */ + public SortBy getSortBy() { + return sortBy; + } + /** + * A filter to return only resources that match the entire name given. The match is not case + * sensitive. + */ + private String name; + + /** + * A filter to return only resources that match the entire name given. The match is not case + * sensitive. + */ + public String getName() { + return name; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public enum SortOrder implements com.oracle.bmc.http.internal.BmcEnum { + Asc("ASC"), + Desc("DESC"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortOrder v : SortOrder.values()) { + map.put(v.getValue(), v); + } + } + + SortOrder(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortOrder create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortOrder: " + key); + } + }; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public SortOrder getSortOrder() { + return sortOrder; + } + /** + * A filter to return only Exadata Database Snapshots that match the given lifecycle state + * exactly. + */ + private com.oracle.bmc.database.model.DatabaseSnapshot.LifecycleState lifecycleState; + + /** + * A filter to return only Exadata Database Snapshots that match the given lifecycle state + * exactly. + */ + public com.oracle.bmc.database.model.DatabaseSnapshot.LifecycleState getLifecycleState() { + return lifecycleState; + } + /** A filter to return only Exadata Database Snapshots that match the given Database Id. */ + private String databaseId; + + /** A filter to return only Exadata Database Snapshots that match the given Database Id. */ + public String getDatabaseId() { + return databaseId; + } + /** A filter to return only Exadata Database Snapshots that match the given VM cluster. */ + private String clusterId; + + /** A filter to return only Exadata Database Snapshots that match the given VM cluster. */ + public String getClusterId() { + return clusterId; + } + /** Unique identifier for the request. */ + private String opcRequestId; + + /** Unique identifier for the request. */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListDatabaseSnapshotsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The compartment + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String compartmentId = null; + + /** + * The compartment + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** The maximum number of items to return per page. */ + private Integer limit = null; + + /** + * The maximum number of items to return per page. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** The pagination token to continue listing from. */ + private String page = null; + + /** + * The pagination token to continue listing from. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** + * The field to sort by. You can provide one sort order ({@code sortOrder}). Default order + * for TIMECREATED is descending. Default order for NAME is ascending. The NAME sort order + * is case sensitive. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. You can provide one sort order ({@code sortOrder}). Default order + * for TIMECREATED is descending. Default order for NAME is ascending. The NAME sort order + * is case sensitive. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** + * A filter to return only resources that match the entire name given. The match is not case + * sensitive. + */ + private String name = null; + + /** + * A filter to return only resources that match the entire name given. The match is not case + * sensitive. + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** + * A filter to return only Exadata Database Snapshots that match the given lifecycle state + * exactly. + */ + private com.oracle.bmc.database.model.DatabaseSnapshot.LifecycleState lifecycleState = null; + + /** + * A filter to return only Exadata Database Snapshots that match the given lifecycle state + * exactly. + * + * @param lifecycleState the value to set + * @return this builder instance + */ + public Builder lifecycleState( + com.oracle.bmc.database.model.DatabaseSnapshot.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + return this; + } + + /** A filter to return only Exadata Database Snapshots that match the given Database Id. */ + private String databaseId = null; + + /** + * A filter to return only Exadata Database Snapshots that match the given Database Id. + * + * @param databaseId the value to set + * @return this builder instance + */ + public Builder databaseId(String databaseId) { + this.databaseId = databaseId; + return this; + } + + /** A filter to return only Exadata Database Snapshots that match the given VM cluster. */ + private String clusterId = null; + + /** + * A filter to return only Exadata Database Snapshots that match the given VM cluster. + * + * @param clusterId the value to set + * @return this builder instance + */ + public Builder clusterId(String clusterId) { + this.clusterId = clusterId; + return this; + } + + /** Unique identifier for the request. */ + private String opcRequestId = null; + + /** + * Unique identifier for the request. + * + * @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(ListDatabaseSnapshotsRequest o) { + compartmentId(o.getCompartmentId()); + limit(o.getLimit()); + page(o.getPage()); + sortBy(o.getSortBy()); + name(o.getName()); + sortOrder(o.getSortOrder()); + lifecycleState(o.getLifecycleState()); + databaseId(o.getDatabaseId()); + clusterId(o.getClusterId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListDatabaseSnapshotsRequest 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 ListDatabaseSnapshotsRequest + */ + public ListDatabaseSnapshotsRequest build() { + ListDatabaseSnapshotsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListDatabaseSnapshotsRequest 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 ListDatabaseSnapshotsRequest + */ + public ListDatabaseSnapshotsRequest buildWithoutInvocationCallback() { + ListDatabaseSnapshotsRequest request = new ListDatabaseSnapshotsRequest(); + request.compartmentId = compartmentId; + request.limit = limit; + request.page = page; + request.sortBy = sortBy; + request.name = name; + request.sortOrder = sortOrder; + request.lifecycleState = lifecycleState; + request.databaseId = databaseId; + request.clusterId = clusterId; + request.opcRequestId = opcRequestId; + return request; + // new ListDatabaseSnapshotsRequest(compartmentId, limit, page, sortBy, name, sortOrder, + // lifecycleState, databaseId, clusterId, 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() + .compartmentId(compartmentId) + .limit(limit) + .page(page) + .sortBy(sortBy) + .name(name) + .sortOrder(sortOrder) + .lifecycleState(lifecycleState) + .databaseId(databaseId) + .clusterId(clusterId) + .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(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",name=").append(String.valueOf(this.name)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(",databaseId=").append(String.valueOf(this.databaseId)); + sb.append(",clusterId=").append(String.valueOf(this.clusterId)); + 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 ListDatabaseSnapshotsRequest)) { + return false; + } + + ListDatabaseSnapshotsRequest other = (ListDatabaseSnapshotsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.databaseId, other.databaseId) + && java.util.Objects.equals(this.clusterId, other.clusterId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @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.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.databaseId == null ? 43 : this.databaseId.hashCode()); + result = (result * PRIME) + (this.clusterId == null ? 43 : this.clusterId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/requests/UpdateDatabaseSnapshotRequest.java b/bmc-database/src/main/java/com/oracle/bmc/database/requests/UpdateDatabaseSnapshotRequest.java new file mode 100644 index 00000000000..08363a0c8b2 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/requests/UpdateDatabaseSnapshotRequest.java @@ -0,0 +1,368 @@ +/** + * 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.database.requests; + +import com.oracle.bmc.database.model.*; +/** + * Example: Click here to see how to use + * UpdateDatabaseSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class UpdateDatabaseSnapshotRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails> { + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String databaseSnapshotId; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + public String getDatabaseSnapshotId() { + return databaseSnapshotId; + } + /** Request to update a database snapshot. */ + private com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails + updateDatabaseSnapshotDetails; + + /** Request to update a database snapshot. */ + public com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails + getUpdateDatabaseSnapshotDetails() { + return updateDatabaseSnapshotDetails; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** + * A token that uniquely identifies a request so it can be retried in case of a timeout or + * server error without risk of executing that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations (for example, if a + * resource has been deleted and purged from the system, then a retry of the original creation + * request may be rejected). + */ + private String opcRetryToken; + + /** + * A token that uniquely identifies a request so it can be retried in case of a timeout or + * server error without risk of executing that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations (for example, if a + * resource has been deleted and purged from the system, then a retry of the original creation + * request may be rejected). + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** Unique identifier for the request. */ + private String opcRequestId; + + /** Unique identifier for the request. */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails getBody$() { + return updateDatabaseSnapshotDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpdateDatabaseSnapshotRequest, + com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + */ + private String databaseSnapshotId = null; + + /** + * The Exadata Database Snapshot + * [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm). + * + * @param databaseSnapshotId the value to set + * @return this builder instance + */ + public Builder databaseSnapshotId(String databaseSnapshotId) { + this.databaseSnapshotId = databaseSnapshotId; + return this; + } + + /** Request to update a database snapshot. */ + private com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails + updateDatabaseSnapshotDetails = null; + + /** + * Request to update a database snapshot. + * + * @param updateDatabaseSnapshotDetails the value to set + * @return this builder instance + */ + public Builder updateDatabaseSnapshotDetails( + com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails + updateDatabaseSnapshotDetails) { + this.updateDatabaseSnapshotDetails = updateDatabaseSnapshotDetails; + 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 will be 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 will be 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; + } + + /** + * A token that uniquely identifies a request so it can be retried in case of a timeout or + * server error without risk of executing that same action again. Retry tokens expire after + * 24 hours, but can be invalidated before then due to conflicting operations (for example, + * if a resource has been deleted and purged from the system, then a retry of the original + * creation request may be rejected). + */ + private String opcRetryToken = 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. Retry tokens expire after + * 24 hours, but can be invalidated before then due to conflicting operations (for example, + * if a resource has been deleted and purged from the system, then a retry of the original + * creation request may be rejected). + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** Unique identifier for the request. */ + private String opcRequestId = null; + + /** + * Unique identifier for the request. + * + * @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(UpdateDatabaseSnapshotRequest o) { + databaseSnapshotId(o.getDatabaseSnapshotId()); + updateDatabaseSnapshotDetails(o.getUpdateDatabaseSnapshotDetails()); + ifMatch(o.getIfMatch()); + opcRetryToken(o.getOpcRetryToken()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpdateDatabaseSnapshotRequest 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 UpdateDatabaseSnapshotRequest + */ + public UpdateDatabaseSnapshotRequest build() { + UpdateDatabaseSnapshotRequest 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.database.model.UpdateDatabaseSnapshotDetails body) { + updateDatabaseSnapshotDetails(body); + return this; + } + + /** + * Build the instance of UpdateDatabaseSnapshotRequest 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 UpdateDatabaseSnapshotRequest + */ + public UpdateDatabaseSnapshotRequest buildWithoutInvocationCallback() { + UpdateDatabaseSnapshotRequest request = new UpdateDatabaseSnapshotRequest(); + request.databaseSnapshotId = databaseSnapshotId; + request.updateDatabaseSnapshotDetails = updateDatabaseSnapshotDetails; + request.ifMatch = ifMatch; + request.opcRetryToken = opcRetryToken; + request.opcRequestId = opcRequestId; + return request; + // new UpdateDatabaseSnapshotRequest(databaseSnapshotId, updateDatabaseSnapshotDetails, + // ifMatch, 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() + .databaseSnapshotId(databaseSnapshotId) + .updateDatabaseSnapshotDetails(updateDatabaseSnapshotDetails) + .ifMatch(ifMatch) + .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(",databaseSnapshotId=").append(String.valueOf(this.databaseSnapshotId)); + sb.append(",updateDatabaseSnapshotDetails=") + .append(String.valueOf(this.updateDatabaseSnapshotDetails)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + 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 UpdateDatabaseSnapshotRequest)) { + return false; + } + + UpdateDatabaseSnapshotRequest other = (UpdateDatabaseSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.databaseSnapshotId, other.databaseSnapshotId) + && java.util.Objects.equals( + this.updateDatabaseSnapshotDetails, other.updateDatabaseSnapshotDetails) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && 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.databaseSnapshotId == null + ? 43 + : this.databaseSnapshotId.hashCode()); + result = + (result * PRIME) + + (this.updateDatabaseSnapshotDetails == null + ? 43 + : this.updateDatabaseSnapshotDetails.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.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-database/src/main/java/com/oracle/bmc/database/responses/CreateDatabaseSnapshotResponse.java b/bmc-database/src/main/java/com/oracle/bmc/database/responses/CreateDatabaseSnapshotResponse.java new file mode 100644 index 00000000000..4e9848f61a8 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/responses/CreateDatabaseSnapshotResponse.java @@ -0,0 +1,268 @@ +/** + * 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.database.responses; + +import com.oracle.bmc.database.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class CreateDatabaseSnapshotResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track the + * status of the request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track the + * status of the request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code DatabaseSnapshot} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot; + + /** + * The returned {@code DatabaseSnapshot} instance. + * + * @return the value + */ + public com.oracle.bmc.database.model.DatabaseSnapshot getDatabaseSnapshot() { + return databaseSnapshot; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcWorkRequestId", + "etag", + "opcRequestId", + "databaseSnapshot" + }) + private CreateDatabaseSnapshotResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String etag, + String opcRequestId, + com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + this.etag = etag; + this.opcRequestId = opcRequestId; + this.databaseSnapshot = databaseSnapshot; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + CreateDatabaseSnapshotResponse> { + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track + * the status of the request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track + * the status of the request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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; + } + + /** + * 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; + } + + /** The returned {@code DatabaseSnapshot} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot; + + /** + * The returned {@code DatabaseSnapshot} instance. + * + * @param databaseSnapshot the value to set + * @return this builder + */ + public Builder databaseSnapshot( + com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot) { + this.databaseSnapshot = databaseSnapshot; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateDatabaseSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + databaseSnapshot(o.getDatabaseSnapshot()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateDatabaseSnapshotResponse build() { + return new CreateDatabaseSnapshotResponse( + __httpStatusCode__, + headers, + opcWorkRequestId, + etag, + opcRequestId, + databaseSnapshot); + } + } + + /** + * 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",databaseSnapshot=").append(String.valueOf(databaseSnapshot)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabaseSnapshotResponse)) { + return false; + } + + CreateDatabaseSnapshotResponse other = (CreateDatabaseSnapshotResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.databaseSnapshot, other.databaseSnapshot); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.databaseSnapshot == null ? 43 : this.databaseSnapshot.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/responses/DeleteDatabaseSnapshotResponse.java b/bmc-database/src/main/java/com/oracle/bmc/database/responses/DeleteDatabaseSnapshotResponse.java new file mode 100644 index 00000000000..9dcc507ba54 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/responses/DeleteDatabaseSnapshotResponse.java @@ -0,0 +1,194 @@ +/** + * 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.database.responses; + +import com.oracle.bmc.database.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class DeleteDatabaseSnapshotResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track the + * status of the request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track the + * status of the request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** + * 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", + "opcWorkRequestId", + "opcRequestId" + }) + private DeleteDatabaseSnapshotResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + this.opcRequestId = opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + DeleteDatabaseSnapshotResponse> { + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track + * the status of the request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. Multiple OCID values are returned in a comma-separated list. Use {@link + * #getWorkRequest(GetWorkRequestRequest) getWorkRequest} with a work request OCID to track + * the status of the request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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(DeleteDatabaseSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteDatabaseSnapshotResponse build() { + return new DeleteDatabaseSnapshotResponse( + __httpStatusCode__, headers, opcWorkRequestId, 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + 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 DeleteDatabaseSnapshotResponse)) { + return false; + } + + DeleteDatabaseSnapshotResponse other = (DeleteDatabaseSnapshotResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/responses/GetDatabaseSnapshotResponse.java b/bmc-database/src/main/java/com/oracle/bmc/database/responses/GetDatabaseSnapshotResponse.java new file mode 100644 index 00000000000..c9beeb3a5a1 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/responses/GetDatabaseSnapshotResponse.java @@ -0,0 +1,211 @@ +/** + * 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.database.responses; + +import com.oracle.bmc.database.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class GetDatabaseSnapshotResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code DatabaseSnapshot} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot; + + /** + * The returned {@code DatabaseSnapshot} instance. + * + * @return the value + */ + public com.oracle.bmc.database.model.DatabaseSnapshot getDatabaseSnapshot() { + return databaseSnapshot; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "databaseSnapshot" + }) + private GetDatabaseSnapshotResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.databaseSnapshot = databaseSnapshot; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code DatabaseSnapshot} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot; + + /** + * The returned {@code DatabaseSnapshot} instance. + * + * @param databaseSnapshot the value to set + * @return this builder + */ + public Builder databaseSnapshot( + com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot) { + this.databaseSnapshot = databaseSnapshot; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetDatabaseSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + databaseSnapshot(o.getDatabaseSnapshot()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetDatabaseSnapshotResponse build() { + return new GetDatabaseSnapshotResponse( + __httpStatusCode__, headers, etag, opcRequestId, databaseSnapshot); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",databaseSnapshot=").append(String.valueOf(databaseSnapshot)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetDatabaseSnapshotResponse)) { + return false; + } + + GetDatabaseSnapshotResponse other = (GetDatabaseSnapshotResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.databaseSnapshot, other.databaseSnapshot); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.databaseSnapshot == null ? 43 : this.databaseSnapshot.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/responses/ListDatabaseSnapshotsResponse.java b/bmc-database/src/main/java/com/oracle/bmc/database/responses/ListDatabaseSnapshotsResponse.java new file mode 100644 index 00000000000..b5849c75538 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/responses/ListDatabaseSnapshotsResponse.java @@ -0,0 +1,239 @@ +/** + * 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.database.responses; + +import com.oracle.bmc.database.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class ListDatabaseSnapshotsResponse 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 pagination of a list of items. When paging through a list, if this header appears in the + * response, then there are additional items still to get. Include this value as the {@code + * page} parameter for the subsequent GET request. For information about pagination, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For pagination of a list of items. When paging through a list, if this header appears in the + * response, then there are additional items still to get. Include this value as the {@code + * page} parameter for the subsequent GET request. For information about pagination, 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 DatabaseSnapshotCollection} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshotCollection databaseSnapshotCollection; + + /** + * The returned {@code DatabaseSnapshotCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.database.model.DatabaseSnapshotCollection + getDatabaseSnapshotCollection() { + return databaseSnapshotCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "databaseSnapshotCollection" + }) + private ListDatabaseSnapshotsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.database.model.DatabaseSnapshotCollection databaseSnapshotCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.databaseSnapshotCollection = databaseSnapshotCollection; + } + + 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 pagination of a list of items. When paging through a list, if this header appears in + * the response, then there are additional items still to get. Include this value as the + * {@code page} parameter for the subsequent GET request. For information about pagination, + * see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For pagination of a list of items. When paging through a list, if this header appears in + * the response, then there are additional items still to get. Include this value as the + * {@code page} parameter for the subsequent GET request. For information about pagination, + * 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 DatabaseSnapshotCollection} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshotCollection databaseSnapshotCollection; + + /** + * The returned {@code DatabaseSnapshotCollection} instance. + * + * @param databaseSnapshotCollection the value to set + * @return this builder + */ + public Builder databaseSnapshotCollection( + com.oracle.bmc.database.model.DatabaseSnapshotCollection + databaseSnapshotCollection) { + this.databaseSnapshotCollection = databaseSnapshotCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListDatabaseSnapshotsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + databaseSnapshotCollection(o.getDatabaseSnapshotCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListDatabaseSnapshotsResponse build() { + return new ListDatabaseSnapshotsResponse( + __httpStatusCode__, + headers, + opcRequestId, + opcNextPage, + databaseSnapshotCollection); + } + } + + /** + * 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(",databaseSnapshotCollection=") + .append(String.valueOf(databaseSnapshotCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListDatabaseSnapshotsResponse)) { + return false; + } + + ListDatabaseSnapshotsResponse other = (ListDatabaseSnapshotsResponse) 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.databaseSnapshotCollection, other.databaseSnapshotCollection); + } + + @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.databaseSnapshotCollection == null + ? 43 + : this.databaseSnapshotCollection.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/java/com/oracle/bmc/database/responses/UpdateDatabaseSnapshotResponse.java b/bmc-database/src/main/java/com/oracle/bmc/database/responses/UpdateDatabaseSnapshotResponse.java new file mode 100644 index 00000000000..f23c9e2ad97 --- /dev/null +++ b/bmc-database/src/main/java/com/oracle/bmc/database/responses/UpdateDatabaseSnapshotResponse.java @@ -0,0 +1,212 @@ +/** + * 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.database.responses; + +import com.oracle.bmc.database.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +public class UpdateDatabaseSnapshotResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code DatabaseSnapshot} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot; + + /** + * The returned {@code DatabaseSnapshot} instance. + * + * @return the value + */ + public com.oracle.bmc.database.model.DatabaseSnapshot getDatabaseSnapshot() { + return databaseSnapshot; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "databaseSnapshot" + }) + private UpdateDatabaseSnapshotResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.databaseSnapshot = databaseSnapshot; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + UpdateDatabaseSnapshotResponse> { + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code DatabaseSnapshot} instance. */ + private com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot; + + /** + * The returned {@code DatabaseSnapshot} instance. + * + * @param databaseSnapshot the value to set + * @return this builder + */ + public Builder databaseSnapshot( + com.oracle.bmc.database.model.DatabaseSnapshot databaseSnapshot) { + this.databaseSnapshot = databaseSnapshot; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(UpdateDatabaseSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + databaseSnapshot(o.getDatabaseSnapshot()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpdateDatabaseSnapshotResponse build() { + return new UpdateDatabaseSnapshotResponse( + __httpStatusCode__, headers, etag, opcRequestId, databaseSnapshot); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",databaseSnapshot=").append(String.valueOf(databaseSnapshot)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabaseSnapshotResponse)) { + return false; + } + + UpdateDatabaseSnapshotResponse other = (UpdateDatabaseSnapshotResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.databaseSnapshot, other.databaseSnapshot); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.databaseSnapshot == null ? 43 : this.databaseSnapshot.hashCode()); + return result; + } +} diff --git a/bmc-database/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-database/reflect-config.json b/bmc-database/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-database/reflect-config.json index 2a13a8ccffd..e9640824e51 100644 --- a/bmc-database/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-database/reflect-config.json +++ b/bmc-database/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-database/reflect-config.json @@ -2830,6 +2830,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CloneDatabaseDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CloneDatabaseDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.database.model.CloudAutomationApplyUpdateTimePreference", @@ -3926,6 +3940,20 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateCloneDatabaseFromDatabase", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateCloneDatabaseFromDatabase$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.database.model.CreateCloudAutonomousVmClusterDetails", @@ -4288,6 +4316,48 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateDatabaseFromSnapshot", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateDatabaseFromSnapshot$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateDatabaseFromSnapshotDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateDatabaseFromSnapshotDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.CreateDatabaseSnapshotDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.database.model.CreateDatabaseSoftwareImageDetails", @@ -5538,6 +5608,54 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshot", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshot$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshot$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshotCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshotCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshotSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.DatabaseSnapshotSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.database.model.DatabaseSoftwareImage", @@ -11312,6 +11430,20 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.database.model.UpdateDatabaseSnapshotDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.database.model.UpdateDatabaseSoftwareImageDetails", diff --git a/bmc-databasemanagement/pom.xml b/bmc-databasemanagement/pom.xml index 206db3e375d..87d5ca31731 100644 --- a/bmc-databasemanagement/pom.xml +++ b/bmc-databasemanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-databasemanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-databasemigration/pom.xml b/bmc-databasemigration/pom.xml index 475c18ffc05..d1ea59797cd 100644 --- a/bmc-databasemigration/pom.xml +++ b/bmc-databasemigration/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-databasemigration @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-databasetools/pom.xml b/bmc-databasetools/pom.xml index 577368d0a1e..b9594a8be01 100644 --- a/bmc-databasetools/pom.xml +++ b/bmc-databasetools/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-databasetools @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-databasetoolsruntime/pom.xml b/bmc-databasetoolsruntime/pom.xml index 27e35c2ae38..5c701cdd15f 100644 --- a/bmc-databasetoolsruntime/pom.xml +++ b/bmc-databasetoolsruntime/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-databasetoolsruntime @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-datacatalog/pom.xml b/bmc-datacatalog/pom.xml index 8ec40eafe16..0e49b5a1bad 100644 --- a/bmc-datacatalog/pom.xml +++ b/bmc-datacatalog/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-datacatalog @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-datacc/pom.xml b/bmc-datacc/pom.xml index 529f3f2b8f1..49b2c62f814 100644 --- a/bmc-datacc/pom.xml +++ b/bmc-datacc/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-datacc @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dataflow/pom.xml b/bmc-dataflow/pom.xml index ce77d3bf5c2..1ec68426e9a 100644 --- a/bmc-dataflow/pom.xml +++ b/bmc-dataflow/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-dataflow @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dataintegration/pom.xml b/bmc-dataintegration/pom.xml index 59995edf03b..9bf25d7c855 100644 --- a/bmc-dataintegration/pom.xml +++ b/bmc-dataintegration/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-dataintegration @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-datalabelingservice/pom.xml b/bmc-datalabelingservice/pom.xml index e0597d5fa4a..a49453602fc 100644 --- a/bmc-datalabelingservice/pom.xml +++ b/bmc-datalabelingservice/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-datalabelingservice @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-datalabelingservicedataplane/pom.xml b/bmc-datalabelingservicedataplane/pom.xml index 994e09dec91..04584578f97 100644 --- a/bmc-datalabelingservicedataplane/pom.xml +++ b/bmc-datalabelingservicedataplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-datalabelingservicedataplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-datasafe/pom.xml b/bmc-datasafe/pom.xml index 3c756d53d4a..036f691cfc0 100644 --- a/bmc-datasafe/pom.xml +++ b/bmc-datasafe/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-datasafe @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-datascience/pom.xml b/bmc-datascience/pom.xml index e2214360ad4..02881a75250 100644 --- a/bmc-datascience/pom.xml +++ b/bmc-datascience/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-datascience @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dblm/pom.xml b/bmc-dblm/pom.xml index 32c3ec07822..01f7404a416 100644 --- a/bmc-dblm/pom.xml +++ b/bmc-dblm/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-dblm @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dbmulticloud/pom.xml b/bmc-dbmulticloud/pom.xml index 1f0eb7bb914..b53b233e712 100644 --- a/bmc-dbmulticloud/pom.xml +++ b/bmc-dbmulticloud/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-dbmulticloud @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ddfs/pom.xml b/bmc-ddfs/pom.xml index 94a24548f22..0abd2fd1f6f 100644 --- a/bmc-ddfs/pom.xml +++ b/bmc-ddfs/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ddfs @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-delegateaccesscontrol/pom.xml b/bmc-delegateaccesscontrol/pom.xml index bb0e95bcf35..748d76a1b6b 100644 --- a/bmc-delegateaccesscontrol/pom.xml +++ b/bmc-delegateaccesscontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-delegateaccesscontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-demandsignal/pom.xml b/bmc-demandsignal/pom.xml index 2bae19e1d00..4cdd29811c3 100644 --- a/bmc-demandsignal/pom.xml +++ b/bmc-demandsignal/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-demandsignal @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-desktops/pom.xml b/bmc-desktops/pom.xml index a5876c1881a..276071d61dc 100644 --- a/bmc-desktops/pom.xml +++ b/bmc-desktops/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-desktops @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-devops/pom.xml b/bmc-devops/pom.xml index 5acf74998a9..1cc2a6d5d2c 100644 --- a/bmc-devops/pom.xml +++ b/bmc-devops/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-devops @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dif/pom.xml b/bmc-dif/pom.xml index 7583aa03447..0e98a4aa277 100644 --- a/bmc-dif/pom.xml +++ b/bmc-dif/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-dif @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-disasterrecovery/pom.xml b/bmc-disasterrecovery/pom.xml index bc9b5b2c8c4..199234fbc61 100644 --- a/bmc-disasterrecovery/pom.xml +++ b/bmc-disasterrecovery/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-disasterrecovery @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/AutomaticDrPlanExecutionSubmissionStatus.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/AutomaticDrPlanExecutionSubmissionStatus.java index d6adadabaee..67e059ce305 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/AutomaticDrPlanExecutionSubmissionStatus.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/AutomaticDrPlanExecutionSubmissionStatus.java @@ -6,9 +6,10 @@ /** * The status of most recent attempt to submit Automatic DR plan execution. - - * AUTOMATIC_DR_EXECUTION_STARTED_SUCCESSFULLY - Event processed and Automatic DR execution was - * started successfully. - AUTOMATIC_DR_EXECUTION_BLOCKED_VALIDATION_FAILED - Event processed but - * Automatic DR execution submission failed due to validation error. + * AUTOMATIC_DR_EXECUTION_STARTED_SUCCESSFULLY - The Automatic DR execution was initiated + * successfully after processing the event. - AUTOMATIC_DR_EXECUTION_BLOCKED_VALIDATION_FAILED - The + * Automatic DR execution was not submitted due to a validation error that prevented successful + * processing of the event. */ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20220125") public enum AutomaticDrPlanExecutionSubmissionStatus diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMapping.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMapping.java index 6a27ae7094e..2262e7495c9 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMapping.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMapping.java @@ -28,6 +28,7 @@ public final class ComputeInstanceMovableVnicMapping "destinationSubnetId", "destinationPrimaryPrivateIpAddress", "destinationPrimaryPrivateIpHostnameLabel", + "destinationReservedPrimaryPrivateIpId", "destinationReservedPublicIpId", "destinationNsgIdList" }) @@ -36,6 +37,7 @@ public ComputeInstanceMovableVnicMapping( String destinationSubnetId, String destinationPrimaryPrivateIpAddress, String destinationPrimaryPrivateIpHostnameLabel, + String destinationReservedPrimaryPrivateIpId, String destinationReservedPublicIpId, java.util.List destinationNsgIdList) { super(); @@ -43,6 +45,7 @@ public ComputeInstanceMovableVnicMapping( this.destinationSubnetId = destinationSubnetId; this.destinationPrimaryPrivateIpAddress = destinationPrimaryPrivateIpAddress; this.destinationPrimaryPrivateIpHostnameLabel = destinationPrimaryPrivateIpHostnameLabel; + this.destinationReservedPrimaryPrivateIpId = destinationReservedPrimaryPrivateIpId; this.destinationReservedPublicIpId = destinationReservedPublicIpId; this.destinationNsgIdList = destinationNsgIdList; } @@ -92,6 +95,7 @@ public Builder destinationSubnetId(String destinationSubnetId) { return this; } /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The private IP address to be assigned as the VNIC's primary IP address in the destination * subnet. This must be a valid IP address in the destination subnet and the IP address must * be available. @@ -102,6 +106,7 @@ public Builder destinationSubnetId(String destinationSubnetId) { private String destinationPrimaryPrivateIpAddress; /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The private IP address to be assigned as the VNIC's primary IP address in the destination * subnet. This must be a valid IP address in the destination subnet and the IP address must * be available. @@ -118,6 +123,7 @@ public Builder destinationPrimaryPrivateIpAddress( return this; } /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The hostname label to be assigned in the destination subnet for the primary private IP of * the source VNIC. This label is the hostname portion of the private IP's fully qualified * domain name (FQDN) (for example, 'myhost1' in the FQDN @@ -129,6 +135,7 @@ public Builder destinationPrimaryPrivateIpAddress( private String destinationPrimaryPrivateIpHostnameLabel; /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The hostname label to be assigned in the destination subnet for the primary private IP of * the source VNIC. This label is the hostname portion of the private IP's fully qualified * domain name (FQDN) (for example, 'myhost1' in the FQDN @@ -146,6 +153,42 @@ public Builder destinationPrimaryPrivateIpHostnameLabel( this.__explicitlySet__.add("destinationPrimaryPrivateIpHostnameLabel"); return this; } + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or + * the {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("destinationReservedPrimaryPrivateIpId") + private String destinationReservedPrimaryPrivateIpId; + + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or + * the {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + * + * @param destinationReservedPrimaryPrivateIpId the value to set + * @return this builder + */ + public Builder destinationReservedPrimaryPrivateIpId( + String destinationReservedPrimaryPrivateIpId) { + this.destinationReservedPrimaryPrivateIpId = destinationReservedPrimaryPrivateIpId; + this.__explicitlySet__.add("destinationReservedPrimaryPrivateIpId"); + return this; + } /** * The OCID of the reserved public IP address to be assigned to the compute instance in the * destination region. @@ -205,6 +248,7 @@ public ComputeInstanceMovableVnicMapping build() { this.destinationSubnetId, this.destinationPrimaryPrivateIpAddress, this.destinationPrimaryPrivateIpHostnameLabel, + this.destinationReservedPrimaryPrivateIpId, this.destinationReservedPublicIpId, this.destinationNsgIdList); for (String explicitlySetProperty : this.__explicitlySet__) { @@ -229,6 +273,10 @@ public Builder copy(ComputeInstanceMovableVnicMapping model) { this.destinationPrimaryPrivateIpHostnameLabel( model.getDestinationPrimaryPrivateIpHostnameLabel()); } + if (model.wasPropertyExplicitlySet("destinationReservedPrimaryPrivateIpId")) { + this.destinationReservedPrimaryPrivateIpId( + model.getDestinationReservedPrimaryPrivateIpId()); + } if (model.wasPropertyExplicitlySet("destinationReservedPublicIpId")) { this.destinationReservedPublicIpId(model.getDestinationReservedPublicIpId()); } @@ -287,8 +335,9 @@ public String getDestinationSubnetId() { } /** - * The private IP address to be assigned as the VNIC's primary IP address in the destination - * subnet. This must be a valid IP address in the destination subnet and the IP address must be + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * private IP address to be assigned as the VNIC's primary IP address in the destination subnet. + * This must be a valid IP address in the destination subnet and the IP address must be * available. * *

Example: {@code 10.0.3.3} @@ -297,8 +346,9 @@ public String getDestinationSubnetId() { private final String destinationPrimaryPrivateIpAddress; /** - * The private IP address to be assigned as the VNIC's primary IP address in the destination - * subnet. This must be a valid IP address in the destination subnet and the IP address must be + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * private IP address to be assigned as the VNIC's primary IP address in the destination subnet. + * This must be a valid IP address in the destination subnet and the IP address must be * available. * *

Example: {@code 10.0.3.3} @@ -310,7 +360,8 @@ public String getDestinationPrimaryPrivateIpAddress() { } /** - * The hostname label to be assigned in the destination subnet for the primary private IP of the + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * hostname label to be assigned in the destination subnet for the primary private IP of the * source VNIC. This label is the hostname portion of the private IP's fully qualified domain * name (FQDN) (for example, 'myhost1' in the FQDN 'myhost1.subnet123.vcn1.oraclevcn.com'). * @@ -320,7 +371,8 @@ public String getDestinationPrimaryPrivateIpAddress() { private final String destinationPrimaryPrivateIpHostnameLabel; /** - * The hostname label to be assigned in the destination subnet for the primary private IP of the + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * hostname label to be assigned in the destination subnet for the primary private IP of the * source VNIC. This label is the hostname portion of the private IP's fully qualified domain * name (FQDN) (for example, 'myhost1' in the FQDN 'myhost1.subnet123.vcn1.oraclevcn.com'). * @@ -332,6 +384,39 @@ public String getDestinationPrimaryPrivateIpHostnameLabel() { return destinationPrimaryPrivateIpHostnameLabel; } + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or the + * {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("destinationReservedPrimaryPrivateIpId") + private final String destinationReservedPrimaryPrivateIpId; + + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or the + * {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + * + * @return the value + */ + public String getDestinationReservedPrimaryPrivateIpId() { + return destinationReservedPrimaryPrivateIpId; + } + /** * The OCID of the reserved public IP address to be assigned to the compute instance in the * destination region. @@ -397,6 +482,8 @@ public String toString(boolean includeByteArrayContents) { .append(String.valueOf(this.destinationPrimaryPrivateIpAddress)); sb.append(", destinationPrimaryPrivateIpHostnameLabel=") .append(String.valueOf(this.destinationPrimaryPrivateIpHostnameLabel)); + sb.append(", destinationReservedPrimaryPrivateIpId=") + .append(String.valueOf(this.destinationReservedPrimaryPrivateIpId)); sb.append(", destinationReservedPublicIpId=") .append(String.valueOf(this.destinationReservedPublicIpId)); sb.append(", destinationNsgIdList=").append(String.valueOf(this.destinationNsgIdList)); @@ -422,6 +509,9 @@ public boolean equals(Object o) { && java.util.Objects.equals( this.destinationPrimaryPrivateIpHostnameLabel, other.destinationPrimaryPrivateIpHostnameLabel) + && java.util.Objects.equals( + this.destinationReservedPrimaryPrivateIpId, + other.destinationReservedPrimaryPrivateIpId) && java.util.Objects.equals( this.destinationReservedPublicIpId, other.destinationReservedPublicIpId) && java.util.Objects.equals(this.destinationNsgIdList, other.destinationNsgIdList) @@ -448,6 +538,11 @@ public int hashCode() { + (this.destinationPrimaryPrivateIpHostnameLabel == null ? 43 : this.destinationPrimaryPrivateIpHostnameLabel.hashCode()); + result = + (result * PRIME) + + (this.destinationReservedPrimaryPrivateIpId == null + ? 43 + : this.destinationReservedPrimaryPrivateIpId.hashCode()); result = (result * PRIME) + (this.destinationReservedPublicIpId == null diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMappingDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMappingDetails.java index 8b0f295bebe..0979fd12916 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMappingDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/ComputeInstanceMovableVnicMappingDetails.java @@ -28,6 +28,7 @@ public final class ComputeInstanceMovableVnicMappingDetails "destinationSubnetId", "destinationPrimaryPrivateIpAddress", "destinationPrimaryPrivateIpHostnameLabel", + "destinationReservedPrimaryPrivateIpId", "destinationReservedPublicIpId", "destinationNsgIdList" }) @@ -36,6 +37,7 @@ public ComputeInstanceMovableVnicMappingDetails( String destinationSubnetId, String destinationPrimaryPrivateIpAddress, String destinationPrimaryPrivateIpHostnameLabel, + String destinationReservedPrimaryPrivateIpId, String destinationReservedPublicIpId, java.util.List destinationNsgIdList) { super(); @@ -43,6 +45,7 @@ public ComputeInstanceMovableVnicMappingDetails( this.destinationSubnetId = destinationSubnetId; this.destinationPrimaryPrivateIpAddress = destinationPrimaryPrivateIpAddress; this.destinationPrimaryPrivateIpHostnameLabel = destinationPrimaryPrivateIpHostnameLabel; + this.destinationReservedPrimaryPrivateIpId = destinationReservedPrimaryPrivateIpId; this.destinationReservedPublicIpId = destinationReservedPublicIpId; this.destinationNsgIdList = destinationNsgIdList; } @@ -92,6 +95,7 @@ public Builder destinationSubnetId(String destinationSubnetId) { return this; } /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The primary private IP address to be assigned to the source VNIC in the destination * subnet. This IP address must belong to the destination subnet. * @@ -101,6 +105,7 @@ public Builder destinationSubnetId(String destinationSubnetId) { private String destinationPrimaryPrivateIpAddress; /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The primary private IP address to be assigned to the source VNIC in the destination * subnet. This IP address must belong to the destination subnet. * @@ -116,6 +121,7 @@ public Builder destinationPrimaryPrivateIpAddress( return this; } /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The hostname label to be assigned in the destination subnet for the primary private IP of * the source VNIC. This label is the hostname portion of the private IP's fully qualified * domain name (FQDN) (for example, 'myhost1' in the FQDN @@ -127,6 +133,7 @@ public Builder destinationPrimaryPrivateIpAddress( private String destinationPrimaryPrivateIpHostnameLabel; /** + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. * The hostname label to be assigned in the destination subnet for the primary private IP of * the source VNIC. This label is the hostname portion of the private IP's fully qualified * domain name (FQDN) (for example, 'myhost1' in the FQDN @@ -144,6 +151,42 @@ public Builder destinationPrimaryPrivateIpHostnameLabel( this.__explicitlySet__.add("destinationPrimaryPrivateIpHostnameLabel"); return this; } + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or + * the {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("destinationReservedPrimaryPrivateIpId") + private String destinationReservedPrimaryPrivateIpId; + + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or + * the {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + * + * @param destinationReservedPrimaryPrivateIpId the value to set + * @return this builder + */ + public Builder destinationReservedPrimaryPrivateIpId( + String destinationReservedPrimaryPrivateIpId) { + this.destinationReservedPrimaryPrivateIpId = destinationReservedPrimaryPrivateIpId; + this.__explicitlySet__.add("destinationReservedPrimaryPrivateIpId"); + return this; + } /** * The OCID of the reserved public IP address to be assigned to the compute instance in the * destination region. @@ -203,6 +246,7 @@ public ComputeInstanceMovableVnicMappingDetails build() { this.destinationSubnetId, this.destinationPrimaryPrivateIpAddress, this.destinationPrimaryPrivateIpHostnameLabel, + this.destinationReservedPrimaryPrivateIpId, this.destinationReservedPublicIpId, this.destinationNsgIdList); for (String explicitlySetProperty : this.__explicitlySet__) { @@ -227,6 +271,10 @@ public Builder copy(ComputeInstanceMovableVnicMappingDetails model) { this.destinationPrimaryPrivateIpHostnameLabel( model.getDestinationPrimaryPrivateIpHostnameLabel()); } + if (model.wasPropertyExplicitlySet("destinationReservedPrimaryPrivateIpId")) { + this.destinationReservedPrimaryPrivateIpId( + model.getDestinationReservedPrimaryPrivateIpId()); + } if (model.wasPropertyExplicitlySet("destinationReservedPublicIpId")) { this.destinationReservedPublicIpId(model.getDestinationReservedPublicIpId()); } @@ -285,8 +333,9 @@ public String getDestinationSubnetId() { } /** - * The primary private IP address to be assigned to the source VNIC in the destination subnet. - * This IP address must belong to the destination subnet. + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * primary private IP address to be assigned to the source VNIC in the destination subnet. This + * IP address must belong to the destination subnet. * *

Example: {@code 10.0.3.3} */ @@ -294,8 +343,9 @@ public String getDestinationSubnetId() { private final String destinationPrimaryPrivateIpAddress; /** - * The primary private IP address to be assigned to the source VNIC in the destination subnet. - * This IP address must belong to the destination subnet. + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * primary private IP address to be assigned to the source VNIC in the destination subnet. This + * IP address must belong to the destination subnet. * *

Example: {@code 10.0.3.3} * @@ -306,7 +356,8 @@ public String getDestinationPrimaryPrivateIpAddress() { } /** - * The hostname label to be assigned in the destination subnet for the primary private IP of the + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * hostname label to be assigned in the destination subnet for the primary private IP of the * source VNIC. This label is the hostname portion of the private IP's fully qualified domain * name (FQDN) (for example, 'myhost1' in the FQDN 'myhost1.subnet123.vcn1.oraclevcn.com'). * @@ -316,7 +367,8 @@ public String getDestinationPrimaryPrivateIpAddress() { private final String destinationPrimaryPrivateIpHostnameLabel; /** - * The hostname label to be assigned in the destination subnet for the primary private IP of the + * Deprecated. Use the 'destinationReservedPrimaryPrivateIpId' attribute instead of this. The + * hostname label to be assigned in the destination subnet for the primary private IP of the * source VNIC. This label is the hostname portion of the private IP's fully qualified domain * name (FQDN) (for example, 'myhost1' in the FQDN 'myhost1.subnet123.vcn1.oraclevcn.com'). * @@ -328,6 +380,39 @@ public String getDestinationPrimaryPrivateIpHostnameLabel() { return destinationPrimaryPrivateIpHostnameLabel; } + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or the + * {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("destinationReservedPrimaryPrivateIpId") + private final String destinationReservedPrimaryPrivateIpId; + + /** + * The OCID of the reserved private IP (IPv4) to be assigned to the compute instance in the + * destination region. Do not specify this attribute together with {@code + * destinationPrimaryPrivateIpAddress}, {@code destinationPrimaryPrivateIpHostnameLabel}, or the + * {@code FsdrDestinationReservedPrimaryPrivateIpId} freeform tag on the source VNIC. + * + *

For legacy compatibility, omit this attribute and use either the legacy explicit + * private-IP fields or the freeform tag, but not both configuration mechanisms for the same + * source VNIC. + * + *

Example: {@code ocid1.privateip.oc1..uniqueID} + * + * @return the value + */ + public String getDestinationReservedPrimaryPrivateIpId() { + return destinationReservedPrimaryPrivateIpId; + } + /** * The OCID of the reserved public IP address to be assigned to the compute instance in the * destination region. @@ -393,6 +478,8 @@ public String toString(boolean includeByteArrayContents) { .append(String.valueOf(this.destinationPrimaryPrivateIpAddress)); sb.append(", destinationPrimaryPrivateIpHostnameLabel=") .append(String.valueOf(this.destinationPrimaryPrivateIpHostnameLabel)); + sb.append(", destinationReservedPrimaryPrivateIpId=") + .append(String.valueOf(this.destinationReservedPrimaryPrivateIpId)); sb.append(", destinationReservedPublicIpId=") .append(String.valueOf(this.destinationReservedPublicIpId)); sb.append(", destinationNsgIdList=").append(String.valueOf(this.destinationNsgIdList)); @@ -419,6 +506,9 @@ public boolean equals(Object o) { && java.util.Objects.equals( this.destinationPrimaryPrivateIpHostnameLabel, other.destinationPrimaryPrivateIpHostnameLabel) + && java.util.Objects.equals( + this.destinationReservedPrimaryPrivateIpId, + other.destinationReservedPrimaryPrivateIpId) && java.util.Objects.equals( this.destinationReservedPublicIpId, other.destinationReservedPublicIpId) && java.util.Objects.equals(this.destinationNsgIdList, other.destinationNsgIdList) @@ -445,6 +535,11 @@ public int hashCode() { + (this.destinationPrimaryPrivateIpHostnameLabel == null ? 43 : this.destinationPrimaryPrivateIpHostnameLabel.hashCode()); + result = + (result * PRIME) + + (this.destinationReservedPrimaryPrivateIpId == null + ? 43 + : this.destinationReservedPrimaryPrivateIpId.hashCode()); result = (result * PRIME) + (this.destinationReservedPublicIpId == null diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.java new file mode 100644 index 00000000000..6563b68331f --- /dev/null +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.java @@ -0,0 +1,141 @@ +/** + * 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.disasterrecovery.model; + +/** + * Create properties for DR drill-specific settings. Use these when the properties for DR drills + * differ from the properties used for DR operations such as switchover and failover.
+ * 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: 20220125") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"vnicMappings"}) + public CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails( + java.util.List vnicMappings) { + super(); + this.vnicMappings = vnicMappings; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A list of compute instance VNIC mappings to use for DR drills. */ + @com.fasterxml.jackson.annotation.JsonProperty("vnicMappings") + private java.util.List vnicMappings; + + /** + * A list of compute instance VNIC mappings to use for DR drills. + * + * @param vnicMappings the value to set + * @return this builder + */ + public Builder vnicMappings( + java.util.List vnicMappings) { + this.vnicMappings = vnicMappings; + this.__explicitlySet__.add("vnicMappings"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails build() { + CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails model = + new CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails( + this.vnicMappings); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails model) { + if (model.wasPropertyExplicitlySet("vnicMappings")) { + this.vnicMappings(model.getVnicMappings()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** A list of compute instance VNIC mappings to use for DR drills. */ + @com.fasterxml.jackson.annotation.JsonProperty("vnicMappings") + private final java.util.List vnicMappings; + + /** + * A list of compute instance VNIC mappings to use for DR drills. + * + * @return the value + */ + public java.util.List getVnicMappings() { + return vnicMappings; + } + + @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("CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails("); + sb.append("super=").append(super.toString()); + sb.append("vnicMappings=").append(String.valueOf(this.vnicMappings)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails)) { + return false; + } + + CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails other = + (CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails) o; + return java.util.Objects.equals(this.vnicMappings, other.vnicMappings) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.vnicMappings == null ? 43 : this.vnicMappings.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceMovableDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceMovableDetails.java index 25ea4e04a03..a39b889f95d 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceMovableDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberComputeInstanceMovableDetails.java @@ -36,6 +36,18 @@ public Builder memberId(String memberId) { this.__explicitlySet__.add("memberId"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("drDrillProperties") + private CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + drDrillProperties; + + public Builder drDrillProperties( + CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + drDrillProperties) { + this.drDrillProperties = drDrillProperties; + this.__explicitlySet__.add("drDrillProperties"); + return this; + } /** * A flag indicating if the compute instance should be moved to the same fault domain in the * destination region. The compute instance launch will fail if this flag is set to true and @@ -172,6 +184,7 @@ public CreateDrProtectionGroupMemberComputeInstanceMovableDetails build() { CreateDrProtectionGroupMemberComputeInstanceMovableDetails model = new CreateDrProtectionGroupMemberComputeInstanceMovableDetails( this.memberId, + this.drDrillProperties, this.isRetainFaultDomain, this.destinationCapacityReservationId, this.vnicMappings, @@ -189,6 +202,9 @@ public Builder copy(CreateDrProtectionGroupMemberComputeInstanceMovableDetails m if (model.wasPropertyExplicitlySet("memberId")) { this.memberId(model.getMemberId()); } + if (model.wasPropertyExplicitlySet("drDrillProperties")) { + this.drDrillProperties(model.getDrDrillProperties()); + } if (model.wasPropertyExplicitlySet("isRetainFaultDomain")) { this.isRetainFaultDomain(model.getIsRetainFaultDomain()); } @@ -223,6 +239,7 @@ public Builder toBuilder() { @Deprecated public CreateDrProtectionGroupMemberComputeInstanceMovableDetails( String memberId, + CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails drDrillProperties, Boolean isRetainFaultDomain, String destinationCapacityReservationId, java.util.List vnicMappings, @@ -231,6 +248,7 @@ public CreateDrProtectionGroupMemberComputeInstanceMovableDetails( java.util.List fileSystemOperations) { super(memberId); + this.drDrillProperties = drDrillProperties; this.isRetainFaultDomain = isRetainFaultDomain; this.destinationCapacityReservationId = destinationCapacityReservationId; this.vnicMappings = vnicMappings; @@ -239,6 +257,15 @@ public CreateDrProtectionGroupMemberComputeInstanceMovableDetails( this.fileSystemOperations = fileSystemOperations; } + @com.fasterxml.jackson.annotation.JsonProperty("drDrillProperties") + private final CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + drDrillProperties; + + public CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + getDrDrillProperties() { + return drDrillProperties; + } + /** * A flag indicating if the compute instance should be moved to the same fault domain in the * destination region. The compute instance launch will fail if this flag is set to true and @@ -368,6 +395,7 @@ public String toString(boolean includeByteArrayContents) { java.lang.StringBuilder sb = new java.lang.StringBuilder(); sb.append("CreateDrProtectionGroupMemberComputeInstanceMovableDetails("); sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", drDrillProperties=").append(String.valueOf(this.drDrillProperties)); sb.append(", isRetainFaultDomain=").append(String.valueOf(this.isRetainFaultDomain)); sb.append(", destinationCapacityReservationId=") .append(String.valueOf(this.destinationCapacityReservationId)); @@ -392,7 +420,8 @@ public boolean equals(Object o) { CreateDrProtectionGroupMemberComputeInstanceMovableDetails other = (CreateDrProtectionGroupMemberComputeInstanceMovableDetails) o; - return java.util.Objects.equals(this.isRetainFaultDomain, other.isRetainFaultDomain) + return java.util.Objects.equals(this.drDrillProperties, other.drDrillProperties) + && java.util.Objects.equals(this.isRetainFaultDomain, other.isRetainFaultDomain) && java.util.Objects.equals( this.destinationCapacityReservationId, other.destinationCapacityReservationId) @@ -409,6 +438,9 @@ public boolean equals(Object o) { public int hashCode() { final int PRIME = 59; int result = super.hashCode(); + result = + (result * PRIME) + + (this.drDrillProperties == null ? 43 : this.drDrillProperties.hashCode()); result = (result * PRIME) + (this.isRetainFaultDomain == null diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberDetails.java index fd5897c8972..8ca7b37ff10 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberDetails.java @@ -63,7 +63,10 @@ name = "VOLUME_GROUP"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateDrProtectionGroupMemberOkeClusterDetails.class, - name = "OKE_CLUSTER") + name = "OKE_CLUSTER"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDrProtectionGroupMemberPostgresqlDbSystemDetails.class, + name = "POSTGRESQL_DB_SYSTEM") }) @com.fasterxml.jackson.annotation.JsonFilter( com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberPostgresqlDbSystemDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberPostgresqlDbSystemDetails.java new file mode 100644 index 00000000000..9bd094474d3 --- /dev/null +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateDrProtectionGroupMemberPostgresqlDbSystemDetails.java @@ -0,0 +1,165 @@ +/** + * 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.disasterrecovery.model; + +/** + * Create properties for an OCI Database with PostgreSQL member.
+ * 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: 20220125") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDrProtectionGroupMemberPostgresqlDbSystemDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "memberType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDrProtectionGroupMemberPostgresqlDbSystemDetails + extends CreateDrProtectionGroupMemberDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("memberId") + private String memberId; + + public Builder memberId(String memberId) { + this.memberId = memberId; + this.__explicitlySet__.add("memberId"); + return this; + } + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("peerDbSystemId") + private String peerDbSystemId; + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + * + * @param peerDbSystemId the value to set + * @return this builder + */ + public Builder peerDbSystemId(String peerDbSystemId) { + this.peerDbSystemId = peerDbSystemId; + this.__explicitlySet__.add("peerDbSystemId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDrProtectionGroupMemberPostgresqlDbSystemDetails build() { + CreateDrProtectionGroupMemberPostgresqlDbSystemDetails model = + new CreateDrProtectionGroupMemberPostgresqlDbSystemDetails( + this.memberId, this.peerDbSystemId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDrProtectionGroupMemberPostgresqlDbSystemDetails model) { + if (model.wasPropertyExplicitlySet("memberId")) { + this.memberId(model.getMemberId()); + } + if (model.wasPropertyExplicitlySet("peerDbSystemId")) { + this.peerDbSystemId(model.getPeerDbSystemId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDrProtectionGroupMemberPostgresqlDbSystemDetails( + String memberId, String peerDbSystemId) { + super(memberId); + this.peerDbSystemId = peerDbSystemId; + } + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("peerDbSystemId") + private final String peerDbSystemId; + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + * + * @return the value + */ + public String getPeerDbSystemId() { + return peerDbSystemId; + } + + @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("CreateDrProtectionGroupMemberPostgresqlDbSystemDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", peerDbSystemId=").append(String.valueOf(this.peerDbSystemId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDrProtectionGroupMemberPostgresqlDbSystemDetails)) { + return false; + } + + CreateDrProtectionGroupMemberPostgresqlDbSystemDetails other = + (CreateDrProtectionGroupMemberPostgresqlDbSystemDetails) o; + return java.util.Objects.equals(this.peerDbSystemId, other.peerDbSystemId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.peerDbSystemId == null ? 43 : this.peerDbSystemId.hashCode()); + return result; + } +} diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterBackupConfigDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterBackupConfigDetails.java index d50c29e1fbc..2f4042f4819 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterBackupConfigDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterBackupConfigDetails.java @@ -165,17 +165,19 @@ public Builder backupSchedule(String backupSchedule) { return this; } /** - * Controls the behaviour of image replication across regions. Image replication is enabled - * by default for DR Protection Groups with a primary role. This property applies to the OKE - * cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled + * by default for DR Protection Groups. This setting applies to the OKE cluster member in + * the primary region, and to the standby region only if the image replication secret is + * stored in a vault instead of using the default secret. */ @com.fasterxml.jackson.annotation.JsonProperty("replicateImages") private OkeClusterImageReplication replicateImages; /** - * Controls the behaviour of image replication across regions. Image replication is enabled - * by default for DR Protection Groups with a primary role. This property applies to the OKE - * cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled + * by default for DR Protection Groups. This setting applies to the OKE cluster member in + * the primary region, and to the standby region only if the image replication secret is + * stored in a vault instead of using the default secret. * * @param replicateImages the value to set * @return this builder @@ -385,17 +387,19 @@ public String getBackupSchedule() { } /** - * Controls the behaviour of image replication across regions. Image replication is enabled by - * default for DR Protection Groups with a primary role. This property applies to the OKE - * cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled by + * default for DR Protection Groups. This setting applies to the OKE cluster member in the + * primary region, and to the standby region only if the image replication secret is stored in a + * vault instead of using the default secret. */ @com.fasterxml.jackson.annotation.JsonProperty("replicateImages") private final OkeClusterImageReplication replicateImages; /** - * Controls the behaviour of image replication across regions. Image replication is enabled by - * default for DR Protection Groups with a primary role. This property applies to the OKE - * cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled by + * default for DR Protection Groups. This setting applies to the OKE cluster member in the + * primary region, and to the standby region only if the image replication secret is stored in a + * vault instead of using the default secret. * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterResourceModifierMappingDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterResourceModifierMappingDetails.java index feb8cdfb579..e19ff20f072 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterResourceModifierMappingDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/CreateOkeClusterResourceModifierMappingDetails.java @@ -32,12 +32,18 @@ public CreateOkeClusterResourceModifierMappingDetails(String namespace, String c @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** The OKE namespace where the config map resides. Example: {@code namespace_string_5} */ + /** + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} + */ @com.fasterxml.jackson.annotation.JsonProperty("namespace") private String namespace; /** - * The OKE namespace where the config map resides. Example: {@code namespace_string_5} + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} * * @param namespace the value to set * @return this builder @@ -48,15 +54,17 @@ public Builder namespace(String namespace) { return this; } /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} */ @com.fasterxml.jackson.annotation.JsonProperty("configMap") private String configMap; /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} * * @param configMap the value to set * @return this builder @@ -101,12 +109,18 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** The OKE namespace where the config map resides. Example: {@code namespace_string_5} */ + /** + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} + */ @com.fasterxml.jackson.annotation.JsonProperty("namespace") private final String namespace; /** - * The OKE namespace where the config map resides. Example: {@code namespace_string_5} + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} * * @return the value */ @@ -115,15 +129,17 @@ public String getNamespace() { } /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} */ @com.fasterxml.jackson.annotation.JsonProperty("configMap") private final String configMap; /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrPlanStepType.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrPlanStepType.java index ed1cedb7223..15e334d64b9 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrPlanStepType.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrPlanStepType.java @@ -170,8 +170,13 @@ * MySQL DB System start drill. - MYSQL_DB_SYSTEM_START_DRILL - A DR plan step to perform a HeatWave * MySQL DB System start drill. - MYSQL_DB_SYSTEM_STOP_DRILL_PRECHECK - A precheck step for * validating HeatWave MySQL DB System stop drill. - MYSQL_DB_SYSTEM_STOP_DRILL - A DR plan step to - * perform a HeatWave MySQL DB System stop drill. - INTEGRATION_INSTANCE_SWITCHOVER_PRECHECK - A - * precheck step for validating an integration instance (OIC) for switchover. - + * perform a HeatWave MySQL DB System stop drill. - POSTGRESQL_DB_SYSTEM_SWITCHOVER_PRECHECK - A + * precheck step for validating OCI Database with PostgreSQL switchover. - + * POSTGRESQL_DB_SYSTEM_SWITCHOVER - A DR plan step to perform an OCI Database with PostgreSQL + * switchover. - POSTGRESQL_DB_SYSTEM_FAILOVER_PRECHECK - A precheck step for validating OCI + * Database with PostgreSQL failover. - POSTGRESQL_DB_SYSTEM_FAILOVER - A DR plan step to perform an + * OCI Database with PostgreSQL failover. - INTEGRATION_INSTANCE_SWITCHOVER_PRECHECK - A precheck + * step for validating an integration instance (OIC) for switchover. - * INTEGRATION_INSTANCE_SWITCHOVER - A DR plan step to perform a switchover operation for an * integration instance (OIC). - INTEGRATION_INSTANCE_FAILOVER_PRECHECK -A precheck step for * validating an integration instance (OIC) for failover. - INTEGRATION_INSTANCE_FAILOVER - A DR @@ -330,6 +335,10 @@ public enum DrPlanStepType implements com.oracle.bmc.http.internal.BmcEnum { MysqlDbSystemStartDrill("MYSQL_DB_SYSTEM_START_DRILL"), MysqlDbSystemStopDrillPrecheck("MYSQL_DB_SYSTEM_STOP_DRILL_PRECHECK"), MysqlDbSystemStopDrill("MYSQL_DB_SYSTEM_STOP_DRILL"), + PostgresqlDbSystemSwitchoverPrecheck("POSTGRESQL_DB_SYSTEM_SWITCHOVER_PRECHECK"), + PostgresqlDbSystemSwitchover("POSTGRESQL_DB_SYSTEM_SWITCHOVER"), + PostgresqlDbSystemFailoverPrecheck("POSTGRESQL_DB_SYSTEM_FAILOVER_PRECHECK"), + PostgresqlDbSystemFailover("POSTGRESQL_DB_SYSTEM_FAILOVER"), IntegrationInstanceSwitchoverPrecheck("INTEGRATION_INSTANCE_SWITCHOVER_PRECHECK"), IntegrationInstanceSwitchover("INTEGRATION_INSTANCE_SWITCHOVER"), IntegrationInstanceFailoverPrecheck("INTEGRATION_INSTANCE_FAILOVER_PRECHECK"), diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMember.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMember.java index e4544eb02e8..b7032eb152e 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMember.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMember.java @@ -52,6 +52,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = DrProtectionGroupMemberIntegrationInstance.class, name = "INTEGRATION_INSTANCE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DrProtectionGroupMemberPostgresqlDbSystem.class, + name = "POSTGRESQL_DB_SYSTEM"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = DrProtectionGroupMemberComputeInstanceMovable.class, name = "COMPUTE_INSTANCE_MOVABLE"), diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceDrillProperties.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceDrillProperties.java new file mode 100644 index 00000000000..b47457ef263 --- /dev/null +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceDrillProperties.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.disasterrecovery.model; + +/** + * DR drill-specific properties for a movable compute instance member.
+ * 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: 20220125") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DrProtectionGroupMemberComputeInstanceDrillProperties.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DrProtectionGroupMemberComputeInstanceDrillProperties + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"vnicMappings"}) + public DrProtectionGroupMemberComputeInstanceDrillProperties( + java.util.List vnicMappings) { + super(); + this.vnicMappings = vnicMappings; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A list of compute instance VNIC mappings used for DR drills. */ + @com.fasterxml.jackson.annotation.JsonProperty("vnicMappings") + private java.util.List vnicMappings; + + /** + * A list of compute instance VNIC mappings used for DR drills. + * + * @param vnicMappings the value to set + * @return this builder + */ + public Builder vnicMappings( + java.util.List vnicMappings) { + this.vnicMappings = vnicMappings; + this.__explicitlySet__.add("vnicMappings"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DrProtectionGroupMemberComputeInstanceDrillProperties build() { + DrProtectionGroupMemberComputeInstanceDrillProperties model = + new DrProtectionGroupMemberComputeInstanceDrillProperties(this.vnicMappings); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DrProtectionGroupMemberComputeInstanceDrillProperties model) { + if (model.wasPropertyExplicitlySet("vnicMappings")) { + this.vnicMappings(model.getVnicMappings()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** A list of compute instance VNIC mappings used for DR drills. */ + @com.fasterxml.jackson.annotation.JsonProperty("vnicMappings") + private final java.util.List vnicMappings; + + /** + * A list of compute instance VNIC mappings used for DR drills. + * + * @return the value + */ + public java.util.List getVnicMappings() { + return vnicMappings; + } + + @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("DrProtectionGroupMemberComputeInstanceDrillProperties("); + sb.append("super=").append(super.toString()); + sb.append("vnicMappings=").append(String.valueOf(this.vnicMappings)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DrProtectionGroupMemberComputeInstanceDrillProperties)) { + return false; + } + + DrProtectionGroupMemberComputeInstanceDrillProperties other = + (DrProtectionGroupMemberComputeInstanceDrillProperties) o; + return java.util.Objects.equals(this.vnicMappings, other.vnicMappings) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.vnicMappings == null ? 43 : this.vnicMappings.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceMovable.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceMovable.java index 90a172927ff..e44ab1462c5 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceMovable.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberComputeInstanceMovable.java @@ -99,6 +99,16 @@ public Builder vnicMappings( this.__explicitlySet__.add("vnicMappings"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("drDrillProperties") + private DrProtectionGroupMemberComputeInstanceDrillProperties drDrillProperties; + + public Builder drDrillProperties( + DrProtectionGroupMemberComputeInstanceDrillProperties drDrillProperties) { + this.drDrillProperties = drDrillProperties; + this.__explicitlySet__.add("drDrillProperties"); + return this; + } /** * The OCID of a compartment in the destination region in which the compute instance should * be launched. @@ -172,6 +182,7 @@ public DrProtectionGroupMemberComputeInstanceMovable build() { this.isRetainFaultDomain, this.destinationCapacityReservationId, this.vnicMappings, + this.drDrillProperties, this.destinationCompartmentId, this.destinationDedicatedVmHostId, this.fileSystemOperations); @@ -195,6 +206,9 @@ public Builder copy(DrProtectionGroupMemberComputeInstanceMovable model) { if (model.wasPropertyExplicitlySet("vnicMappings")) { this.vnicMappings(model.getVnicMappings()); } + if (model.wasPropertyExplicitlySet("drDrillProperties")) { + this.drDrillProperties(model.getDrDrillProperties()); + } if (model.wasPropertyExplicitlySet("destinationCompartmentId")) { this.destinationCompartmentId(model.getDestinationCompartmentId()); } @@ -223,6 +237,7 @@ public DrProtectionGroupMemberComputeInstanceMovable( Boolean isRetainFaultDomain, String destinationCapacityReservationId, java.util.List vnicMappings, + DrProtectionGroupMemberComputeInstanceDrillProperties drDrillProperties, String destinationCompartmentId, String destinationDedicatedVmHostId, java.util.List fileSystemOperations) { @@ -230,6 +245,7 @@ public DrProtectionGroupMemberComputeInstanceMovable( this.isRetainFaultDomain = isRetainFaultDomain; this.destinationCapacityReservationId = destinationCapacityReservationId; this.vnicMappings = vnicMappings; + this.drDrillProperties = drDrillProperties; this.destinationCompartmentId = destinationCompartmentId; this.destinationDedicatedVmHostId = destinationDedicatedVmHostId; this.fileSystemOperations = fileSystemOperations; @@ -292,6 +308,13 @@ public java.util.List getVnicMappings() { return vnicMappings; } + @com.fasterxml.jackson.annotation.JsonProperty("drDrillProperties") + private final DrProtectionGroupMemberComputeInstanceDrillProperties drDrillProperties; + + public DrProtectionGroupMemberComputeInstanceDrillProperties getDrDrillProperties() { + return drDrillProperties; + } + /** * The OCID of a compartment in the destination region in which the compute instance should be * launched. @@ -366,6 +389,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", destinationCapacityReservationId=") .append(String.valueOf(this.destinationCapacityReservationId)); sb.append(", vnicMappings=").append(String.valueOf(this.vnicMappings)); + sb.append(", drDrillProperties=").append(String.valueOf(this.drDrillProperties)); sb.append(", destinationCompartmentId=") .append(String.valueOf(this.destinationCompartmentId)); sb.append(", destinationDedicatedVmHostId=") @@ -391,6 +415,7 @@ public boolean equals(Object o) { this.destinationCapacityReservationId, other.destinationCapacityReservationId) && java.util.Objects.equals(this.vnicMappings, other.vnicMappings) + && java.util.Objects.equals(this.drDrillProperties, other.drDrillProperties) && java.util.Objects.equals( this.destinationCompartmentId, other.destinationCompartmentId) && java.util.Objects.equals( @@ -414,6 +439,9 @@ public int hashCode() { ? 43 : this.destinationCapacityReservationId.hashCode()); result = (result * PRIME) + (this.vnicMappings == null ? 43 : this.vnicMappings.hashCode()); + result = + (result * PRIME) + + (this.drDrillProperties == null ? 43 : this.drDrillProperties.hashCode()); result = (result * PRIME) + (this.destinationCompartmentId == null diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberPostgresqlDbSystem.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberPostgresqlDbSystem.java new file mode 100644 index 00000000000..18496b88f2a --- /dev/null +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberPostgresqlDbSystem.java @@ -0,0 +1,163 @@ +/** + * 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.disasterrecovery.model; + +/** + * The properties for an OCI Database with PostgreSQL member of a DR protection group.
+ * 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: 20220125") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DrProtectionGroupMemberPostgresqlDbSystem.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "memberType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DrProtectionGroupMemberPostgresqlDbSystem extends DrProtectionGroupMember { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("memberId") + private String memberId; + + public Builder memberId(String memberId) { + this.memberId = memberId; + this.__explicitlySet__.add("memberId"); + return this; + } + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("peerDbSystemId") + private String peerDbSystemId; + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + * + * @param peerDbSystemId the value to set + * @return this builder + */ + public Builder peerDbSystemId(String peerDbSystemId) { + this.peerDbSystemId = peerDbSystemId; + this.__explicitlySet__.add("peerDbSystemId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DrProtectionGroupMemberPostgresqlDbSystem build() { + DrProtectionGroupMemberPostgresqlDbSystem model = + new DrProtectionGroupMemberPostgresqlDbSystem( + this.memberId, this.peerDbSystemId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DrProtectionGroupMemberPostgresqlDbSystem model) { + if (model.wasPropertyExplicitlySet("memberId")) { + this.memberId(model.getMemberId()); + } + if (model.wasPropertyExplicitlySet("peerDbSystemId")) { + this.peerDbSystemId(model.getPeerDbSystemId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DrProtectionGroupMemberPostgresqlDbSystem(String memberId, String peerDbSystemId) { + super(memberId); + this.peerDbSystemId = peerDbSystemId; + } + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("peerDbSystemId") + private final String peerDbSystemId; + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + * + * @return the value + */ + public String getPeerDbSystemId() { + return peerDbSystemId; + } + + @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("DrProtectionGroupMemberPostgresqlDbSystem("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", peerDbSystemId=").append(String.valueOf(this.peerDbSystemId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DrProtectionGroupMemberPostgresqlDbSystem)) { + return false; + } + + DrProtectionGroupMemberPostgresqlDbSystem other = + (DrProtectionGroupMemberPostgresqlDbSystem) o; + return java.util.Objects.equals(this.peerDbSystemId, other.peerDbSystemId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.peerDbSystemId == null ? 43 : this.peerDbSystemId.hashCode()); + return result; + } +} diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberType.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberType.java index de5d830e956..ff992a216c8 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberType.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/DrProtectionGroupMemberType.java @@ -14,8 +14,8 @@ * Serverless. - AUTONOMOUS_CONTAINER_DATABASE - An Oracle Autonomous Container Database. - * OKE_CLUSTER - OCI Container Engine for Kubernetes(OKE) cluster. - LOAD_BALANCER - A load * balancer. - NETWORK_LOAD_BALANCER - A network load balancer. - FILE_SYSTEM - A file system. - - * MYSQL_DB_SYSTEM - A HeatWave MySQL DB system. - INTEGRATION_INSTANCE - An integration instance - * (OIC). + * MYSQL_DB_SYSTEM - A HeatWave MySQL DB system. - POSTGRESQL_DB_SYSTEM - OCI Database with + * PostgreSQL. - INTEGRATION_INSTANCE - An integration instance (OIC). */ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20220125") public enum DrProtectionGroupMemberType implements com.oracle.bmc.http.internal.BmcEnum { @@ -32,6 +32,7 @@ public enum DrProtectionGroupMemberType implements com.oracle.bmc.http.internal. OkeCluster("OKE_CLUSTER"), ObjectStorageBucket("OBJECT_STORAGE_BUCKET"), MysqlDbSystem("MYSQL_DB_SYSTEM"), + PostgresqlDbSystem("POSTGRESQL_DB_SYSTEM"), IntegrationInstance("INTEGRATION_INSTANCE"), /** diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/OkeClusterResourceModifierMapping.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/OkeClusterResourceModifierMapping.java index 439dcb3a0dc..4763c8c2ae3 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/OkeClusterResourceModifierMapping.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/OkeClusterResourceModifierMapping.java @@ -32,12 +32,18 @@ public OkeClusterResourceModifierMapping(String namespace, String configMap) { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** The OKE namespace where the config map resides. Example: {@code namespace_string_5} */ + /** + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} + */ @com.fasterxml.jackson.annotation.JsonProperty("namespace") private String namespace; /** - * The OKE namespace where the config map resides. Example: {@code namespace_string_5} + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} * * @param namespace the value to set * @return this builder @@ -48,15 +54,17 @@ public Builder namespace(String namespace) { return this; } /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} */ @com.fasterxml.jackson.annotation.JsonProperty("configMap") private String configMap; /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} * * @param configMap the value to set * @return this builder @@ -100,12 +108,18 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** The OKE namespace where the config map resides. Example: {@code namespace_string_5} */ + /** + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} + */ @com.fasterxml.jackson.annotation.JsonProperty("namespace") private final String namespace; /** - * The OKE namespace where the config map resides. Example: {@code namespace_string_5} + * The OKE namespace where the config map resides. + * + *

Example: {@code namespace_string_5} * * @return the value */ @@ -114,15 +128,17 @@ public String getNamespace() { } /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} */ @com.fasterxml.jackson.annotation.JsonProperty("configMap") private final String configMap; /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedCustomPrecheckStep.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedCustomPrecheckStep.java index 2f0e3d6accc..f5b692670d6 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedCustomPrecheckStep.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedCustomPrecheckStep.java @@ -93,18 +93,20 @@ public Builder objectStorageScriptLocation( } /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} * * @param scriptCommand the value to set * @return this builder @@ -116,14 +118,18 @@ public Builder scriptCommand(String scriptCommand) { } /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @param runAsUser the value to set * @return this builder @@ -255,18 +261,20 @@ public ObjectStorageScriptLocation getObjectStorageScriptLocation() { /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private final String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} * * @return the value */ @@ -276,14 +284,18 @@ public String getScriptCommand() { /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private final String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedStep.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedStep.java index e829b4cc990..5fcdc48b29a 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedStep.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/RunObjectStoreScriptUserDefinedStep.java @@ -93,18 +93,20 @@ public Builder objectStorageScriptLocation( } /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} * * @param scriptCommand the value to set * @return this builder @@ -116,14 +118,18 @@ public Builder scriptCommand(String scriptCommand) { } /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @param runAsUser the value to set * @return this builder @@ -255,18 +261,20 @@ public ObjectStorageScriptLocation getObjectStorageScriptLocation() { /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private final String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} * * @return the value */ @@ -276,14 +284,18 @@ public String getScriptCommand() { /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private final String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.java new file mode 100644 index 00000000000..7fb18df27b5 --- /dev/null +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.java @@ -0,0 +1,145 @@ +/** + * 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.disasterrecovery.model; + +/** + * Optional update to DR drill-specific settings for a movable compute instance. If this object is + * omitted, the existing drill VNIC mappings are preserved. If provided, vnicMappings is required + * and must specify the complete VNIC mapping configuration for DR drills. Partial lists do not + * merge with existing mappings. An empty list clears the drill-specific mappings. A non-empty list + * is validated and replaces all existing drill-specific mappings. When no drill mappings are + * configured, DR drills use the regular recovery vnicMappings.
+ * 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: 20220125") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"vnicMappings"}) + public UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails( + java.util.List vnicMappings) { + super(); + this.vnicMappings = vnicMappings; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A list of compute instance VNIC mappings to use for DR drills. */ + @com.fasterxml.jackson.annotation.JsonProperty("vnicMappings") + private java.util.List vnicMappings; + + /** + * A list of compute instance VNIC mappings to use for DR drills. + * + * @param vnicMappings the value to set + * @return this builder + */ + public Builder vnicMappings( + java.util.List vnicMappings) { + this.vnicMappings = vnicMappings; + this.__explicitlySet__.add("vnicMappings"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails build() { + UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails model = + new UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails( + this.vnicMappings); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails model) { + if (model.wasPropertyExplicitlySet("vnicMappings")) { + this.vnicMappings(model.getVnicMappings()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** A list of compute instance VNIC mappings to use for DR drills. */ + @com.fasterxml.jackson.annotation.JsonProperty("vnicMappings") + private final java.util.List vnicMappings; + + /** + * A list of compute instance VNIC mappings to use for DR drills. + * + * @return the value + */ + public java.util.List getVnicMappings() { + return vnicMappings; + } + + @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("UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails("); + sb.append("super=").append(super.toString()); + sb.append("vnicMappings=").append(String.valueOf(this.vnicMappings)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails)) { + return false; + } + + UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails other = + (UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails) o; + return java.util.Objects.equals(this.vnicMappings, other.vnicMappings) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.vnicMappings == null ? 43 : this.vnicMappings.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceMovableDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceMovableDetails.java index 1cfd8830e82..a81353499dc 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceMovableDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberComputeInstanceMovableDetails.java @@ -36,6 +36,18 @@ public Builder memberId(String memberId) { this.__explicitlySet__.add("memberId"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("drDrillProperties") + private UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + drDrillProperties; + + public Builder drDrillProperties( + UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + drDrillProperties) { + this.drDrillProperties = drDrillProperties; + this.__explicitlySet__.add("drDrillProperties"); + return this; + } /** * A flag indicating if the compute instance should be moved to the same fault domain in the * destination region. The compute instance launch will fail if this flag is set to true and @@ -172,6 +184,7 @@ public UpdateDrProtectionGroupMemberComputeInstanceMovableDetails build() { UpdateDrProtectionGroupMemberComputeInstanceMovableDetails model = new UpdateDrProtectionGroupMemberComputeInstanceMovableDetails( this.memberId, + this.drDrillProperties, this.isRetainFaultDomain, this.destinationCapacityReservationId, this.vnicMappings, @@ -189,6 +202,9 @@ public Builder copy(UpdateDrProtectionGroupMemberComputeInstanceMovableDetails m if (model.wasPropertyExplicitlySet("memberId")) { this.memberId(model.getMemberId()); } + if (model.wasPropertyExplicitlySet("drDrillProperties")) { + this.drDrillProperties(model.getDrDrillProperties()); + } if (model.wasPropertyExplicitlySet("isRetainFaultDomain")) { this.isRetainFaultDomain(model.getIsRetainFaultDomain()); } @@ -223,6 +239,7 @@ public Builder toBuilder() { @Deprecated public UpdateDrProtectionGroupMemberComputeInstanceMovableDetails( String memberId, + UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails drDrillProperties, Boolean isRetainFaultDomain, String destinationCapacityReservationId, java.util.List vnicMappings, @@ -231,6 +248,7 @@ public UpdateDrProtectionGroupMemberComputeInstanceMovableDetails( java.util.List fileSystemOperations) { super(memberId); + this.drDrillProperties = drDrillProperties; this.isRetainFaultDomain = isRetainFaultDomain; this.destinationCapacityReservationId = destinationCapacityReservationId; this.vnicMappings = vnicMappings; @@ -239,6 +257,15 @@ public UpdateDrProtectionGroupMemberComputeInstanceMovableDetails( this.fileSystemOperations = fileSystemOperations; } + @com.fasterxml.jackson.annotation.JsonProperty("drDrillProperties") + private final UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + drDrillProperties; + + public UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails + getDrDrillProperties() { + return drDrillProperties; + } + /** * A flag indicating if the compute instance should be moved to the same fault domain in the * destination region. The compute instance launch will fail if this flag is set to true and @@ -368,6 +395,7 @@ public String toString(boolean includeByteArrayContents) { java.lang.StringBuilder sb = new java.lang.StringBuilder(); sb.append("UpdateDrProtectionGroupMemberComputeInstanceMovableDetails("); sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", drDrillProperties=").append(String.valueOf(this.drDrillProperties)); sb.append(", isRetainFaultDomain=").append(String.valueOf(this.isRetainFaultDomain)); sb.append(", destinationCapacityReservationId=") .append(String.valueOf(this.destinationCapacityReservationId)); @@ -392,7 +420,8 @@ public boolean equals(Object o) { UpdateDrProtectionGroupMemberComputeInstanceMovableDetails other = (UpdateDrProtectionGroupMemberComputeInstanceMovableDetails) o; - return java.util.Objects.equals(this.isRetainFaultDomain, other.isRetainFaultDomain) + return java.util.Objects.equals(this.drDrillProperties, other.drDrillProperties) + && java.util.Objects.equals(this.isRetainFaultDomain, other.isRetainFaultDomain) && java.util.Objects.equals( this.destinationCapacityReservationId, other.destinationCapacityReservationId) @@ -409,6 +438,9 @@ public boolean equals(Object o) { public int hashCode() { final int PRIME = 59; int result = super.hashCode(); + result = + (result * PRIME) + + (this.drDrillProperties == null ? 43 : this.drDrillProperties.hashCode()); result = (result * PRIME) + (this.isRetainFaultDomain == null diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberDetails.java index 2b2389a14ba..b5ca41eab89 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberDetails.java @@ -49,6 +49,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateDrProtectionGroupMemberDatabaseDetails.class, name = "DATABASE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails.class, + name = "POSTGRESQL_DB_SYSTEM"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateDrProtectionGroupMemberOkeClusterDetails.class, name = "OKE_CLUSTER"), diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails.java new file mode 100644 index 00000000000..6387a21154b --- /dev/null +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails.java @@ -0,0 +1,165 @@ +/** + * 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.disasterrecovery.model; + +/** + * Update properties for an OCI Database with PostgreSQL member.
+ * 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: 20220125") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "memberType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails + extends UpdateDrProtectionGroupMemberDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("memberId") + private String memberId; + + public Builder memberId(String memberId) { + this.memberId = memberId; + this.__explicitlySet__.add("memberId"); + return this; + } + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("peerDbSystemId") + private String peerDbSystemId; + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + * + * @param peerDbSystemId the value to set + * @return this builder + */ + public Builder peerDbSystemId(String peerDbSystemId) { + this.peerDbSystemId = peerDbSystemId; + this.__explicitlySet__.add("peerDbSystemId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails build() { + UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails model = + new UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails( + this.memberId, this.peerDbSystemId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails model) { + if (model.wasPropertyExplicitlySet("memberId")) { + this.memberId(model.getMemberId()); + } + if (model.wasPropertyExplicitlySet("peerDbSystemId")) { + this.peerDbSystemId(model.getPeerDbSystemId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails( + String memberId, String peerDbSystemId) { + super(memberId); + this.peerDbSystemId = peerDbSystemId; + } + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + */ + @com.fasterxml.jackson.annotation.JsonProperty("peerDbSystemId") + private final String peerDbSystemId; + + /** + * The OCID of the peer OCI Database with PostgreSQL from the peer region. + * + *

Example: {@code ocid1.postgresqldbsystem.oc1..uniqueID} + * + * @return the value + */ + public String getPeerDbSystemId() { + return peerDbSystemId; + } + + @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("UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", peerDbSystemId=").append(String.valueOf(this.peerDbSystemId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails)) { + return false; + } + + UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails other = + (UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails) o; + return java.util.Objects.equals(this.peerDbSystemId, other.peerDbSystemId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.peerDbSystemId == null ? 43 : this.peerDbSystemId.hashCode()); + return result; + } +} diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterBackupConfigDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterBackupConfigDetails.java index 9a83e9e8c59..4775f628b36 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterBackupConfigDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterBackupConfigDetails.java @@ -133,15 +133,19 @@ public Builder backupSchedule(String backupSchedule) { return this; } /** - * Controls the behaviour of image replication across regions. This property applies to the - * OKE cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled + * by default for DR Protection Groups. This setting applies to the OKE cluster member in + * the primary region, and to the standby region only if the image replication secret is + * stored in a vault instead of using the default secret. */ @com.fasterxml.jackson.annotation.JsonProperty("replicateImages") private OkeClusterImageReplication replicateImages; /** - * Controls the behaviour of image replication across regions. This property applies to the - * OKE cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled + * by default for DR Protection Groups. This setting applies to the OKE cluster member in + * the primary region, and to the standby region only if the image replication secret is + * stored in a vault instead of using the default secret. * * @param replicateImages the value to set * @return this builder @@ -317,15 +321,19 @@ public String getBackupSchedule() { } /** - * Controls the behaviour of image replication across regions. This property applies to the OKE - * cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled by + * default for DR Protection Groups. This setting applies to the OKE cluster member in the + * primary region, and to the standby region only if the image replication secret is stored in a + * vault instead of using the default secret. */ @com.fasterxml.jackson.annotation.JsonProperty("replicateImages") private final OkeClusterImageReplication replicateImages; /** - * Controls the behaviour of image replication across regions. This property applies to the OKE - * cluster member in primary region. + * Controls the behavior of image replication across regions. Image replication is enabled by + * default for DR Protection Groups. This setting applies to the OKE cluster member in the + * primary region, and to the standby region only if the image replication secret is stored in a + * vault instead of using the default secret. * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterResourceModifierMappingDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterResourceModifierMappingDetails.java index 3bce3f8c873..99228332860 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterResourceModifierMappingDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateOkeClusterResourceModifierMappingDetails.java @@ -32,12 +32,18 @@ public UpdateOkeClusterResourceModifierMappingDetails(String namespace, String c @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** The OKE namespace where the configmap resides. Example: {@code bar} */ + /** + * The OKE namespace where the configmap resides. + * + *

Example: {@code bar} + */ @com.fasterxml.jackson.annotation.JsonProperty("namespace") private String namespace; /** - * The OKE namespace where the configmap resides. Example: {@code bar} + * The OKE namespace where the configmap resides. + * + *

Example: {@code bar} * * @param namespace the value to set * @return this builder @@ -48,15 +54,17 @@ public Builder namespace(String namespace) { return this; } /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} */ @com.fasterxml.jackson.annotation.JsonProperty("configMap") private String configMap; /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} * * @param configMap the value to set * @return this builder @@ -101,12 +109,18 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** The OKE namespace where the configmap resides. Example: {@code bar} */ + /** + * The OKE namespace where the configmap resides. + * + *

Example: {@code bar} + */ @com.fasterxml.jackson.annotation.JsonProperty("namespace") private final String namespace; /** - * The OKE namespace where the configmap resides. Example: {@code bar} + * The OKE namespace where the configmap resides. + * + *

Example: {@code bar} * * @return the value */ @@ -115,15 +129,17 @@ public String getNamespace() { } /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} */ @com.fasterxml.jackson.annotation.JsonProperty("configMap") private final String configMap; /** - * The name of the config map containing resource modification details. Example: {@code - * resource-modifier} + * The name of the config map containing resource modification details. + * + *

Example: {@code resource-modifier} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedCustomPrecheckStepDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedCustomPrecheckStepDetails.java index b40618909fd..b11fca7d5c8 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedCustomPrecheckStepDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedCustomPrecheckStepDetails.java @@ -73,18 +73,20 @@ public Builder objectStorageScriptLocation( } /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} * * @param scriptCommand the value to set * @return this builder @@ -96,14 +98,18 @@ public Builder scriptCommand(String scriptCommand) { } /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @param runAsUser the value to set * @return this builder @@ -210,18 +216,20 @@ public UpdateObjectStorageScriptLocationDetails getObjectStorageScriptLocation() /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private final String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} * * @return the value */ @@ -231,14 +239,18 @@ public String getScriptCommand() { /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private final String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedStepDetails.java b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedStepDetails.java index c65a6433812..9638382d969 100644 --- a/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedStepDetails.java +++ b/bmc-disasterrecovery/src/main/java/com/oracle/bmc/disasterrecovery/model/UpdateRunObjectStoreScriptUserDefinedStepDetails.java @@ -73,18 +73,20 @@ public Builder objectStorageScriptLocation( } /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env + * "production" --max-connections 200 --log-level "INFO"} * * @param scriptCommand the value to set * @return this builder @@ -96,14 +98,18 @@ public Builder scriptCommand(String scriptCommand) { } /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @param runAsUser the value to set * @return this builder @@ -210,18 +216,20 @@ public UpdateObjectStorageScriptLocationDetails getObjectStorageScriptLocation() /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} */ @com.fasterxml.jackson.annotation.JsonProperty("scriptCommand") private final String scriptCommand; /** * The entire path and arguments for the script that is stored in object store, or inside a - * compressed archive in object store. Example: {@code /usr/bin/python3.7 - * scripts/start_server.py --port 8080 --env "production" --max-connections 200 --log-level - * "INFO"} + * compressed archive in object store. + * + *

Example: {@code /usr/bin/python3.7 scripts/start_server.py --port 8080 --env "production" + * --max-connections 200 --log-level "INFO"} * * @return the value */ @@ -231,14 +239,18 @@ public String getScriptCommand() { /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} */ @com.fasterxml.jackson.annotation.JsonProperty("runAsUser") private final String runAsUser; /** * The user ID on the instance that will be used to execute the script specified in - * 'scriptCommand'. Example: {@code opc} + * 'scriptCommand'. + * + *

Example: {@code opc} * * @return the value */ diff --git a/bmc-disasterrecovery/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-disasterrecovery/reflect-config.json b/bmc-disasterrecovery/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-disasterrecovery/reflect-config.json index 2a5f9f0075a..8c9bef485ce 100644 --- a/bmc-disasterrecovery/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-disasterrecovery/reflect-config.json +++ b/bmc-disasterrecovery/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-disasterrecovery/reflect-config.json @@ -615,6 +615,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.CreateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.disasterrecovery.model.CreateDrProtectionGroupMemberComputeInstanceMovableDetails", @@ -762,6 +776,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.CreateDrProtectionGroupMemberPostgresqlDbSystemDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.CreateDrProtectionGroupMemberPostgresqlDbSystemDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.disasterrecovery.model.CreateDrProtectionGroupMemberVolumeGroupDetails", @@ -1456,6 +1484,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.DrProtectionGroupMemberComputeInstanceDrillProperties", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.DrProtectionGroupMemberComputeInstanceDrillProperties$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.disasterrecovery.model.DrProtectionGroupMemberComputeInstanceMovable", @@ -1596,6 +1638,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.DrProtectionGroupMemberPostgresqlDbSystem", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.DrProtectionGroupMemberPostgresqlDbSystem$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.disasterrecovery.model.DrProtectionGroupMemberType", @@ -2687,6 +2743,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.UpdateDrProtectionGroupMemberComputeInstanceDrillPropertiesDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.disasterrecovery.model.UpdateDrProtectionGroupMemberComputeInstanceMovableDetails", @@ -2834,6 +2904,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.disasterrecovery.model.UpdateDrProtectionGroupMemberPostgresqlDbSystemDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.disasterrecovery.model.UpdateDrProtectionGroupMemberVolumeGroupDetails", diff --git a/bmc-distributeddatabase/pom.xml b/bmc-distributeddatabase/pom.xml index 9fd2852a246..42623770692 100644 --- a/bmc-distributeddatabase/pom.xml +++ b/bmc-distributeddatabase/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-distributeddatabase @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-dns/pom.xml b/bmc-dns/pom.xml index 4e0c14f5081..96282fbd605 100644 --- a/bmc-dns/pom.xml +++ b/bmc-dns/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.98.0 + 3.99.0 diff --git a/bmc-email/pom.xml b/bmc-email/pom.xml index c9f62061ac2..3793c4f3088 100644 --- a/bmc-email/pom.xml +++ b/bmc-email/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-emaildataplane/pom.xml b/bmc-emaildataplane/pom.xml index 6cfc52c6e62..1c1853030a3 100644 --- a/bmc-emaildataplane/pom.xml +++ b/bmc-emaildataplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-emaildataplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-emwarehouse/pom.xml b/bmc-emwarehouse/pom.xml index 144ef900f5f..be247df927b 100644 --- a/bmc-emwarehouse/pom.xml +++ b/bmc-emwarehouse/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-emwarehouse @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-encryption/pom.xml b/bmc-encryption/pom.xml index 365041ae8e0..dbb7cedcd81 100644 --- a/bmc-encryption/pom.xml +++ b/bmc-encryption/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,17 +18,17 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-keymanagement - 3.98.0 + 3.99.0 com.fasterxml.jackson.core @@ -48,7 +48,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 test diff --git a/bmc-enforcer-rules/pom.xml b/bmc-enforcer-rules/pom.xml index c5855b48693..2efd63c1310 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.98.0 + 3.99.0 oci-java-sdk-enforcer-rules diff --git a/bmc-events/pom.xml b/bmc-events/pom.xml index 5084375e87e..e3601b5497a 100644 --- a/bmc-events/pom.xml +++ b/bmc-events/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-events @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-examples/pom.xml b/bmc-examples/pom.xml index 50a05fe769b..45a238b9271 100644 --- a/bmc-examples/pom.xml +++ b/bmc-examples/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-examples @@ -71,14 +71,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.98.0 + 3.99.0 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 pom import @@ -833,5 +833,13 @@ com.oracle.oci.sdk oci-java-sdk-ccdoffers + + com.oracle.oci.sdk + oci-java-sdk-pss + + + com.oracle.oci.sdk + oci-java-sdk-generativeaisandbox + \ No newline at end of file diff --git a/bmc-filestorage/pom.xml b/bmc-filestorage/pom.xml index a0822202aee..4ca6196e5f7 100644 --- a/bmc-filestorage/pom.xml +++ b/bmc-filestorage/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-fleetappsmanagement/pom.xml b/bmc-fleetappsmanagement/pom.xml index 08c32dd20b6..0917677e74d 100644 --- a/bmc-fleetappsmanagement/pom.xml +++ b/bmc-fleetappsmanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-fleetappsmanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-fleetsoftwareupdate/pom.xml b/bmc-fleetsoftwareupdate/pom.xml index df0a5ca2f71..8b775d5d606 100644 --- a/bmc-fleetsoftwareupdate/pom.xml +++ b/bmc-fleetsoftwareupdate/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-fleetsoftwareupdate @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-full/pom.xml b/bmc-full/pom.xml index 963a66802d6..64ab12c48c1 100644 --- a/bmc-full/pom.xml +++ b/bmc-full/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-full @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.98.0 + 3.99.0 pom import @@ -719,5 +719,13 @@ com.oracle.oci.sdk oci-java-sdk-ccdoffers + + com.oracle.oci.sdk + oci-java-sdk-pss + + + com.oracle.oci.sdk + oci-java-sdk-generativeaisandbox + \ No newline at end of file diff --git a/bmc-functions/pom.xml b/bmc-functions/pom.xml index e323dbe1bef..423652ae319 100644 --- a/bmc-functions/pom.xml +++ b/bmc-functions/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-functions @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-fusionapps/pom.xml b/bmc-fusionapps/pom.xml index fc7e8be9b84..d74c4a576a2 100644 --- a/bmc-fusionapps/pom.xml +++ b/bmc-fusionapps/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-fusionapps @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-gdp/pom.xml b/bmc-gdp/pom.xml index 08afeac2b85..0a7823bf0c9 100644 --- a/bmc-gdp/pom.xml +++ b/bmc-gdp/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-gdp @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-generativeai/pom.xml b/bmc-generativeai/pom.xml index be3a72486ba..824adbbf07e 100644 --- a/bmc-generativeai/pom.xml +++ b/bmc-generativeai/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-generativeai @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAi.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAi.java index c371d51f68e..bd64ab2de4f 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAi.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAi.java @@ -552,6 +552,36 @@ CreateHostedApplicationStorageResponse createHostedApplicationStorage( */ CreateRoutingProfileResponse createRoutingProfile(CreateRoutingProfileRequest request); + /** + * Creates a named MANAGED or CUSTOM pool. MANAGED uses the service-provided python-3.11 runtime + * and requires containerImage to be omitted. CUSTOM requires a digest-pinned containerImage. + * Project-wide shape capacity limits include named pools of both types and reserved default + * pools. Type, image, shape and name are immutable. The CP atomically persists CREATING and a + * Work Request, then its workflow prepares an immutable pool-owned template and applies the + * pool configuration. Each MANAGED pool has a distinct template based on the service runtime + * configuration, isolated from other pools of the same shape. ACTIVE means configuration was + * applied and verified; it does not require ready members, a successful image boot or available + * cluster capacity. Zero capacity pauses idle prewarming. An ACTIVE named pool can still create + * Sandboxes through cold fallback when its applied template is available. Retry identity and + * configuration are persisted atomically. Within the 24-hour retry-token validity period, the + * same token and input identify the original pool id, including after name reuse. A retry never + * creates or selects a replacement pool. A retry after the original pool is deleted returns + * 409; changed input with the same token conflicts. Reserved default names cannot be reused for + * either type. + * + * @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 + * CreateSandboxWarmPool API. + */ + CreateSandboxWarmPoolResponse createSandboxWarmPool(CreateSandboxWarmPoolRequest request); + /** * Creates a SemanticStore. * @@ -839,6 +869,32 @@ DeleteHostedDeploymentArtifactResponse deleteHostedDeploymentArtifact( */ DeleteRoutingProfileResponse deleteRoutingProfile(DeleteRoutingProfileRequest request); + /** + * Deletes a named MANAGED or CUSTOM pool through a CP Work Request. Reserved MANAGED default + * entries cannot be deleted and return 409. CP persists DELETING and closes admission as the + * new configuration propagates, drains idle members and deletes the pool resource. The + * management response does not promise immediate global admission closure or completed cleanup. + * Already-adopted customer Sandboxes survive and retain required template dependencies. Get and + * List continue to show DELETING until pool cleanup completes. The CP then records DELETED and + * releases the name. Name reuse always allocates a new id and materialized names. Retained + * templates may outlive the pool while customer Sandboxes still depend on them. A repeated + * delete during DELETING returns the existing Work Request. A missing name returns 404. After + * name reuse, the path identifies the new pool; use the original if-match ETag to prevent + * deleting it. Conflicting operations return 409 and stale if-match returns 412. + * + * @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 + * DeleteSandboxWarmPool API. + */ + DeleteSandboxWarmPoolResponse deleteSandboxWarmPool(DeleteSandboxWarmPoolRequest request); + /** * Deletes a semanticStore. * @@ -1063,6 +1119,28 @@ GetHostedApplicationStorageResponse getHostedApplicationStorage( */ GetRoutingProfileResponse getRoutingProfile(GetRoutingProfileRequest request); + /** + * Gets authoritative CP configuration and management lifecycle for the current pool + * incarnation, including DELETING until pool cleanup completes. Returns 404 after deletion + * completes unless the name has been reused for a new id. A best-effort runtime observation may + * report ready idle capacity. A runtime read failure returns UNAVAILABLE without failing the + * configuration read. ACTIVE does not imply runtime capacity is ready. The configuration ETag + * excludes runtime changes; it must not be used to suppress runtime observations with a + * conditional not-modified response. + * + * @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 GetSandboxWarmPool + * API. + */ + GetSandboxWarmPoolResponse getSandboxWarmPool(GetSandboxWarmPoolRequest request); + /** * Gets information about a semanticStore. * @@ -1175,6 +1253,24 @@ GetVectorStoreConnectorStatsResponse getVectorStoreConnectorStats( */ ListDedicatedAiClustersResponse listDedicatedAiClusters(ListDedicatedAiClustersRequest request); + /** + * Lists the allocatable GPUs for launching dedicated AI clusters tied to a specific capacity + * reservation 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 + * ListDedicatedAiClustersAllocatableGpus API. + */ + ListDedicatedAiClustersAllocatableGpusResponse listDedicatedAiClustersAllocatableGpus( + ListDedicatedAiClustersAllocatableGpusRequest request); + /** * Lists the endpoints of a specific compartment. * @@ -1357,6 +1453,25 @@ ListHostedApplicationsIamResponse listHostedApplicationsIam( */ ListRoutingProfilesResponse listRoutingProfiles(ListRoutingProfilesRequest request); + /** + * Lists named MANAGED and CUSTOM pools for Sandbox-enabled Projects, including zero targets and + * in-progress management operations. Reserved defaults can be resized but cannot be created or + * deleted by customers. DELETED resources are excluded. Responses include CP management + * lifecycle but do not perform runtime reads or return ready capacity. + * + * @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 + * ListSandboxWarmPools API. + */ + ListSandboxWarmPoolsResponse listSandboxWarmPools(ListSandboxWarmPoolsRequest request); + /** * Lists the SemanticStores given specific filter. * @@ -1699,6 +1814,33 @@ UpdateHostedApplicationIamResponse updateHostedApplicationIam( */ UpdateRoutingProfileResponse updateRoutingProfile(UpdateRoutingProfileRequest request); + /** + * Only desiredCapacity may change. If desiredCapacity is omitted, the current desired capacity + * is preserved. An empty update object is allowed; an explicit null value for desiredCapacity + * is not allowed. Named MANAGED and CUSTOM pools and reserved MANAGED defaults can be resized. + * Default-pool updates use the existing Project configuration workflow; no separate desired + * configuration is created for those entries. CP persists UPDATING and a Work Request, applies + * the desired replica count, then returns the pool to ACTIVE after verifying the configuration. + * The workflow does not wait for ready members. Zero pauses idle prewarming. Once the pool is + * ACTIVE, named-pool Sandbox creation can still cold-start from its available applied template + * when no eligible warm member is available, regardless of the capacity target. + * Already-admitted Sandboxes continue. Unnamed Sandbox creation retains its existing behavior. + * Concurrent management operations return 409. If provided, if-match must match the current + * configuration ETag; otherwise this operation returns 412. + * + * @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 + * UpdateSandboxWarmPool API. + */ + UpdateSandboxWarmPoolResponse updateSandboxWarmPool(UpdateSandboxWarmPoolRequest request); + /** * Updates the properties of a SemanticStore. * diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsync.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsync.java index 23b712c8dc1..450a2ecb058 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsync.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsync.java @@ -554,6 +554,36 @@ java.util.concurrent.Future createRoutingProfile( CreateRoutingProfileRequest, CreateRoutingProfileResponse> handler); + /** + * Creates a named MANAGED or CUSTOM pool. MANAGED uses the service-provided python-3.11 runtime + * and requires containerImage to be omitted. CUSTOM requires a digest-pinned containerImage. + * Project-wide shape capacity limits include named pools of both types and reserved default + * pools. Type, image, shape and name are immutable. The CP atomically persists CREATING and a + * Work Request, then its workflow prepares an immutable pool-owned template and applies the + * pool configuration. Each MANAGED pool has a distinct template based on the service runtime + * configuration, isolated from other pools of the same shape. ACTIVE means configuration was + * applied and verified; it does not require ready members, a successful image boot or available + * cluster capacity. Zero capacity pauses idle prewarming. An ACTIVE named pool can still create + * Sandboxes through cold fallback when its applied template is available. Retry identity and + * configuration are persisted atomically. Within the 24-hour retry-token validity period, the + * same token and input identify the original pool id, including after name reuse. A retry never + * creates or selects a replacement pool. A retry after the original pool is deleted returns + * 409; changed input with the same token conflicts. Reserved default names cannot be reused for + * either type. + * + * @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 createSandboxWarmPool( + CreateSandboxWarmPoolRequest request, + com.oracle.bmc.responses.AsyncHandler< + CreateSandboxWarmPoolRequest, CreateSandboxWarmPoolResponse> + handler); + /** * Creates a SemanticStore. * @@ -840,6 +870,32 @@ java.util.concurrent.Future deleteRoutingProfile( DeleteRoutingProfileRequest, DeleteRoutingProfileResponse> handler); + /** + * Deletes a named MANAGED or CUSTOM pool through a CP Work Request. Reserved MANAGED default + * entries cannot be deleted and return 409. CP persists DELETING and closes admission as the + * new configuration propagates, drains idle members and deletes the pool resource. The + * management response does not promise immediate global admission closure or completed cleanup. + * Already-adopted customer Sandboxes survive and retain required template dependencies. Get and + * List continue to show DELETING until pool cleanup completes. The CP then records DELETED and + * releases the name. Name reuse always allocates a new id and materialized names. Retained + * templates may outlive the pool while customer Sandboxes still depend on them. A repeated + * delete during DELETING returns the existing Work Request. A missing name returns 404. After + * name reuse, the path identifies the new pool; use the original if-match ETag to prevent + * deleting it. Conflicting operations return 409 and stale if-match returns 412. + * + * @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 deleteSandboxWarmPool( + DeleteSandboxWarmPoolRequest request, + com.oracle.bmc.responses.AsyncHandler< + DeleteSandboxWarmPoolRequest, DeleteSandboxWarmPoolResponse> + handler); + /** * Deletes a semanticStore. * @@ -1059,6 +1115,28 @@ java.util.concurrent.Future getRoutingProfile( GetRoutingProfileRequest, GetRoutingProfileResponse> handler); + /** + * Gets authoritative CP configuration and management lifecycle for the current pool + * incarnation, including DELETING until pool cleanup completes. Returns 404 after deletion + * completes unless the name has been reused for a new id. A best-effort runtime observation may + * report ready idle capacity. A runtime read failure returns UNAVAILABLE without failing the + * configuration read. ACTIVE does not imply runtime capacity is ready. The configuration ETag + * excludes runtime changes; it must not be used to suppress runtime observations with a + * conditional not-modified response. + * + * @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 getSandboxWarmPool( + GetSandboxWarmPoolRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetSandboxWarmPoolRequest, GetSandboxWarmPoolResponse> + handler); + /** * Gets information about a semanticStore. * @@ -1170,6 +1248,25 @@ java.util.concurrent.Future listDedicatedAiClus ListDedicatedAiClustersRequest, ListDedicatedAiClustersResponse> handler); + /** + * Lists the allocatable GPUs for launching dedicated AI clusters tied to a specific capacity + * reservation 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 + listDedicatedAiClustersAllocatableGpus( + ListDedicatedAiClustersAllocatableGpusRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListDedicatedAiClustersAllocatableGpusRequest, + ListDedicatedAiClustersAllocatableGpusResponse> + handler); + /** * Lists the endpoints of a specific compartment. * @@ -1351,6 +1448,25 @@ java.util.concurrent.Future listRoutingProfiles( ListRoutingProfilesRequest, ListRoutingProfilesResponse> handler); + /** + * Lists named MANAGED and CUSTOM pools for Sandbox-enabled Projects, including zero targets and + * in-progress management operations. Reserved defaults can be resized but cannot be created or + * deleted by customers. DELETED resources are excluded. Responses include CP management + * lifecycle but do not perform runtime reads or return ready capacity. + * + * @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 listSandboxWarmPools( + ListSandboxWarmPoolsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListSandboxWarmPoolsRequest, ListSandboxWarmPoolsResponse> + handler); + /** * Lists the SemanticStores given specific filter. * @@ -1689,6 +1805,33 @@ java.util.concurrent.Future updateRoutingProfile( UpdateRoutingProfileRequest, UpdateRoutingProfileResponse> handler); + /** + * Only desiredCapacity may change. If desiredCapacity is omitted, the current desired capacity + * is preserved. An empty update object is allowed; an explicit null value for desiredCapacity + * is not allowed. Named MANAGED and CUSTOM pools and reserved MANAGED defaults can be resized. + * Default-pool updates use the existing Project configuration workflow; no separate desired + * configuration is created for those entries. CP persists UPDATING and a Work Request, applies + * the desired replica count, then returns the pool to ACTIVE after verifying the configuration. + * The workflow does not wait for ready members. Zero pauses idle prewarming. Once the pool is + * ACTIVE, named-pool Sandbox creation can still cold-start from its available applied template + * when no eligible warm member is available, regardless of the capacity target. + * Already-admitted Sandboxes continue. Unnamed Sandbox creation retains its existing behavior. + * Concurrent management operations return 409. If provided, if-match must match the current + * configuration ETag; otherwise this operation returns 412. + * + * @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 updateSandboxWarmPool( + UpdateSandboxWarmPoolRequest request, + com.oracle.bmc.responses.AsyncHandler< + UpdateSandboxWarmPoolRequest, UpdateSandboxWarmPoolResponse> + handler); + /** * Updates the properties of a SemanticStore. * diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsyncClient.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsyncClient.java index 1ab80858c85..1c16dc8ef43 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsyncClient.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiAsyncClient.java @@ -1156,6 +1156,52 @@ public java.util.concurrent.Future createRoutingPr .callAsync(handler); } + @Override + public java.util.concurrent.Future createSandboxWarmPool( + CreateSandboxWarmPoolRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CreateSandboxWarmPoolRequest, CreateSandboxWarmPoolResponse> + handler) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + Objects.requireNonNull( + request.getCreateSandboxWarmPoolDetails(), + "createSandboxWarmPoolDetails is required"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + + return clientCall(request, CreateSandboxWarmPoolResponse::builder) + .logger(LOG, "createSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "CreateSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/CreateSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPool.class, + CreateSandboxWarmPoolResponse.Builder::sandboxWarmPool) + .handleResponseHeaderString( + "opc-work-request-id", + CreateSandboxWarmPoolResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", CreateSandboxWarmPoolResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", CreateSandboxWarmPoolResponse.Builder::etag) + .handleResponseHeaderString( + "location", CreateSandboxWarmPoolResponse.Builder::location) + .callAsync(handler); + } + @Override public java.util.concurrent.Future createSemanticStore( CreateSemanticStoreRequest request, @@ -1751,6 +1797,46 @@ public java.util.concurrent.Future deleteRoutingPr .callAsync(handler); } + @Override + public java.util.concurrent.Future deleteSandboxWarmPool( + DeleteSandboxWarmPoolRequest request, + final com.oracle.bmc.responses.AsyncHandler< + DeleteSandboxWarmPoolRequest, DeleteSandboxWarmPoolResponse> + handler) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + Validate.notBlank(request.getName(), "name must not be blank"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + requiredParametersMap.put("name", request.getName()); + + return clientCall(request, DeleteSandboxWarmPoolResponse::builder) + .logger(LOG, "deleteSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "DeleteSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/DeleteSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendPathParam(request.getName()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .handleResponseHeaderString( + "opc-work-request-id", + DeleteSandboxWarmPoolResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", DeleteSandboxWarmPoolResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future deleteSemanticStore( DeleteSemanticStoreRequest request, @@ -2258,6 +2344,46 @@ public java.util.concurrent.Future getRoutingProfile( .callAsync(handler); } + @Override + public java.util.concurrent.Future getSandboxWarmPool( + GetSandboxWarmPoolRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetSandboxWarmPoolRequest, GetSandboxWarmPoolResponse> + handler) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + Validate.notBlank(request.getName(), "name must not be blank"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + requiredParametersMap.put("name", request.getName()); + + return clientCall(request, GetSandboxWarmPoolResponse::builder) + .logger(LOG, "getSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "GetSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/GetSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendPathParam(request.getName()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPool.class, + GetSandboxWarmPoolResponse.Builder::sandboxWarmPool) + .handleResponseHeaderString( + "opc-request-id", GetSandboxWarmPoolResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetSandboxWarmPoolResponse.Builder::etag) + .callAsync(handler); + } + @Override public java.util.concurrent.Future getSemanticStore( GetSemanticStoreRequest request, @@ -2521,6 +2647,7 @@ public java.util.concurrent.Future listDedicate .appendQueryParam("page", request.getPage()) .appendEnumQueryParam("sortOrder", request.getSortOrder()) .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendQueryParam("capacityReservationId", request.getCapacityReservationId()) .accept("application/json") .appendHeader("opc-request-id", request.getOpcRequestId()) .handleBody( @@ -2533,6 +2660,55 @@ public java.util.concurrent.Future listDedicate .callAsync(handler); } + @Override + public java.util.concurrent.Future + listDedicatedAiClustersAllocatableGpus( + ListDedicatedAiClustersAllocatableGpusRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListDedicatedAiClustersAllocatableGpusRequest, + ListDedicatedAiClustersAllocatableGpusResponse> + handler) { + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + Objects.requireNonNull( + request.getCapacityReservationId(), "capacityReservationId is required"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("compartmentId", request.getCompartmentId()); + requiredParametersMap.put("capacityReservationId", request.getCapacityReservationId()); + + return clientCall(request, ListDedicatedAiClustersAllocatableGpusResponse::builder) + .logger(LOG, "listDedicatedAiClustersAllocatableGpus") + .serviceDetails( + "GenerativeAi", + "ListDedicatedAiClustersAllocatableGpus", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/AllocatableGpuCollection/ListDedicatedAiClustersAllocatableGpus") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListDedicatedAiClustersAllocatableGpusRequest::builder) + .basePath("/20231130") + .appendPathParam("dedicatedAiClusters") + .appendPathParam("allocatableGpus") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("capacityReservationId", request.getCapacityReservationId()) + .appendQueryParam("computeShape", request.getComputeShape()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeai.model.AllocatableGpuCollection.class, + ListDedicatedAiClustersAllocatableGpusResponse.Builder + ::allocatableGpuCollection) + .handleResponseHeaderString( + "opc-request-id", + ListDedicatedAiClustersAllocatableGpusResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", + ListDedicatedAiClustersAllocatableGpusResponse.Builder::opcNextPage) + .callAsync(handler); + } + @Override public java.util.concurrent.Future listEndpoints( ListEndpointsRequest request, @@ -3042,6 +3218,50 @@ public java.util.concurrent.Future listRoutingProfi .callAsync(handler); } + @Override + public java.util.concurrent.Future listSandboxWarmPools( + ListSandboxWarmPoolsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListSandboxWarmPoolsRequest, ListSandboxWarmPoolsResponse> + handler) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + + return clientCall(request, ListSandboxWarmPoolsResponse::builder) + .logger(LOG, "listSandboxWarmPools") + .serviceDetails( + "GenerativeAi", + "ListSandboxWarmPools", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPoolCollection/ListSandboxWarmPools") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxWarmPoolsRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendQueryParam("name", request.getName()) + .appendEnumQueryParam("type", request.getType()) + .appendEnumQueryParam("shape", request.getShape()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection.class, + ListSandboxWarmPoolsResponse.Builder::sandboxWarmPoolCollection) + .handleResponseHeaderString( + "opc-request-id", ListSandboxWarmPoolsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListSandboxWarmPoolsResponse.Builder::opcNextPage) + .callAsync(handler); + } + @Override public java.util.concurrent.Future listSemanticStores( ListSemanticStoresRequest request, @@ -3947,6 +4167,54 @@ public java.util.concurrent.Future updateRoutingPr .callAsync(handler); } + @Override + public java.util.concurrent.Future updateSandboxWarmPool( + UpdateSandboxWarmPoolRequest request, + final com.oracle.bmc.responses.AsyncHandler< + UpdateSandboxWarmPoolRequest, UpdateSandboxWarmPoolResponse> + handler) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + Validate.notBlank(request.getName(), "name must not be blank"); + Objects.requireNonNull( + request.getUpdateSandboxWarmPoolDetails(), + "updateSandboxWarmPoolDetails is required"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + requiredParametersMap.put("name", request.getName()); + + return clientCall(request, UpdateSandboxWarmPoolResponse::builder) + .logger(LOG, "updateSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "UpdateSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/UpdateSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendPathParam(request.getName()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPool.class, + UpdateSandboxWarmPoolResponse.Builder::sandboxWarmPool) + .handleResponseHeaderString( + "opc-work-request-id", + UpdateSandboxWarmPoolResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString("etag", UpdateSandboxWarmPoolResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", UpdateSandboxWarmPoolResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future updateSemanticStore( UpdateSemanticStoreRequest request, diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiClient.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiClient.java index 8f67d2e9702..b975095015d 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiClient.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiClient.java @@ -1105,6 +1105,50 @@ public CreateRoutingProfileResponse createRoutingProfile(CreateRoutingProfileReq .callSync(); } + @Override + public CreateSandboxWarmPoolResponse createSandboxWarmPool( + CreateSandboxWarmPoolRequest request) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + Objects.requireNonNull( + request.getCreateSandboxWarmPoolDetails(), + "createSandboxWarmPoolDetails is required"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + + return clientCall(request, CreateSandboxWarmPoolResponse::builder) + .logger(LOG, "createSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "CreateSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/CreateSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPool.class, + CreateSandboxWarmPoolResponse.Builder::sandboxWarmPool) + .handleResponseHeaderString( + "opc-work-request-id", + CreateSandboxWarmPoolResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", CreateSandboxWarmPoolResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", CreateSandboxWarmPoolResponse.Builder::etag) + .handleResponseHeaderString( + "location", CreateSandboxWarmPoolResponse.Builder::location) + .callSync(); + } + @Override public CreateSemanticStoreResponse createSemanticStore(CreateSemanticStoreRequest request) { Objects.requireNonNull( @@ -1652,6 +1696,44 @@ public DeleteRoutingProfileResponse deleteRoutingProfile(DeleteRoutingProfileReq .callSync(); } + @Override + public DeleteSandboxWarmPoolResponse deleteSandboxWarmPool( + DeleteSandboxWarmPoolRequest request) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + Validate.notBlank(request.getName(), "name must not be blank"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + requiredParametersMap.put("name", request.getName()); + + return clientCall(request, DeleteSandboxWarmPoolResponse::builder) + .logger(LOG, "deleteSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "DeleteSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/DeleteSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendPathParam(request.getName()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-work-request-id", + DeleteSandboxWarmPoolResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", DeleteSandboxWarmPoolResponse.Builder::opcRequestId) + .callSync(); + } + @Override public DeleteSemanticStoreResponse deleteSemanticStore(DeleteSemanticStoreRequest request) { @@ -2120,6 +2202,43 @@ public GetRoutingProfileResponse getRoutingProfile(GetRoutingProfileRequest requ .callSync(); } + @Override + public GetSandboxWarmPoolResponse getSandboxWarmPool(GetSandboxWarmPoolRequest request) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + Validate.notBlank(request.getName(), "name must not be blank"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + requiredParametersMap.put("name", request.getName()); + + return clientCall(request, GetSandboxWarmPoolResponse::builder) + .logger(LOG, "getSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "GetSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/GetSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendPathParam(request.getName()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPool.class, + GetSandboxWarmPoolResponse.Builder::sandboxWarmPool) + .handleResponseHeaderString( + "opc-request-id", GetSandboxWarmPoolResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetSandboxWarmPoolResponse.Builder::etag) + .callSync(); + } + @Override public GetSemanticStoreResponse getSemanticStore(GetSemanticStoreRequest request) { @@ -2362,6 +2481,7 @@ public ListDedicatedAiClustersResponse listDedicatedAiClusters( .appendQueryParam("page", request.getPage()) .appendEnumQueryParam("sortOrder", request.getSortOrder()) .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendQueryParam("capacityReservationId", request.getCapacityReservationId()) .accept("application/json") .appendHeader("opc-request-id", request.getOpcRequestId()) .operationUsesDefaultRetries() @@ -2375,6 +2495,51 @@ public ListDedicatedAiClustersResponse listDedicatedAiClusters( .callSync(); } + @Override + public ListDedicatedAiClustersAllocatableGpusResponse listDedicatedAiClustersAllocatableGpus( + ListDedicatedAiClustersAllocatableGpusRequest request) { + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + Objects.requireNonNull( + request.getCapacityReservationId(), "capacityReservationId is required"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("compartmentId", request.getCompartmentId()); + requiredParametersMap.put("capacityReservationId", request.getCapacityReservationId()); + + return clientCall(request, ListDedicatedAiClustersAllocatableGpusResponse::builder) + .logger(LOG, "listDedicatedAiClustersAllocatableGpus") + .serviceDetails( + "GenerativeAi", + "ListDedicatedAiClustersAllocatableGpus", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/AllocatableGpuCollection/ListDedicatedAiClustersAllocatableGpus") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListDedicatedAiClustersAllocatableGpusRequest::builder) + .basePath("/20231130") + .appendPathParam("dedicatedAiClusters") + .appendPathParam("allocatableGpus") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("capacityReservationId", request.getCapacityReservationId()) + .appendQueryParam("computeShape", request.getComputeShape()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeai.model.AllocatableGpuCollection.class, + ListDedicatedAiClustersAllocatableGpusResponse.Builder + ::allocatableGpuCollection) + .handleResponseHeaderString( + "opc-request-id", + ListDedicatedAiClustersAllocatableGpusResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", + ListDedicatedAiClustersAllocatableGpusResponse.Builder::opcNextPage) + .callSync(); + } + @Override public ListEndpointsResponse listEndpoints(ListEndpointsRequest request) { Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); @@ -2855,6 +3020,47 @@ public ListRoutingProfilesResponse listRoutingProfiles(ListRoutingProfilesReques .callSync(); } + @Override + public ListSandboxWarmPoolsResponse listSandboxWarmPools(ListSandboxWarmPoolsRequest request) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + + return clientCall(request, ListSandboxWarmPoolsResponse::builder) + .logger(LOG, "listSandboxWarmPools") + .serviceDetails( + "GenerativeAi", + "ListSandboxWarmPools", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPoolCollection/ListSandboxWarmPools") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxWarmPoolsRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendQueryParam("name", request.getName()) + .appendEnumQueryParam("type", request.getType()) + .appendEnumQueryParam("shape", request.getShape()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection.class, + ListSandboxWarmPoolsResponse.Builder::sandboxWarmPoolCollection) + .handleResponseHeaderString( + "opc-request-id", ListSandboxWarmPoolsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListSandboxWarmPoolsResponse.Builder::opcNextPage) + .callSync(); + } + @Override public ListSemanticStoresResponse listSemanticStores(ListSemanticStoresRequest request) { @@ -3702,6 +3908,52 @@ public UpdateRoutingProfileResponse updateRoutingProfile(UpdateRoutingProfileReq .callSync(); } + @Override + public UpdateSandboxWarmPoolResponse updateSandboxWarmPool( + UpdateSandboxWarmPoolRequest request) { + + Validate.notBlank(request.getProjectId(), "projectId must not be blank"); + + Validate.notBlank(request.getName(), "name must not be blank"); + Objects.requireNonNull( + request.getUpdateSandboxWarmPoolDetails(), + "updateSandboxWarmPoolDetails is required"); + + java.util.Map requiredParametersMap = new java.util.HashMap<>(); + requiredParametersMap.put("projectId", request.getProjectId()); + requiredParametersMap.put("name", request.getName()); + + return clientCall(request, UpdateSandboxWarmPoolResponse::builder) + .logger(LOG, "updateSandboxWarmPool") + .serviceDetails( + "GenerativeAi", + "UpdateSandboxWarmPool", + "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/SandboxWarmPool/UpdateSandboxWarmPool") + .requiredParametersMap(requiredParametersMap) + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateSandboxWarmPoolRequest::builder) + .basePath("/20231130") + .appendPathParam("generativeAiProjects") + .appendPathParam(request.getProjectId()) + .appendPathParam("sandboxWarmPools") + .appendPathParam(request.getName()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeai.model.SandboxWarmPool.class, + UpdateSandboxWarmPoolResponse.Builder::sandboxWarmPool) + .handleResponseHeaderString( + "opc-work-request-id", + UpdateSandboxWarmPoolResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString("etag", UpdateSandboxWarmPoolResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", UpdateSandboxWarmPoolResponse.Builder::opcRequestId) + .callSync(); + } + @Override public UpdateSemanticStoreResponse updateSemanticStore(UpdateSemanticStoreRequest request) { diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiPaginators.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiPaginators.java index 08a9be50bd8..34b9ad368b5 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiPaginators.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiPaginators.java @@ -279,6 +279,138 @@ public ListDedicatedAiClustersResponse apply( }); } + /** + * Creates a new iterable which will iterate over the responses received from the + * listDedicatedAiClustersAllocatableGpus 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 + listDedicatedAiClustersAllocatableGpusResponseIterator( + final ListDedicatedAiClustersAllocatableGpusRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListDedicatedAiClustersAllocatableGpusRequest.Builder, + ListDedicatedAiClustersAllocatableGpusRequest, + ListDedicatedAiClustersAllocatableGpusResponse>( + new java.util.function.Supplier< + ListDedicatedAiClustersAllocatableGpusRequest.Builder>() { + @Override + public ListDedicatedAiClustersAllocatableGpusRequest.Builder get() { + return ListDedicatedAiClustersAllocatableGpusRequest.builder() + .copy(request); + } + }, + new java.util.function.Function< + ListDedicatedAiClustersAllocatableGpusResponse, String>() { + @Override + public String apply(ListDedicatedAiClustersAllocatableGpusResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDedicatedAiClustersAllocatableGpusRequest.Builder>, + ListDedicatedAiClustersAllocatableGpusRequest>() { + @Override + public ListDedicatedAiClustersAllocatableGpusRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDedicatedAiClustersAllocatableGpusRequest.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< + ListDedicatedAiClustersAllocatableGpusRequest, + ListDedicatedAiClustersAllocatableGpusResponse>() { + @Override + public ListDedicatedAiClustersAllocatableGpusResponse apply( + ListDedicatedAiClustersAllocatableGpusRequest request) { + return client.listDedicatedAiClustersAllocatableGpus(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.generativeai.model.AllocatableGpuSummary} objects contained in responses from + * the listDedicatedAiClustersAllocatableGpus 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.generativeai.model.AllocatableGpuSummary} objects contained in responses + * received from the service. + */ + public Iterable + listDedicatedAiClustersAllocatableGpusRecordIterator( + final ListDedicatedAiClustersAllocatableGpusRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListDedicatedAiClustersAllocatableGpusRequest.Builder, + ListDedicatedAiClustersAllocatableGpusRequest, + ListDedicatedAiClustersAllocatableGpusResponse, + com.oracle.bmc.generativeai.model.AllocatableGpuSummary>( + new java.util.function.Supplier< + ListDedicatedAiClustersAllocatableGpusRequest.Builder>() { + @Override + public ListDedicatedAiClustersAllocatableGpusRequest.Builder get() { + return ListDedicatedAiClustersAllocatableGpusRequest.builder() + .copy(request); + } + }, + new java.util.function.Function< + ListDedicatedAiClustersAllocatableGpusResponse, String>() { + @Override + public String apply(ListDedicatedAiClustersAllocatableGpusResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDedicatedAiClustersAllocatableGpusRequest.Builder>, + ListDedicatedAiClustersAllocatableGpusRequest>() { + @Override + public ListDedicatedAiClustersAllocatableGpusRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListDedicatedAiClustersAllocatableGpusRequest.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< + ListDedicatedAiClustersAllocatableGpusRequest, + ListDedicatedAiClustersAllocatableGpusResponse>() { + @Override + public ListDedicatedAiClustersAllocatableGpusResponse apply( + ListDedicatedAiClustersAllocatableGpusRequest request) { + return client.listDedicatedAiClustersAllocatableGpus(request); + } + }, + new java.util.function.Function< + ListDedicatedAiClustersAllocatableGpusResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListDedicatedAiClustersAllocatableGpusResponse response) { + return response.getAllocatableGpuCollection().getItems(); + } + }); + } + /** * Creates a new iterable which will iterate over the responses received from the listEndpoints * operation. This iterable will fetch more data from the server as needed. @@ -1621,6 +1753,126 @@ public ListRoutingProfilesResponse apply(ListRoutingProfilesRequest request) { }); } + /** + * Creates a new iterable which will iterate over the responses received from the + * listSandboxWarmPools 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 listSandboxWarmPoolsResponseIterator( + final ListSandboxWarmPoolsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListSandboxWarmPoolsRequest.Builder, + ListSandboxWarmPoolsRequest, + ListSandboxWarmPoolsResponse>( + new java.util.function.Supplier() { + @Override + public ListSandboxWarmPoolsRequest.Builder get() { + return ListSandboxWarmPoolsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxWarmPoolsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxWarmPoolsRequest.Builder>, + ListSandboxWarmPoolsRequest>() { + @Override + public ListSandboxWarmPoolsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxWarmPoolsRequest.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< + ListSandboxWarmPoolsRequest, ListSandboxWarmPoolsResponse>() { + @Override + public ListSandboxWarmPoolsResponse apply(ListSandboxWarmPoolsRequest request) { + return client.listSandboxWarmPools(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary} objects contained in responses from + * the listSandboxWarmPools 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.generativeai.model.SandboxWarmPoolSummary} objects contained in responses + * received from the service. + */ + public Iterable + listSandboxWarmPoolsRecordIterator(final ListSandboxWarmPoolsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListSandboxWarmPoolsRequest.Builder, + ListSandboxWarmPoolsRequest, + ListSandboxWarmPoolsResponse, + com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary>( + new java.util.function.Supplier() { + @Override + public ListSandboxWarmPoolsRequest.Builder get() { + return ListSandboxWarmPoolsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxWarmPoolsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxWarmPoolsRequest.Builder>, + ListSandboxWarmPoolsRequest>() { + @Override + public ListSandboxWarmPoolsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxWarmPoolsRequest.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< + ListSandboxWarmPoolsRequest, ListSandboxWarmPoolsResponse>() { + @Override + public ListSandboxWarmPoolsResponse apply(ListSandboxWarmPoolsRequest request) { + return client.listSandboxWarmPools(request); + } + }, + new java.util.function.Function< + ListSandboxWarmPoolsResponse, + java.util.List< + com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary>>() { + @Override + public java.util.List + apply(ListSandboxWarmPoolsResponse response) { + return response.getSandboxWarmPoolCollection().getItems(); + } + }); + } + /** * Creates a new iterable which will iterate over the responses received from the * listSemanticStores operation. This iterable will fetch more data from the server as needed. diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiWaiters.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiWaiters.java index bf691946fc8..4dd401205c0 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiWaiters.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/GenerativeAiWaiters.java @@ -1332,6 +1332,115 @@ public boolean test(GetRoutingProfileResponse response) { request); } + /** + * 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 + forSandboxWarmPool( + GetSandboxWarmPoolRequest request, + com.oracle.bmc.generativeai.model.SandboxWarmPool.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 forSandboxWarmPool( + 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 + forSandboxWarmPool( + GetSandboxWarmPoolRequest request, + com.oracle.bmc.generativeai.model.SandboxWarmPool.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 forSandboxWarmPool( + 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 + forSandboxWarmPool( + GetSandboxWarmPoolRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.generativeai.model.SandboxWarmPool.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 forSandboxWarmPool( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for SandboxWarmPool. + private com.oracle.bmc.waiter.Waiter + forSandboxWarmPool( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetSandboxWarmPoolRequest request, + final com.oracle.bmc.generativeai.model.SandboxWarmPool.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< + GetSandboxWarmPoolRequest, GetSandboxWarmPoolResponse>() { + @Override + public GetSandboxWarmPoolResponse apply( + GetSandboxWarmPoolRequest request) { + return client.getSandboxWarmPool(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetSandboxWarmPoolResponse response) { + return targetStatesSet.contains( + response.getSandboxWarmPool().getLifecycleState()); + } + }, + targetStatesSet.contains( + com.oracle.bmc.generativeai.model.SandboxWarmPool.LifecycleState + .Deleted)), + request); + } + /** * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. * diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllocatableGpuCollection.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllocatableGpuCollection.java new file mode 100644 index 00000000000..b200d7e408f --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllocatableGpuCollection.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.generativeai.model; + +/** + * Results of an allocatable GPU search for launching dedicated AI clusters.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AllocatableGpuCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AllocatableGpuCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public AllocatableGpuCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** List of allocatable GPU summaries. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * List of allocatable GPU summaries. + * + * @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 AllocatableGpuCollection build() { + AllocatableGpuCollection model = new AllocatableGpuCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AllocatableGpuCollection 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 allocatable GPU summaries. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * List of allocatable GPU summaries. + * + * @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("AllocatableGpuCollection("); + 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 AllocatableGpuCollection)) { + return false; + } + + AllocatableGpuCollection other = (AllocatableGpuCollection) 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-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllocatableGpuSummary.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllocatableGpuSummary.java new file mode 100644 index 00000000000..9d24f5fb00b --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllocatableGpuSummary.java @@ -0,0 +1,325 @@ +/** + * 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.generativeai.model; + +/** + * Information about allocatable GPUs that can be used to launch dedicated AI clusters.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AllocatableGpuSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AllocatableGpuSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "computeShape", + "totalAvailableGpuUnits", + "totalUsedGpuUnits", + "maxAllocatableGpuUnits", + "gpuAllocations" + }) + public AllocatableGpuSummary( + String computeShape, + Integer totalAvailableGpuUnits, + Integer totalUsedGpuUnits, + Integer maxAllocatableGpuUnits, + java.util.List gpuAllocations) { + super(); + this.computeShape = computeShape; + this.totalAvailableGpuUnits = totalAvailableGpuUnits; + this.totalUsedGpuUnits = totalUsedGpuUnits; + this.maxAllocatableGpuUnits = maxAllocatableGpuUnits; + this.gpuAllocations = gpuAllocations; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The compute shape for the allocatable GPUs. */ + @com.fasterxml.jackson.annotation.JsonProperty("computeShape") + private String computeShape; + + /** + * The compute shape for the allocatable GPUs. + * + * @param computeShape the value to set + * @return this builder + */ + public Builder computeShape(String computeShape) { + this.computeShape = computeShape; + this.__explicitlySet__.add("computeShape"); + return this; + } + /** The total number of available GPU units for the compute shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("totalAvailableGpuUnits") + private Integer totalAvailableGpuUnits; + + /** + * The total number of available GPU units for the compute shape. + * + * @param totalAvailableGpuUnits the value to set + * @return this builder + */ + public Builder totalAvailableGpuUnits(Integer totalAvailableGpuUnits) { + this.totalAvailableGpuUnits = totalAvailableGpuUnits; + this.__explicitlySet__.add("totalAvailableGpuUnits"); + return this; + } + /** The total number of used GPU units for the compute shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("totalUsedGpuUnits") + private Integer totalUsedGpuUnits; + + /** + * The total number of used GPU units for the compute shape. + * + * @param totalUsedGpuUnits the value to set + * @return this builder + */ + public Builder totalUsedGpuUnits(Integer totalUsedGpuUnits) { + this.totalUsedGpuUnits = totalUsedGpuUnits; + this.__explicitlySet__.add("totalUsedGpuUnits"); + return this; + } + /** + * The largest contiguous number of GPU units available from one reservation-backed host for + * the compute shape. This includes an unused reserved host that must be provisioned before + * workloads can be scheduled. + */ + @com.fasterxml.jackson.annotation.JsonProperty("maxAllocatableGpuUnits") + private Integer maxAllocatableGpuUnits; + + /** + * The largest contiguous number of GPU units available from one reservation-backed host for + * the compute shape. This includes an unused reserved host that must be provisioned before + * workloads can be scheduled. + * + * @param maxAllocatableGpuUnits the value to set + * @return this builder + */ + public Builder maxAllocatableGpuUnits(Integer maxAllocatableGpuUnits) { + this.maxAllocatableGpuUnits = maxAllocatableGpuUnits; + this.__explicitlySet__.add("maxAllocatableGpuUnits"); + return this; + } + /** + * The GPU allocation details for the compute shape. Each item represents one underlying + * capacity allocation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("gpuAllocations") + private java.util.List gpuAllocations; + + /** + * The GPU allocation details for the compute shape. Each item represents one underlying + * capacity allocation. + * + * @param gpuAllocations the value to set + * @return this builder + */ + public Builder gpuAllocations(java.util.List gpuAllocations) { + this.gpuAllocations = gpuAllocations; + this.__explicitlySet__.add("gpuAllocations"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AllocatableGpuSummary build() { + AllocatableGpuSummary model = + new AllocatableGpuSummary( + this.computeShape, + this.totalAvailableGpuUnits, + this.totalUsedGpuUnits, + this.maxAllocatableGpuUnits, + this.gpuAllocations); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AllocatableGpuSummary model) { + if (model.wasPropertyExplicitlySet("computeShape")) { + this.computeShape(model.getComputeShape()); + } + if (model.wasPropertyExplicitlySet("totalAvailableGpuUnits")) { + this.totalAvailableGpuUnits(model.getTotalAvailableGpuUnits()); + } + if (model.wasPropertyExplicitlySet("totalUsedGpuUnits")) { + this.totalUsedGpuUnits(model.getTotalUsedGpuUnits()); + } + if (model.wasPropertyExplicitlySet("maxAllocatableGpuUnits")) { + this.maxAllocatableGpuUnits(model.getMaxAllocatableGpuUnits()); + } + if (model.wasPropertyExplicitlySet("gpuAllocations")) { + this.gpuAllocations(model.getGpuAllocations()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The compute shape for the allocatable GPUs. */ + @com.fasterxml.jackson.annotation.JsonProperty("computeShape") + private final String computeShape; + + /** + * The compute shape for the allocatable GPUs. + * + * @return the value + */ + public String getComputeShape() { + return computeShape; + } + + /** The total number of available GPU units for the compute shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("totalAvailableGpuUnits") + private final Integer totalAvailableGpuUnits; + + /** + * The total number of available GPU units for the compute shape. + * + * @return the value + */ + public Integer getTotalAvailableGpuUnits() { + return totalAvailableGpuUnits; + } + + /** The total number of used GPU units for the compute shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("totalUsedGpuUnits") + private final Integer totalUsedGpuUnits; + + /** + * The total number of used GPU units for the compute shape. + * + * @return the value + */ + public Integer getTotalUsedGpuUnits() { + return totalUsedGpuUnits; + } + + /** + * The largest contiguous number of GPU units available from one reservation-backed host for the + * compute shape. This includes an unused reserved host that must be provisioned before + * workloads can be scheduled. + */ + @com.fasterxml.jackson.annotation.JsonProperty("maxAllocatableGpuUnits") + private final Integer maxAllocatableGpuUnits; + + /** + * The largest contiguous number of GPU units available from one reservation-backed host for the + * compute shape. This includes an unused reserved host that must be provisioned before + * workloads can be scheduled. + * + * @return the value + */ + public Integer getMaxAllocatableGpuUnits() { + return maxAllocatableGpuUnits; + } + + /** + * The GPU allocation details for the compute shape. Each item represents one underlying + * capacity allocation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("gpuAllocations") + private final java.util.List gpuAllocations; + + /** + * The GPU allocation details for the compute shape. Each item represents one underlying + * capacity allocation. + * + * @return the value + */ + public java.util.List getGpuAllocations() { + return gpuAllocations; + } + + @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("AllocatableGpuSummary("); + sb.append("super=").append(super.toString()); + sb.append("computeShape=").append(String.valueOf(this.computeShape)); + sb.append(", totalAvailableGpuUnits=").append(String.valueOf(this.totalAvailableGpuUnits)); + sb.append(", totalUsedGpuUnits=").append(String.valueOf(this.totalUsedGpuUnits)); + sb.append(", maxAllocatableGpuUnits=").append(String.valueOf(this.maxAllocatableGpuUnits)); + sb.append(", gpuAllocations=").append(String.valueOf(this.gpuAllocations)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AllocatableGpuSummary)) { + return false; + } + + AllocatableGpuSummary other = (AllocatableGpuSummary) o; + return java.util.Objects.equals(this.computeShape, other.computeShape) + && java.util.Objects.equals( + this.totalAvailableGpuUnits, other.totalAvailableGpuUnits) + && java.util.Objects.equals(this.totalUsedGpuUnits, other.totalUsedGpuUnits) + && java.util.Objects.equals( + this.maxAllocatableGpuUnits, other.maxAllocatableGpuUnits) + && java.util.Objects.equals(this.gpuAllocations, other.gpuAllocations) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.computeShape == null ? 43 : this.computeShape.hashCode()); + result = + (result * PRIME) + + (this.totalAvailableGpuUnits == null + ? 43 + : this.totalAvailableGpuUnits.hashCode()); + result = + (result * PRIME) + + (this.totalUsedGpuUnits == null ? 43 : this.totalUsedGpuUnits.hashCode()); + result = + (result * PRIME) + + (this.maxAllocatableGpuUnits == null + ? 43 + : this.maxAllocatableGpuUnits.hashCode()); + result = + (result * PRIME) + + (this.gpuAllocations == null ? 43 : this.gpuAllocations.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllowedDomain.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllowedDomain.java new file mode 100644 index 00000000000..d3792e904f0 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/AllowedDomain.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.generativeai.model; + +/** + * Hostnames and ports allowed by a sandbox network policy.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = AllowedDomain.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AllowedDomain extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"hostnames", "ports"}) + public AllowedDomain(java.util.List hostnames, java.util.List ports) { + super(); + this.hostnames = hostnames; + this.ports = ports; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Hostnames allowed by this domain rule. */ + @com.fasterxml.jackson.annotation.JsonProperty("hostnames") + private java.util.List hostnames; + + /** + * Hostnames allowed by this domain rule. + * + * @param hostnames the value to set + * @return this builder + */ + public Builder hostnames(java.util.List hostnames) { + this.hostnames = hostnames; + this.__explicitlySet__.add("hostnames"); + return this; + } + /** Ports allowed by this domain rule. */ + @com.fasterxml.jackson.annotation.JsonProperty("ports") + private java.util.List ports; + + /** + * Ports allowed by this domain rule. + * + * @param ports the value to set + * @return this builder + */ + public Builder ports(java.util.List ports) { + this.ports = ports; + this.__explicitlySet__.add("ports"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AllowedDomain build() { + AllowedDomain model = new AllowedDomain(this.hostnames, this.ports); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AllowedDomain model) { + if (model.wasPropertyExplicitlySet("hostnames")) { + this.hostnames(model.getHostnames()); + } + if (model.wasPropertyExplicitlySet("ports")) { + this.ports(model.getPorts()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Hostnames allowed by this domain rule. */ + @com.fasterxml.jackson.annotation.JsonProperty("hostnames") + private final java.util.List hostnames; + + /** + * Hostnames allowed by this domain rule. + * + * @return the value + */ + public java.util.List getHostnames() { + return hostnames; + } + + /** Ports allowed by this domain rule. */ + @com.fasterxml.jackson.annotation.JsonProperty("ports") + private final java.util.List ports; + + /** + * Ports allowed by this domain rule. + * + * @return the value + */ + public java.util.List getPorts() { + return ports; + } + + @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("AllowedDomain("); + sb.append("super=").append(super.toString()); + sb.append("hostnames=").append(String.valueOf(this.hostnames)); + sb.append(", ports=").append(String.valueOf(this.ports)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AllowedDomain)) { + return false; + } + + AllowedDomain other = (AllowedDomain) o; + return java.util.Objects.equals(this.hostnames, other.hostnames) + && java.util.Objects.equals(this.ports, other.ports) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.hostnames == null ? 43 : this.hostnames.hashCode()); + result = (result * PRIME) + (this.ports == null ? 43 : this.ports.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ComputeCapacityReservation.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ComputeCapacityReservation.java new file mode 100644 index 00000000000..23b9942f3c6 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ComputeCapacityReservation.java @@ -0,0 +1,99 @@ +/** + * 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.generativeai.model; + +/** + * The compute capacity reservation in customer tenancy.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ComputeCapacityReservation.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ComputeCapacityReservation + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + public ComputeCapacityReservation() { + super(); + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ComputeCapacityReservation build() { + ComputeCapacityReservation model = new ComputeCapacityReservation(); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ComputeCapacityReservation model) { + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @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("ComputeCapacityReservation("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ComputeCapacityReservation)) { + return false; + } + + ComputeCapacityReservation other = (ComputeCapacityReservation) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateDedicatedAiClusterDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateDedicatedAiClusterDetails.java index f2806c11d92..62c43b33556 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateDedicatedAiClusterDetails.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateDedicatedAiClusterDetails.java @@ -30,6 +30,7 @@ public final class CreateDedicatedAiClusterDetails "compartmentId", "unitCount", "unitShape", + "capacityReservationId", "freeformTags", "definedTags" }) @@ -40,6 +41,7 @@ public CreateDedicatedAiClusterDetails( String compartmentId, Integer unitCount, DedicatedAiCluster.UnitShape unitShape, + String capacityReservationId, java.util.Map freeformTags, java.util.Map> definedTags) { super(); @@ -49,6 +51,7 @@ public CreateDedicatedAiClusterDetails( this.compartmentId = compartmentId; this.unitCount = unitCount; this.unitShape = unitShape; + this.capacityReservationId = capacityReservationId; this.freeformTags = freeformTags; this.definedTags = definedTags; } @@ -154,10 +157,10 @@ public Builder unitCount(Integer unitCount) { * A100_80G_X4, A100_80G_X8 - H100_X1, H100_X2, H100_X4, H100_X8 - H100_X16, H100_X32 - * H200_X1, H200_X2, H200_X4, H200_X8 - B200_X16, B200_X32 - B300_X1, B300_X2, B300_X4, * B300_X8, B300_X16, B300_X32 - L40S_X1, L40S_X2, L40S_X4, L40S_X8, L40S_X16, L40S_X32 - - * MI300X_X1, MI300X_X2, MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_A10_X2 - - * OAI_H100_X1 - OAI_H100_X2 - OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 - - * OAI_A100_40G_X1 - OAI_A100_40G_X4 - B200_X1 - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 - - * OAI_B200_X2 - OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - + * MI300X_X1, MI300X_X2, MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_H100_X4 - + * OAI_A10_X2 - OAI_H100_X1 - OAI_H100_X2 - OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 + * - OAI_A100_40G_X1 - OAI_A100_40G_X4 - B200_X1 - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 + * - OAI_B200_X2 - OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - * B300_X2 - B300_X4 - B300_X8 - B300_X16 - B300_X32 - L40S_X1 - L40S_X2 - L40S_X4 - L40S_X8 * - L40S_X16 - L40S_X32 - MI300X_X1 - MI300X_X2 - MI300X_X4 - MI300X_X8 - MI300X_X16 - * MI300X_X32 - COHERE_B300_X1 - META_B300_X1 - OAI_B300_X1 @@ -181,10 +184,10 @@ public Builder unitCount(Integer unitCount) { * A100_80G_X4, A100_80G_X8 - H100_X1, H100_X2, H100_X4, H100_X8 - H100_X16, H100_X32 - * H200_X1, H200_X2, H200_X4, H200_X8 - B200_X16, B200_X32 - B300_X1, B300_X2, B300_X4, * B300_X8, B300_X16, B300_X32 - L40S_X1, L40S_X2, L40S_X4, L40S_X8, L40S_X16, L40S_X32 - - * MI300X_X1, MI300X_X2, MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_A10_X2 - - * OAI_H100_X1 - OAI_H100_X2 - OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 - - * OAI_A100_40G_X1 - OAI_A100_40G_X4 - B200_X1 - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 - - * OAI_B200_X2 - OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - + * MI300X_X1, MI300X_X2, MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_H100_X4 - + * OAI_A10_X2 - OAI_H100_X1 - OAI_H100_X2 - OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 + * - OAI_A100_40G_X1 - OAI_A100_40G_X4 - B200_X1 - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 + * - OAI_B200_X2 - OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - * B300_X2 - B300_X4 - B300_X8 - B300_X16 - B300_X32 - L40S_X1 - L40S_X2 - L40S_X4 - L40S_X8 * - L40S_X16 - L40S_X32 - MI300X_X1 - MI300X_X2 - MI300X_X4 - MI300X_X8 - MI300X_X16 - * MI300X_X32 - COHERE_B300_X1 - META_B300_X1 - OAI_B300_X1 @@ -197,6 +200,21 @@ public Builder unitShape(DedicatedAiCluster.UnitShape unitShape) { this.__explicitlySet__.add("unitShape"); return this; } + /** The OCID of the capacity reservation. */ + @com.fasterxml.jackson.annotation.JsonProperty("capacityReservationId") + private String capacityReservationId; + + /** + * The OCID of the capacity reservation. + * + * @param capacityReservationId the value to set + * @return this builder + */ + public Builder capacityReservationId(String capacityReservationId) { + this.capacityReservationId = capacityReservationId; + this.__explicitlySet__.add("capacityReservationId"); + 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 @@ -261,6 +279,7 @@ public CreateDedicatedAiClusterDetails build() { this.compartmentId, this.unitCount, this.unitShape, + this.capacityReservationId, this.freeformTags, this.definedTags); for (String explicitlySetProperty : this.__explicitlySet__) { @@ -289,6 +308,9 @@ public Builder copy(CreateDedicatedAiClusterDetails model) { if (model.wasPropertyExplicitlySet("unitShape")) { this.unitShape(model.getUnitShape()); } + if (model.wasPropertyExplicitlySet("capacityReservationId")) { + this.capacityReservationId(model.getCapacityReservationId()); + } if (model.wasPropertyExplicitlySet("freeformTags")) { this.freeformTags(model.getFreeformTags()); } @@ -397,13 +419,13 @@ public Integer getUnitCount() { * A100_80G_X8 - H100_X1, H100_X2, H100_X4, H100_X8 - H100_X16, H100_X32 - H200_X1, H200_X2, * H200_X4, H200_X8 - B200_X16, B200_X32 - B300_X1, B300_X2, B300_X4, B300_X8, B300_X16, * B300_X32 - L40S_X1, L40S_X2, L40S_X4, L40S_X8, L40S_X16, L40S_X32 - MI300X_X1, MI300X_X2, - * MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_A10_X2 - OAI_H100_X1 - OAI_H100_X2 - - * OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 - OAI_A100_40G_X1 - OAI_A100_40G_X4 - B200_X1 - * - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 - OAI_B200_X2 - OAI_B200_X4 - OAI_B200_X8 - - * SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - B300_X2 - B300_X4 - B300_X8 - B300_X16 - - * B300_X32 - L40S_X1 - L40S_X2 - L40S_X4 - L40S_X8 - L40S_X16 - L40S_X32 - MI300X_X1 - - * MI300X_X2 - MI300X_X4 - MI300X_X8 - MI300X_X16 - MI300X_X32 - COHERE_B300_X1 - META_B300_X1 - - * OAI_B300_X1 + * MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_H100_X4 - OAI_A10_X2 - OAI_H100_X1 - + * OAI_H100_X2 - OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 - OAI_A100_40G_X1 - + * OAI_A100_40G_X4 - B200_X1 - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 - OAI_B200_X2 - + * OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - B300_X2 - B300_X4 - + * B300_X8 - B300_X16 - B300_X32 - L40S_X1 - L40S_X2 - L40S_X4 - L40S_X8 - L40S_X16 - L40S_X32 - + * MI300X_X1 - MI300X_X2 - MI300X_X4 - MI300X_X8 - MI300X_X16 - MI300X_X32 - COHERE_B300_X1 - + * META_B300_X1 - OAI_B300_X1 */ @com.fasterxml.jackson.annotation.JsonProperty("unitShape") private final DedicatedAiCluster.UnitShape unitShape; @@ -424,13 +446,13 @@ public Integer getUnitCount() { * A100_80G_X8 - H100_X1, H100_X2, H100_X4, H100_X8 - H100_X16, H100_X32 - H200_X1, H200_X2, * H200_X4, H200_X8 - B200_X16, B200_X32 - B300_X1, B300_X2, B300_X4, B300_X8, B300_X16, * B300_X32 - L40S_X1, L40S_X2, L40S_X4, L40S_X8, L40S_X16, L40S_X32 - MI300X_X1, MI300X_X2, - * MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_A10_X2 - OAI_H100_X1 - OAI_H100_X2 - - * OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 - OAI_A100_40G_X1 - OAI_A100_40G_X4 - B200_X1 - * - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 - OAI_B200_X2 - OAI_B200_X4 - OAI_B200_X8 - - * SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - B300_X2 - B300_X4 - B300_X8 - B300_X16 - - * B300_X32 - L40S_X1 - L40S_X2 - L40S_X4 - L40S_X8 - L40S_X16 - L40S_X32 - MI300X_X1 - - * MI300X_X2 - MI300X_X4 - MI300X_X8 - MI300X_X16 - MI300X_X32 - COHERE_B300_X1 - META_B300_X1 - - * OAI_B300_X1 + * MI300X_X4, MI300X_X8, MI300X_X16, MI300X_X32 - OAI_H100_X4 - OAI_A10_X2 - OAI_H100_X1 - + * OAI_H100_X2 - OAI_H200_X1 - OAI_A100_80G_X1 - OAI_A100_80G_X2 - OAI_A100_40G_X1 - + * OAI_A100_40G_X4 - B200_X1 - B200_X2 - B200_X4 - B200_X8 - OAI_B200_X1 - OAI_B200_X2 - + * OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 - B200_X16 - B200_X32 - B300_X1 - B300_X2 - B300_X4 - + * B300_X8 - B300_X16 - B300_X32 - L40S_X1 - L40S_X2 - L40S_X4 - L40S_X8 - L40S_X16 - L40S_X32 - + * MI300X_X1 - MI300X_X2 - MI300X_X4 - MI300X_X8 - MI300X_X16 - MI300X_X32 - COHERE_B300_X1 - + * META_B300_X1 - OAI_B300_X1 * * @return the value */ @@ -438,6 +460,19 @@ public DedicatedAiCluster.UnitShape getUnitShape() { return unitShape; } + /** The OCID of the capacity reservation. */ + @com.fasterxml.jackson.annotation.JsonProperty("capacityReservationId") + private final String capacityReservationId; + + /** + * The OCID of the capacity reservation. + * + * @return the value + */ + public String getCapacityReservationId() { + return capacityReservationId; + } + /** * 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 @@ -505,6 +540,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); sb.append(", unitCount=").append(String.valueOf(this.unitCount)); sb.append(", unitShape=").append(String.valueOf(this.unitShape)); + sb.append(", capacityReservationId=").append(String.valueOf(this.capacityReservationId)); sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); sb.append(", definedTags=").append(String.valueOf(this.definedTags)); sb.append(")"); @@ -527,6 +563,7 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.compartmentId, other.compartmentId) && java.util.Objects.equals(this.unitCount, other.unitCount) && java.util.Objects.equals(this.unitShape, other.unitShape) + && java.util.Objects.equals(this.capacityReservationId, other.capacityReservationId) && java.util.Objects.equals(this.freeformTags, other.freeformTags) && java.util.Objects.equals(this.definedTags, other.definedTags) && super.equals(other); @@ -544,6 +581,11 @@ public int hashCode() { + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); result = (result * PRIME) + (this.unitCount == null ? 43 : this.unitCount.hashCode()); result = (result * PRIME) + (this.unitShape == null ? 43 : this.unitShape.hashCode()); + result = + (result * PRIME) + + (this.capacityReservationId == null + ? 43 + : this.capacityReservationId.hashCode()); result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); result = (result * PRIME) + super.hashCode(); diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateGenerativeAiProjectDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateGenerativeAiProjectDetails.java index d7f9c09ce0e..36efeb1e446 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateGenerativeAiProjectDetails.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateGenerativeAiProjectDetails.java @@ -30,6 +30,7 @@ public final class CreateGenerativeAiProjectDetails "conversationConfig", "longTermMemoryConfig", "shortTermMemoryOptimizationConfig", + "sandboxConfig", "freeformTags", "definedTags" }) @@ -40,6 +41,7 @@ public CreateGenerativeAiProjectDetails( ConversationConfig conversationConfig, LongTermMemoryConfig longTermMemoryConfig, ShortTermMemoryOptimizationConfig shortTermMemoryOptimizationConfig, + SandboxConfig sandboxConfig, java.util.Map freeformTags, java.util.Map> definedTags) { super(); @@ -49,6 +51,7 @@ public CreateGenerativeAiProjectDetails( this.conversationConfig = conversationConfig; this.longTermMemoryConfig = longTermMemoryConfig; this.shortTermMemoryOptimizationConfig = shortTermMemoryOptimizationConfig; + this.sandboxConfig = sandboxConfig; this.freeformTags = freeformTags; this.definedTags = definedTags; } @@ -128,6 +131,15 @@ public Builder shortTermMemoryOptimizationConfig( this.__explicitlySet__.add("shortTermMemoryOptimizationConfig"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("sandboxConfig") + private SandboxConfig sandboxConfig; + + public Builder sandboxConfig(SandboxConfig sandboxConfig) { + this.sandboxConfig = sandboxConfig; + this.__explicitlySet__.add("sandboxConfig"); + 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 @@ -192,6 +204,7 @@ public CreateGenerativeAiProjectDetails build() { this.conversationConfig, this.longTermMemoryConfig, this.shortTermMemoryOptimizationConfig, + this.sandboxConfig, this.freeformTags, this.definedTags); for (String explicitlySetProperty : this.__explicitlySet__) { @@ -221,6 +234,9 @@ public Builder copy(CreateGenerativeAiProjectDetails model) { this.shortTermMemoryOptimizationConfig( model.getShortTermMemoryOptimizationConfig()); } + if (model.wasPropertyExplicitlySet("sandboxConfig")) { + this.sandboxConfig(model.getSandboxConfig()); + } if (model.wasPropertyExplicitlySet("freeformTags")) { this.freeformTags(model.getFreeformTags()); } @@ -300,6 +316,13 @@ public ShortTermMemoryOptimizationConfig getShortTermMemoryOptimizationConfig() return shortTermMemoryOptimizationConfig; } + @com.fasterxml.jackson.annotation.JsonProperty("sandboxConfig") + private final SandboxConfig sandboxConfig; + + public SandboxConfig getSandboxConfig() { + return sandboxConfig; + } + /** * 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 @@ -368,6 +391,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", longTermMemoryConfig=").append(String.valueOf(this.longTermMemoryConfig)); sb.append(", shortTermMemoryOptimizationConfig=") .append(String.valueOf(this.shortTermMemoryOptimizationConfig)); + sb.append(", sandboxConfig=").append(String.valueOf(this.sandboxConfig)); sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); sb.append(", definedTags=").append(String.valueOf(this.definedTags)); sb.append(")"); @@ -392,6 +416,7 @@ public boolean equals(Object o) { && java.util.Objects.equals( this.shortTermMemoryOptimizationConfig, other.shortTermMemoryOptimizationConfig) + && java.util.Objects.equals(this.sandboxConfig, other.sandboxConfig) && java.util.Objects.equals(this.freeformTags, other.freeformTags) && java.util.Objects.equals(this.definedTags, other.definedTags) && super.equals(other); @@ -421,6 +446,9 @@ public int hashCode() { + (this.shortTermMemoryOptimizationConfig == null ? 43 : this.shortTermMemoryOptimizationConfig.hashCode()); + result = + (result * PRIME) + + (this.sandboxConfig == null ? 43 : this.sandboxConfig.hashCode()); result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); result = (result * PRIME) + super.hashCode(); diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateSandboxWarmPoolDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateSandboxWarmPoolDetails.java new file mode 100644 index 00000000000..3f706961c0d --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateSandboxWarmPoolDetails.java @@ -0,0 +1,407 @@ +/** + * 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.generativeai.model; + +/** + * Create Sandbox Warm Pool Details.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSandboxWarmPoolDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSandboxWarmPoolDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "name", + "type", + "containerImage", + "shape", + "desiredCapacity" + }) + public CreateSandboxWarmPoolDetails( + String name, Type type, String containerImage, Shape shape, Integer desiredCapacity) { + super(); + this.name = name; + this.type = type; + this.containerImage = containerImage; + this.shape = shape; + this.desiredCapacity = desiredCapacity; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Unique immutable name within the Project. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Unique immutable name within the Project. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** + * MANAGED uses the service-provided python-3.11 runtime. CUSTOM uses a customer-provided + * containerImage. Both types support named pool creation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private Type type; + + /** + * MANAGED uses the service-provided python-3.11 runtime. CUSTOM uses a customer-provided + * containerImage. Both types support named pool creation. + * + * @param type the value to set + * @return this builder + */ + public Builder type(Type type) { + this.type = type; + this.__explicitlySet__.add("type"); + return this; + } + /** + * Required for CUSTOM and must be omitted for MANAGED. A CUSTOM image must be a + * digest-pinned same-region OCIR reference, using sha256 with exactly 64 lowercase + * hexadecimal characters. The CP workflow prepares the template through the data plane, + * reusing current BYOC image and Project identity validation. Successful configuration does + * not guarantee image pull or runtime readiness. + */ + @com.fasterxml.jackson.annotation.JsonProperty("containerImage") + private String containerImage; + + /** + * Required for CUSTOM and must be omitted for MANAGED. A CUSTOM image must be a + * digest-pinned same-region OCIR reference, using sha256 with exactly 64 lowercase + * hexadecimal characters. The CP workflow prepares the template through the data plane, + * reusing current BYOC image and Project identity validation. Successful configuration does + * not guarantee image pull or runtime readiness. + * + * @param containerImage the value to set + * @return this builder + */ + public Builder containerImage(String containerImage) { + this.containerImage = containerImage; + this.__explicitlySet__.add("containerImage"); + return this; + } + /** Compute shape for each idle Sandbox member. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private Shape shape; + + /** + * Compute shape for each idle Sandbox member. + * + * @param shape the value to set + * @return this builder + */ + public Builder shape(Shape shape) { + this.shape = shape; + this.__explicitlySet__.add("shape"); + return this; + } + /** + * Desired number of idle members. Zero pauses idle prewarming. Once the pool is ACTIVE, + * named-pool Sandbox creation can still cold-start from its available applied template when + * no eligible warm member is available. Existing customer Sandboxes continue. A positive + * target does not guarantee ready capacity. Existing service capacity validation still + * applies. + */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private Integer desiredCapacity; + + /** + * Desired number of idle members. Zero pauses idle prewarming. Once the pool is ACTIVE, + * named-pool Sandbox creation can still cold-start from its available applied template when + * no eligible warm member is available. Existing customer Sandboxes continue. A positive + * target does not guarantee ready capacity. Existing service capacity validation still + * applies. + * + * @param desiredCapacity the value to set + * @return this builder + */ + public Builder desiredCapacity(Integer desiredCapacity) { + this.desiredCapacity = desiredCapacity; + this.__explicitlySet__.add("desiredCapacity"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSandboxWarmPoolDetails build() { + CreateSandboxWarmPoolDetails model = + new CreateSandboxWarmPoolDetails( + this.name, + this.type, + this.containerImage, + this.shape, + this.desiredCapacity); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSandboxWarmPoolDetails model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("type")) { + this.type(model.getType()); + } + if (model.wasPropertyExplicitlySet("containerImage")) { + this.containerImage(model.getContainerImage()); + } + if (model.wasPropertyExplicitlySet("shape")) { + this.shape(model.getShape()); + } + if (model.wasPropertyExplicitlySet("desiredCapacity")) { + this.desiredCapacity(model.getDesiredCapacity()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Unique immutable name within the Project. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Unique immutable name within the Project. + * + * @return the value + */ + public String getName() { + return name; + } + + /** + * MANAGED uses the service-provided python-3.11 runtime. CUSTOM uses a customer-provided + * containerImage. Both types support named pool creation. + */ + public enum Type implements com.oracle.bmc.http.internal.BmcEnum { + Managed("MANAGED"), + Custom("CUSTOM"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Type v : Type.values()) { + map.put(v.getValue(), v); + } + } + + Type(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Type create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Type: " + key); + } + }; + /** + * MANAGED uses the service-provided python-3.11 runtime. CUSTOM uses a customer-provided + * containerImage. Both types support named pool creation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private final Type type; + + /** + * MANAGED uses the service-provided python-3.11 runtime. CUSTOM uses a customer-provided + * containerImage. Both types support named pool creation. + * + * @return the value + */ + public Type getType() { + return type; + } + + /** + * Required for CUSTOM and must be omitted for MANAGED. A CUSTOM image must be a digest-pinned + * same-region OCIR reference, using sha256 with exactly 64 lowercase hexadecimal characters. + * The CP workflow prepares the template through the data plane, reusing current BYOC image and + * Project identity validation. Successful configuration does not guarantee image pull or + * runtime readiness. + */ + @com.fasterxml.jackson.annotation.JsonProperty("containerImage") + private final String containerImage; + + /** + * Required for CUSTOM and must be omitted for MANAGED. A CUSTOM image must be a digest-pinned + * same-region OCIR reference, using sha256 with exactly 64 lowercase hexadecimal characters. + * The CP workflow prepares the template through the data plane, reusing current BYOC image and + * Project identity validation. Successful configuration does not guarantee image pull or + * runtime readiness. + * + * @return the value + */ + public String getContainerImage() { + return containerImage; + } + + /** Compute shape for each idle Sandbox member. */ + public enum Shape implements com.oracle.bmc.http.internal.BmcEnum { + Small("SMALL"), + Medium("MEDIUM"), + Large("LARGE"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Shape v : Shape.values()) { + map.put(v.getValue(), v); + } + } + + Shape(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Shape create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Shape: " + key); + } + }; + /** Compute shape for each idle Sandbox member. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private final Shape shape; + + /** + * Compute shape for each idle Sandbox member. + * + * @return the value + */ + public Shape getShape() { + return shape; + } + + /** + * Desired number of idle members. Zero pauses idle prewarming. Once the pool is ACTIVE, + * named-pool Sandbox creation can still cold-start from its available applied template when no + * eligible warm member is available. Existing customer Sandboxes continue. A positive target + * does not guarantee ready capacity. Existing service capacity validation still applies. + */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private final Integer desiredCapacity; + + /** + * Desired number of idle members. Zero pauses idle prewarming. Once the pool is ACTIVE, + * named-pool Sandbox creation can still cold-start from its available applied template when no + * eligible warm member is available. Existing customer Sandboxes continue. A positive target + * does not guarantee ready capacity. Existing service capacity validation still applies. + * + * @return the value + */ + public Integer getDesiredCapacity() { + return desiredCapacity; + } + + @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("CreateSandboxWarmPoolDetails("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(", type=").append(String.valueOf(this.type)); + sb.append(", containerImage=").append(String.valueOf(this.containerImage)); + sb.append(", shape=").append(String.valueOf(this.shape)); + sb.append(", desiredCapacity=").append(String.valueOf(this.desiredCapacity)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxWarmPoolDetails)) { + return false; + } + + CreateSandboxWarmPoolDetails other = (CreateSandboxWarmPoolDetails) o; + return java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.type, other.type) + && java.util.Objects.equals(this.containerImage, other.containerImage) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.desiredCapacity, other.desiredCapacity) + && 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.type == null ? 43 : this.type.hashCode()); + result = + (result * PRIME) + + (this.containerImage == null ? 43 : this.containerImage.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.hashCode()); + result = + (result * PRIME) + + (this.desiredCapacity == null ? 43 : this.desiredCapacity.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CustomSandboxOutboundNetworkingConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CustomSandboxOutboundNetworkingConfig.java new file mode 100644 index 00000000000..55ec0002fef --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CustomSandboxOutboundNetworkingConfig.java @@ -0,0 +1,179 @@ +/** + * 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.generativeai.model; + +/** + * Outbound networking configuration that uses a customer subnet for sandboxes in this project. + * Oracle applies an effective {@code ALLOW_ALL} network policy and the customer controls egress + * through VCN controls, such as NSGs, route tables, and security lists.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CustomSandboxOutboundNetworkingConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "networkMode") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CustomSandboxOutboundNetworkingConfig extends SandboxOutboundNetworkingConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The OCID of the customer subnet to use for sandbox outbound networking. */ + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + /** + * The OCID of the customer subnet to use for sandbox outbound networking. + * + * @param subnetId the value to set + * @return this builder + */ + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + /** + * A list of the OCIDs of the network security groups to apply to sandbox outbound + * networking. + */ + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + /** + * A list of the OCIDs of the network security groups to apply to sandbox outbound + * networking. + * + * @param nsgIds the value to set + * @return this builder + */ + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CustomSandboxOutboundNetworkingConfig build() { + CustomSandboxOutboundNetworkingConfig model = + new CustomSandboxOutboundNetworkingConfig(this.subnetId, this.nsgIds); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CustomSandboxOutboundNetworkingConfig model) { + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CustomSandboxOutboundNetworkingConfig(String subnetId, java.util.List nsgIds) { + super(); + this.subnetId = subnetId; + this.nsgIds = nsgIds; + } + + /** The OCID of the customer subnet to use for sandbox outbound networking. */ + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private final String subnetId; + + /** + * The OCID of the customer subnet to use for sandbox outbound networking. + * + * @return the value + */ + public String getSubnetId() { + return subnetId; + } + + /** + * A list of the OCIDs of the network security groups to apply to sandbox outbound networking. + */ + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private final java.util.List nsgIds; + + /** + * A list of the OCIDs of the network security groups to apply to sandbox outbound networking. + * + * @return the value + */ + public java.util.List getNsgIds() { + return nsgIds; + } + + @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("CustomSandboxOutboundNetworkingConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", subnetId=").append(String.valueOf(this.subnetId)); + sb.append(", nsgIds=").append(String.valueOf(this.nsgIds)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CustomSandboxOutboundNetworkingConfig)) { + return false; + } + + CustomSandboxOutboundNetworkingConfig other = (CustomSandboxOutboundNetworkingConfig) o; + return java.util.Objects.equals(this.subnetId, other.subnetId) + && java.util.Objects.equals(this.nsgIds, other.nsgIds) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.subnetId == null ? 43 : this.subnetId.hashCode()); + result = (result * PRIME) + (this.nsgIds == null ? 43 : this.nsgIds.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiCluster.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiCluster.java index 74fe9184e91..07a8466cd1c 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiCluster.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiCluster.java @@ -44,6 +44,7 @@ public final class DedicatedAiCluster "lifecycleDetails", "unitCount", "unitShape", + "capacityReservationId", "capacity", "previousState", "freeformTags", @@ -62,6 +63,7 @@ public DedicatedAiCluster( String lifecycleDetails, Integer unitCount, UnitShape unitShape, + String capacityReservationId, DedicatedAiClusterCapacity capacity, DedicatedAiCluster previousState, java.util.Map freeformTags, @@ -79,6 +81,7 @@ public DedicatedAiCluster( this.lifecycleDetails = lifecycleDetails; this.unitCount = unitCount; this.unitShape = unitShape; + this.capacityReservationId = capacityReservationId; this.capacity = capacity; this.previousState = previousState; this.freeformTags = freeformTags; @@ -269,6 +272,21 @@ public Builder unitShape(UnitShape unitShape) { this.__explicitlySet__.add("unitShape"); return this; } + /** The OCID of the capacity reservation. */ + @com.fasterxml.jackson.annotation.JsonProperty("capacityReservationId") + private String capacityReservationId; + + /** + * The OCID of the capacity reservation. + * + * @param capacityReservationId the value to set + * @return this builder + */ + public Builder capacityReservationId(String capacityReservationId) { + this.capacityReservationId = capacityReservationId; + this.__explicitlySet__.add("capacityReservationId"); + return this; + } @com.fasterxml.jackson.annotation.JsonProperty("capacity") private DedicatedAiClusterCapacity capacity; @@ -377,6 +395,7 @@ public DedicatedAiCluster build() { this.lifecycleDetails, this.unitCount, this.unitShape, + this.capacityReservationId, this.capacity, this.previousState, this.freeformTags, @@ -423,6 +442,9 @@ public Builder copy(DedicatedAiCluster model) { if (model.wasPropertyExplicitlySet("unitShape")) { this.unitShape(model.getUnitShape()); } + if (model.wasPropertyExplicitlySet("capacityReservationId")) { + this.capacityReservationId(model.getCapacityReservationId()); + } if (model.wasPropertyExplicitlySet("capacity")) { this.capacity(model.getCapacity()); } @@ -777,6 +799,7 @@ public enum UnitShape implements com.oracle.bmc.http.internal.BmcEnum { H200X2("H200_X2"), H200X4("H200_X4"), H200X8("H200_X8"), + OaiH100X4("OAI_H100_X4"), OaiA10X2("OAI_A10_X2"), OaiH100X1("OAI_H100_X1"), OaiH100X2("OAI_H100_X2"), @@ -869,6 +892,19 @@ public UnitShape getUnitShape() { return unitShape; } + /** The OCID of the capacity reservation. */ + @com.fasterxml.jackson.annotation.JsonProperty("capacityReservationId") + private final String capacityReservationId; + + /** + * The OCID of the capacity reservation. + * + * @return the value + */ + public String getCapacityReservationId() { + return capacityReservationId; + } + @com.fasterxml.jackson.annotation.JsonProperty("capacity") private final DedicatedAiClusterCapacity capacity; @@ -974,6 +1010,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); sb.append(", unitCount=").append(String.valueOf(this.unitCount)); sb.append(", unitShape=").append(String.valueOf(this.unitShape)); + sb.append(", capacityReservationId=").append(String.valueOf(this.capacityReservationId)); sb.append(", capacity=").append(String.valueOf(this.capacity)); sb.append(", previousState=").append(String.valueOf(this.previousState)); sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); @@ -1004,6 +1041,7 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) && java.util.Objects.equals(this.unitCount, other.unitCount) && java.util.Objects.equals(this.unitShape, other.unitShape) + && java.util.Objects.equals(this.capacityReservationId, other.capacityReservationId) && java.util.Objects.equals(this.capacity, other.capacity) && java.util.Objects.equals(this.previousState, other.previousState) && java.util.Objects.equals(this.freeformTags, other.freeformTags) @@ -1033,6 +1071,11 @@ public int hashCode() { + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.hashCode()); result = (result * PRIME) + (this.unitCount == null ? 43 : this.unitCount.hashCode()); result = (result * PRIME) + (this.unitShape == null ? 43 : this.unitShape.hashCode()); + result = + (result * PRIME) + + (this.capacityReservationId == null + ? 43 + : this.capacityReservationId.hashCode()); result = (result * PRIME) + (this.capacity == null ? 43 : this.capacity.hashCode()); result = (result * PRIME) diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiClusterSummary.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiClusterSummary.java index 360af8de5f5..ba88cfe5571 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiClusterSummary.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/DedicatedAiClusterSummary.java @@ -35,6 +35,7 @@ public final class DedicatedAiClusterSummary "lifecycleDetails", "unitCount", "unitShape", + "capacityReservationId", "capacity", "freeformTags", "definedTags", @@ -52,6 +53,7 @@ public DedicatedAiClusterSummary( String lifecycleDetails, Integer unitCount, DedicatedAiCluster.UnitShape unitShape, + String capacityReservationId, DedicatedAiClusterCapacity capacity, java.util.Map freeformTags, java.util.Map> definedTags, @@ -68,6 +70,7 @@ public DedicatedAiClusterSummary( this.lifecycleDetails = lifecycleDetails; this.unitCount = unitCount; this.unitShape = unitShape; + this.capacityReservationId = capacityReservationId; this.capacity = capacity; this.freeformTags = freeformTags; this.definedTags = definedTags; @@ -273,6 +276,21 @@ public Builder unitShape(DedicatedAiCluster.UnitShape unitShape) { this.__explicitlySet__.add("unitShape"); return this; } + /** The OCID of the capacity reservation. */ + @com.fasterxml.jackson.annotation.JsonProperty("capacityReservationId") + private String capacityReservationId; + + /** + * The OCID of the capacity reservation. + * + * @param capacityReservationId the value to set + * @return this builder + */ + public Builder capacityReservationId(String capacityReservationId) { + this.capacityReservationId = capacityReservationId; + this.__explicitlySet__.add("capacityReservationId"); + return this; + } @com.fasterxml.jackson.annotation.JsonProperty("capacity") private DedicatedAiClusterCapacity capacity; @@ -372,6 +390,7 @@ public DedicatedAiClusterSummary build() { this.lifecycleDetails, this.unitCount, this.unitShape, + this.capacityReservationId, this.capacity, this.freeformTags, this.definedTags, @@ -417,6 +436,9 @@ public Builder copy(DedicatedAiClusterSummary model) { if (model.wasPropertyExplicitlySet("unitShape")) { this.unitShape(model.getUnitShape()); } + if (model.wasPropertyExplicitlySet("capacityReservationId")) { + this.capacityReservationId(model.getCapacityReservationId()); + } if (model.wasPropertyExplicitlySet("capacity")) { this.capacity(model.getCapacity()); } @@ -613,6 +635,19 @@ public DedicatedAiCluster.UnitShape getUnitShape() { return unitShape; } + /** The OCID of the capacity reservation. */ + @com.fasterxml.jackson.annotation.JsonProperty("capacityReservationId") + private final String capacityReservationId; + + /** + * The OCID of the capacity reservation. + * + * @return the value + */ + public String getCapacityReservationId() { + return capacityReservationId; + } + @com.fasterxml.jackson.annotation.JsonProperty("capacity") private final DedicatedAiClusterCapacity capacity; @@ -711,6 +746,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); sb.append(", unitCount=").append(String.valueOf(this.unitCount)); sb.append(", unitShape=").append(String.valueOf(this.unitShape)); + sb.append(", capacityReservationId=").append(String.valueOf(this.capacityReservationId)); sb.append(", capacity=").append(String.valueOf(this.capacity)); sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); sb.append(", definedTags=").append(String.valueOf(this.definedTags)); @@ -740,6 +776,7 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) && java.util.Objects.equals(this.unitCount, other.unitCount) && java.util.Objects.equals(this.unitShape, other.unitShape) + && java.util.Objects.equals(this.capacityReservationId, other.capacityReservationId) && java.util.Objects.equals(this.capacity, other.capacity) && java.util.Objects.equals(this.freeformTags, other.freeformTags) && java.util.Objects.equals(this.definedTags, other.definedTags) @@ -768,6 +805,11 @@ public int hashCode() { + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.hashCode()); result = (result * PRIME) + (this.unitCount == null ? 43 : this.unitCount.hashCode()); result = (result * PRIME) + (this.unitShape == null ? 43 : this.unitShape.hashCode()); + result = + (result * PRIME) + + (this.capacityReservationId == null + ? 43 + : this.capacityReservationId.hashCode()); result = (result * PRIME) + (this.capacity == null ? 43 : this.capacity.hashCode()); result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GenerativeAiProject.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GenerativeAiProject.java index 2702c16d95a..43cf9e04799 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GenerativeAiProject.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GenerativeAiProject.java @@ -42,6 +42,7 @@ public final class GenerativeAiProject "conversationConfig", "longTermMemoryConfig", "shortTermMemoryOptimizationConfig", + "sandboxConfig", "freeformTags", "definedTags", "systemTags" @@ -58,6 +59,7 @@ public GenerativeAiProject( ConversationConfig conversationConfig, LongTermMemoryConfig longTermMemoryConfig, ShortTermMemoryOptimizationConfig shortTermMemoryOptimizationConfig, + SandboxConfig sandboxConfig, java.util.Map freeformTags, java.util.Map> definedTags, java.util.Map> systemTags) { @@ -73,6 +75,7 @@ public GenerativeAiProject( this.conversationConfig = conversationConfig; this.longTermMemoryConfig = longTermMemoryConfig; this.shortTermMemoryOptimizationConfig = shortTermMemoryOptimizationConfig; + this.sandboxConfig = sandboxConfig; this.freeformTags = freeformTags; this.definedTags = definedTags; this.systemTags = systemTags; @@ -240,6 +243,15 @@ public Builder shortTermMemoryOptimizationConfig( this.__explicitlySet__.add("shortTermMemoryOptimizationConfig"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("sandboxConfig") + private SandboxConfig sandboxConfig; + + public Builder sandboxConfig(SandboxConfig sandboxConfig) { + this.sandboxConfig = sandboxConfig; + this.__explicitlySet__.add("sandboxConfig"); + 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 @@ -330,6 +342,7 @@ public GenerativeAiProject build() { this.conversationConfig, this.longTermMemoryConfig, this.shortTermMemoryOptimizationConfig, + this.sandboxConfig, this.freeformTags, this.definedTags, this.systemTags); @@ -375,6 +388,9 @@ public Builder copy(GenerativeAiProject model) { this.shortTermMemoryOptimizationConfig( model.getShortTermMemoryOptimizationConfig()); } + if (model.wasPropertyExplicitlySet("sandboxConfig")) { + this.sandboxConfig(model.getSandboxConfig()); + } if (model.wasPropertyExplicitlySet("freeformTags")) { this.freeformTags(model.getFreeformTags()); } @@ -584,6 +600,13 @@ public ShortTermMemoryOptimizationConfig getShortTermMemoryOptimizationConfig() return shortTermMemoryOptimizationConfig; } + @com.fasterxml.jackson.annotation.JsonProperty("sandboxConfig") + private final SandboxConfig sandboxConfig; + + public SandboxConfig getSandboxConfig() { + return sandboxConfig; + } + /** * 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 @@ -676,6 +699,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", longTermMemoryConfig=").append(String.valueOf(this.longTermMemoryConfig)); sb.append(", shortTermMemoryOptimizationConfig=") .append(String.valueOf(this.shortTermMemoryOptimizationConfig)); + sb.append(", sandboxConfig=").append(String.valueOf(this.sandboxConfig)); sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); sb.append(", definedTags=").append(String.valueOf(this.definedTags)); sb.append(", systemTags=").append(String.valueOf(this.systemTags)); @@ -706,6 +730,7 @@ public boolean equals(Object o) { && java.util.Objects.equals( this.shortTermMemoryOptimizationConfig, other.shortTermMemoryOptimizationConfig) + && java.util.Objects.equals(this.sandboxConfig, other.sandboxConfig) && java.util.Objects.equals(this.freeformTags, other.freeformTags) && java.util.Objects.equals(this.definedTags, other.definedTags) && java.util.Objects.equals(this.systemTags, other.systemTags) @@ -745,6 +770,9 @@ public int hashCode() { + (this.shortTermMemoryOptimizationConfig == null ? 43 : this.shortTermMemoryOptimizationConfig.hashCode()); + result = + (result * PRIME) + + (this.sandboxConfig == null ? 43 : this.sandboxConfig.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()); diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GpuAllocation.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GpuAllocation.java new file mode 100644 index 00000000000..4f27b80e170 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/GpuAllocation.java @@ -0,0 +1,169 @@ +/** + * 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.generativeai.model; + +/** + * GPU allocation details for an underlying capacity allocation.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = GpuAllocation.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class GpuAllocation extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"usedGpus", "availableGpus"}) + public GpuAllocation(Integer usedGpus, Integer availableGpus) { + super(); + this.usedGpus = usedGpus; + this.availableGpus = availableGpus; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The number of used GPUs in this allocation. */ + @com.fasterxml.jackson.annotation.JsonProperty("usedGpus") + private Integer usedGpus; + + /** + * The number of used GPUs in this allocation. + * + * @param usedGpus the value to set + * @return this builder + */ + public Builder usedGpus(Integer usedGpus) { + this.usedGpus = usedGpus; + this.__explicitlySet__.add("usedGpus"); + return this; + } + /** The number of available GPUs in this allocation. */ + @com.fasterxml.jackson.annotation.JsonProperty("availableGpus") + private Integer availableGpus; + + /** + * The number of available GPUs in this allocation. + * + * @param availableGpus the value to set + * @return this builder + */ + public Builder availableGpus(Integer availableGpus) { + this.availableGpus = availableGpus; + this.__explicitlySet__.add("availableGpus"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public GpuAllocation build() { + GpuAllocation model = new GpuAllocation(this.usedGpus, this.availableGpus); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(GpuAllocation model) { + if (model.wasPropertyExplicitlySet("usedGpus")) { + this.usedGpus(model.getUsedGpus()); + } + if (model.wasPropertyExplicitlySet("availableGpus")) { + this.availableGpus(model.getAvailableGpus()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The number of used GPUs in this allocation. */ + @com.fasterxml.jackson.annotation.JsonProperty("usedGpus") + private final Integer usedGpus; + + /** + * The number of used GPUs in this allocation. + * + * @return the value + */ + public Integer getUsedGpus() { + return usedGpus; + } + + /** The number of available GPUs in this allocation. */ + @com.fasterxml.jackson.annotation.JsonProperty("availableGpus") + private final Integer availableGpus; + + /** + * The number of available GPUs in this allocation. + * + * @return the value + */ + public Integer getAvailableGpus() { + return availableGpus; + } + + @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("GpuAllocation("); + sb.append("super=").append(super.toString()); + sb.append("usedGpus=").append(String.valueOf(this.usedGpus)); + sb.append(", availableGpus=").append(String.valueOf(this.availableGpus)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GpuAllocation)) { + return false; + } + + GpuAllocation other = (GpuAllocation) o; + return java.util.Objects.equals(this.usedGpus, other.usedGpus) + && java.util.Objects.equals(this.availableGpus, other.availableGpus) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.usedGpus == null ? 43 : this.usedGpus.hashCode()); + result = + (result * PRIME) + + (this.availableGpus == null ? 43 : this.availableGpus.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} 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 a065d7e2af8..1d99bd84f47 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 @@ -7,8 +7,9 @@ /** * Oracle Identity Cloud Service (IDCS) configuration used when inboundAuthConfigType is set to * 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 + * inboundAuthConfigType is IDCS_AUTH_CONFIG or IDCS_SESSION_AUTH_CONFIG. This object must be + * omitted when inboundAuthConfigType is NO_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 diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ImportedModelCapability.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ImportedModelCapability.java index fa331a7989b..fe8b2d5713b 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ImportedModelCapability.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ImportedModelCapability.java @@ -20,6 +20,9 @@ public enum ImportedModelCapability implements com.oracle.bmc.http.internal.BmcE AudioToText("AUDIO_TO_TEXT"), TextToAudio("TEXT_TO_AUDIO"), TextToVideo("TEXT_TO_VIDEO"), + AudioTextToText("AUDIO_TEXT_TO_TEXT"), + AudioTranslation("AUDIO_TRANSLATION"), + VideoTextToText("VIDEO_TEXT_TO_TEXT"), /** * This value is used if a service returns a value for this enum that is not recognized by this 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 2641bce8af5..4c314dc7150 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 @@ -5,8 +5,14 @@ package com.oracle.bmc.generativeai.model; /** - * The inbound authentication configuration for the Hosted Application. When unspecified, the - * service applies the default inbound authentication configuration type.
+ * The inbound authentication configuration for the Hosted Application. Specify the authentication + * type when creating an application. Omitting this object from an update leaves the current + * authentication configuration unchanged. Set inboundAuthConfigType to NO_AUTH_CONFIG to explicitly + * disable platform-managed caller authentication for this application. This mode requires no + * separate tenancy enrollment. The application is responsible for authenticating and authorizing + * its callers. TLS, the configured public or private endpoint, service limits, and IAM + * authorization for management operations still apply. Omit idcsConfig when selecting + * NO_AUTH_CONFIG.
* 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 @@ -96,6 +102,7 @@ public Builder toBuilder() { public enum InboundAuthConfigType implements com.oracle.bmc.http.internal.BmcEnum { IdcsAuthConfig("IDCS_AUTH_CONFIG"), IdcsSessionAuthConfig("IDCS_SESSION_AUTH_CONFIG"), + NoAuthConfig("NO_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/ManagedSandboxOutboundNetworkingConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ManagedSandboxOutboundNetworkingConfig.java new file mode 100644 index 00000000000..b4b871b9850 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ManagedSandboxOutboundNetworkingConfig.java @@ -0,0 +1,127 @@ +/** + * 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.generativeai.model; + +/** + * Outbound networking configuration that uses Oracle-managed networking for sandboxes in this + * project.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ManagedSandboxOutboundNetworkingConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "networkMode") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ManagedSandboxOutboundNetworkingConfig extends SandboxOutboundNetworkingConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + + @com.fasterxml.jackson.annotation.JsonProperty("networkPolicy") + private SandboxNetworkPolicy networkPolicy; + + public Builder networkPolicy(SandboxNetworkPolicy networkPolicy) { + this.networkPolicy = networkPolicy; + this.__explicitlySet__.add("networkPolicy"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ManagedSandboxOutboundNetworkingConfig build() { + ManagedSandboxOutboundNetworkingConfig model = + new ManagedSandboxOutboundNetworkingConfig(this.networkPolicy); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ManagedSandboxOutboundNetworkingConfig model) { + if (model.wasPropertyExplicitlySet("networkPolicy")) { + this.networkPolicy(model.getNetworkPolicy()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public ManagedSandboxOutboundNetworkingConfig(SandboxNetworkPolicy networkPolicy) { + super(); + this.networkPolicy = networkPolicy; + } + + @com.fasterxml.jackson.annotation.JsonProperty("networkPolicy") + private final SandboxNetworkPolicy networkPolicy; + + public SandboxNetworkPolicy getNetworkPolicy() { + return networkPolicy; + } + + @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("ManagedSandboxOutboundNetworkingConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", networkPolicy=").append(String.valueOf(this.networkPolicy)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ManagedSandboxOutboundNetworkingConfig)) { + return false; + } + + ManagedSandboxOutboundNetworkingConfig other = (ManagedSandboxOutboundNetworkingConfig) o; + return java.util.Objects.equals(this.networkPolicy, other.networkPolicy) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.networkPolicy == null ? 43 : this.networkPolicy.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ModelCapability.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ModelCapability.java index 396d9fe170c..c2fca7aec32 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ModelCapability.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/ModelCapability.java @@ -23,6 +23,9 @@ public enum ModelCapability implements com.oracle.bmc.http.internal.BmcEnum { AudioToText("AUDIO_TO_TEXT"), TextToAudio("TEXT_TO_AUDIO"), TextToVideo("TEXT_TO_VIDEO"), + AudioTextToText("AUDIO_TEXT_TO_TEXT"), + AudioTranslation("AUDIO_TRANSLATION"), + VideoTextToText("VIDEO_TEXT_TO_TEXT"), /** * This value is used if a service returns a value for this enum that is not recognized by this diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/OperationType.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/OperationType.java index 863d5a10a4a..6aff0962d30 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/OperationType.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/OperationType.java @@ -25,6 +25,9 @@ public enum OperationType implements com.oracle.bmc.http.internal.BmcEnum { DeletePrivateEndpoint("DELETE_PRIVATE_ENDPOINT"), UpdatePrivateEndpoint("UPDATE_PRIVATE_ENDPOINT"), MovePrivateEndpoint("MOVE_PRIVATE_ENDPOINT"), + CreateSandboxWarmPool("CREATE_SANDBOX_WARM_POOL"), + UpdateSandboxWarmPool("UPDATE_SANDBOX_WARM_POOL"), + DeleteSandboxWarmPool("DELETE_SANDBOX_WARM_POOL"), CreateVectorStoreConnector("CREATE_VECTOR_STORE_CONNECTOR"), UpdateVectorStoreConnector("UPDATE_VECTOR_STORE_CONNECTOR"), DeleteVectorStoreConnector("DELETE_VECTOR_STORE_CONNECTOR"), diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxAllowAllNetworkPolicy.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxAllowAllNetworkPolicy.java new file mode 100644 index 00000000000..d260c93b71c --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxAllowAllNetworkPolicy.java @@ -0,0 +1,100 @@ +/** + * 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.generativeai.model; + +/** + * Network policy that allows all network access for sandboxes in this project.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxAllowAllNetworkPolicy.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "mode") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxAllowAllNetworkPolicy extends SandboxNetworkPolicy { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxAllowAllNetworkPolicy build() { + SandboxAllowAllNetworkPolicy model = new SandboxAllowAllNetworkPolicy(); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxAllowAllNetworkPolicy model) { + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxAllowAllNetworkPolicy() { + super(); + } + + @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("SandboxAllowAllNetworkPolicy("); + 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 SandboxAllowAllNetworkPolicy)) { + return false; + } + + SandboxAllowAllNetworkPolicy other = (SandboxAllowAllNetworkPolicy) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxAllowNetworkPolicy.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxAllowNetworkPolicy.java new file mode 100644 index 00000000000..e02670b0e34 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxAllowNetworkPolicy.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.generativeai.model; + +/** + * Network policy that allows access only to specified domains for sandboxes in this project.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxAllowNetworkPolicy.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "mode") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxAllowNetworkPolicy extends SandboxNetworkPolicy { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Domain allow list used when {@code mode} is {@code ALLOW}. */ + @com.fasterxml.jackson.annotation.JsonProperty("allowedDomains") + private java.util.List allowedDomains; + + /** + * Domain allow list used when {@code mode} is {@code ALLOW}. + * + * @param allowedDomains the value to set + * @return this builder + */ + public Builder allowedDomains(java.util.List allowedDomains) { + this.allowedDomains = allowedDomains; + this.__explicitlySet__.add("allowedDomains"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxAllowNetworkPolicy build() { + SandboxAllowNetworkPolicy model = new SandboxAllowNetworkPolicy(this.allowedDomains); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxAllowNetworkPolicy model) { + if (model.wasPropertyExplicitlySet("allowedDomains")) { + this.allowedDomains(model.getAllowedDomains()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxAllowNetworkPolicy(java.util.List allowedDomains) { + super(); + this.allowedDomains = allowedDomains; + } + + /** Domain allow list used when {@code mode} is {@code ALLOW}. */ + @com.fasterxml.jackson.annotation.JsonProperty("allowedDomains") + private final java.util.List allowedDomains; + + /** + * Domain allow list used when {@code mode} is {@code ALLOW}. + * + * @return the value + */ + public java.util.List getAllowedDomains() { + return allowedDomains; + } + + @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("SandboxAllowNetworkPolicy("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", allowedDomains=").append(String.valueOf(this.allowedDomains)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxAllowNetworkPolicy)) { + return false; + } + + SandboxAllowNetworkPolicy other = (SandboxAllowNetworkPolicy) o; + return java.util.Objects.equals(this.allowedDomains, other.allowedDomains) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.allowedDomains == null ? 43 : this.allowedDomains.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxConfig.java new file mode 100644 index 00000000000..310aee4b5bc --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxConfig.java @@ -0,0 +1,333 @@ +/** + * 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.generativeai.model; + +/** + * Sandbox configuration under a project. Use {@code sandboxOutboundNetworkingConfig} to choose + * whether sandbox outbound traffic originates from an Oracle-managed network or from a customer + * subnet. The {@code warmPoolConfig} field is a read-only projection of reserved MANAGED + * default-pool capacities. Project create and update requests must omit {@code warmPoolConfig}; + * supplying it, including null or an empty object, is rejected. Newly enabled projects start with + * zero default-pool capacity. Use the named warm-pool APIs to change capacities or manage CUSTOM + * pools. On Project Update, omit sandboxConfig to retain the existing configuration. When supplying + * sandboxConfig, include isEnabled. Sandbox can be enabled after project creation but cannot be + * disabled after it is enabled. After enablement, isPersistenceEnabled and custom outbound + * networking cannot change; managed network policy can be updated. Omitted isPersistenceEnabled + * retains its current value. Credential profiles require unique labels and can be added, removed, + * or changed on Project Update. Omit credentialProfiles to retain them, or supply the complete + * desired list; an empty array removes all profiles from the Project. When credentialProfiles is + * supplied, omitting sandboxOutboundNetworkingConfig retains the current outbound networking + * configuration. Updates apply to subsequently created Sandboxes after Project configuration + * propagation. Existing Sandboxes retain their selected profile snapshot, including when that + * profile is changed or removed from the Project. Updating a secret's CURRENT version in Vault does + * not change the Project configuration and remains visible to existing Sandboxes that reference + * that secret.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SandboxConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxConfig extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "isEnabled", + "isPersistenceEnabled", + "warmPoolConfig", + "sandboxOutboundNetworkingConfig", + "credentialProfiles" + }) + public SandboxConfig( + Boolean isEnabled, + Boolean isPersistenceEnabled, + SandboxWarmPoolConfig warmPoolConfig, + SandboxOutboundNetworkingConfig sandboxOutboundNetworkingConfig, + java.util.List credentialProfiles) { + super(); + this.isEnabled = isEnabled; + this.isPersistenceEnabled = isPersistenceEnabled; + this.warmPoolConfig = warmPoolConfig; + this.sandboxOutboundNetworkingConfig = sandboxOutboundNetworkingConfig; + this.credentialProfiles = credentialProfiles; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Indicates whether sandbox config is enabled. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEnabled") + private Boolean isEnabled; + + /** + * Indicates whether sandbox config is enabled. + * + * @param isEnabled the value to set + * @return this builder + */ + public Builder isEnabled(Boolean isEnabled) { + this.isEnabled = isEnabled; + this.__explicitlySet__.add("isEnabled"); + return this; + } + /** + * Indicates whether persistent block volume storage is enabled for sandbox workspaces in + * this project. When omitted, the service-defined default is used. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isPersistenceEnabled") + private Boolean isPersistenceEnabled; + + /** + * Indicates whether persistent block volume storage is enabled for sandbox workspaces in + * this project. When omitted, the service-defined default is used. + * + * @param isPersistenceEnabled the value to set + * @return this builder + */ + public Builder isPersistenceEnabled(Boolean isPersistenceEnabled) { + this.isPersistenceEnabled = isPersistenceEnabled; + this.__explicitlySet__.add("isPersistenceEnabled"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("warmPoolConfig") + private SandboxWarmPoolConfig warmPoolConfig; + + public Builder warmPoolConfig(SandboxWarmPoolConfig warmPoolConfig) { + this.warmPoolConfig = warmPoolConfig; + this.__explicitlySet__.add("warmPoolConfig"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("sandboxOutboundNetworkingConfig") + private SandboxOutboundNetworkingConfig sandboxOutboundNetworkingConfig; + + public Builder sandboxOutboundNetworkingConfig( + SandboxOutboundNetworkingConfig sandboxOutboundNetworkingConfig) { + this.sandboxOutboundNetworkingConfig = sandboxOutboundNetworkingConfig; + this.__explicitlySet__.add("sandboxOutboundNetworkingConfig"); + return this; + } + /** + * Named credential profiles available for Sandbox creation. A Sandbox can explicitly select + * one profile using credentialProfileLabel; omitting that selector selects none. On Project + * Update, omission retains existing profiles and a supplied list replaces the complete + * list. An empty array removes all profiles from the Project. Adding, removing, or changing + * profiles affects subsequently created Sandboxes after configuration propagation. Existing + * Sandboxes retain their selected configuration snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("credentialProfiles") + private java.util.List credentialProfiles; + + /** + * Named credential profiles available for Sandbox creation. A Sandbox can explicitly select + * one profile using credentialProfileLabel; omitting that selector selects none. On Project + * Update, omission retains existing profiles and a supplied list replaces the complete + * list. An empty array removes all profiles from the Project. Adding, removing, or changing + * profiles affects subsequently created Sandboxes after configuration propagation. Existing + * Sandboxes retain their selected configuration snapshot. + * + * @param credentialProfiles the value to set + * @return this builder + */ + public Builder credentialProfiles( + java.util.List credentialProfiles) { + this.credentialProfiles = credentialProfiles; + this.__explicitlySet__.add("credentialProfiles"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxConfig build() { + SandboxConfig model = + new SandboxConfig( + this.isEnabled, + this.isPersistenceEnabled, + this.warmPoolConfig, + this.sandboxOutboundNetworkingConfig, + this.credentialProfiles); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxConfig model) { + if (model.wasPropertyExplicitlySet("isEnabled")) { + this.isEnabled(model.getIsEnabled()); + } + if (model.wasPropertyExplicitlySet("isPersistenceEnabled")) { + this.isPersistenceEnabled(model.getIsPersistenceEnabled()); + } + if (model.wasPropertyExplicitlySet("warmPoolConfig")) { + this.warmPoolConfig(model.getWarmPoolConfig()); + } + if (model.wasPropertyExplicitlySet("sandboxOutboundNetworkingConfig")) { + this.sandboxOutboundNetworkingConfig(model.getSandboxOutboundNetworkingConfig()); + } + if (model.wasPropertyExplicitlySet("credentialProfiles")) { + this.credentialProfiles(model.getCredentialProfiles()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Indicates whether sandbox config is enabled. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEnabled") + private final Boolean isEnabled; + + /** + * Indicates whether sandbox config is enabled. + * + * @return the value + */ + public Boolean getIsEnabled() { + return isEnabled; + } + + /** + * Indicates whether persistent block volume storage is enabled for sandbox workspaces in this + * project. When omitted, the service-defined default is used. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isPersistenceEnabled") + private final Boolean isPersistenceEnabled; + + /** + * Indicates whether persistent block volume storage is enabled for sandbox workspaces in this + * project. When omitted, the service-defined default is used. + * + * @return the value + */ + public Boolean getIsPersistenceEnabled() { + return isPersistenceEnabled; + } + + @com.fasterxml.jackson.annotation.JsonProperty("warmPoolConfig") + private final SandboxWarmPoolConfig warmPoolConfig; + + public SandboxWarmPoolConfig getWarmPoolConfig() { + return warmPoolConfig; + } + + @com.fasterxml.jackson.annotation.JsonProperty("sandboxOutboundNetworkingConfig") + private final SandboxOutboundNetworkingConfig sandboxOutboundNetworkingConfig; + + public SandboxOutboundNetworkingConfig getSandboxOutboundNetworkingConfig() { + return sandboxOutboundNetworkingConfig; + } + + /** + * Named credential profiles available for Sandbox creation. A Sandbox can explicitly select one + * profile using credentialProfileLabel; omitting that selector selects none. On Project Update, + * omission retains existing profiles and a supplied list replaces the complete list. An empty + * array removes all profiles from the Project. Adding, removing, or changing profiles affects + * subsequently created Sandboxes after configuration propagation. Existing Sandboxes retain + * their selected configuration snapshot. + */ + @com.fasterxml.jackson.annotation.JsonProperty("credentialProfiles") + private final java.util.List credentialProfiles; + + /** + * Named credential profiles available for Sandbox creation. A Sandbox can explicitly select one + * profile using credentialProfileLabel; omitting that selector selects none. On Project Update, + * omission retains existing profiles and a supplied list replaces the complete list. An empty + * array removes all profiles from the Project. Adding, removing, or changing profiles affects + * subsequently created Sandboxes after configuration propagation. Existing Sandboxes retain + * their selected configuration snapshot. + * + * @return the value + */ + public java.util.List getCredentialProfiles() { + return credentialProfiles; + } + + @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("SandboxConfig("); + sb.append("super=").append(super.toString()); + sb.append("isEnabled=").append(String.valueOf(this.isEnabled)); + sb.append(", isPersistenceEnabled=").append(String.valueOf(this.isPersistenceEnabled)); + sb.append(", warmPoolConfig=").append(String.valueOf(this.warmPoolConfig)); + sb.append(", sandboxOutboundNetworkingConfig=") + .append(String.valueOf(this.sandboxOutboundNetworkingConfig)); + sb.append(", credentialProfiles=").append(String.valueOf(this.credentialProfiles)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxConfig)) { + return false; + } + + SandboxConfig other = (SandboxConfig) o; + return java.util.Objects.equals(this.isEnabled, other.isEnabled) + && java.util.Objects.equals(this.isPersistenceEnabled, other.isPersistenceEnabled) + && java.util.Objects.equals(this.warmPoolConfig, other.warmPoolConfig) + && java.util.Objects.equals( + this.sandboxOutboundNetworkingConfig, other.sandboxOutboundNetworkingConfig) + && java.util.Objects.equals(this.credentialProfiles, other.credentialProfiles) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.isEnabled == null ? 43 : this.isEnabled.hashCode()); + result = + (result * PRIME) + + (this.isPersistenceEnabled == null + ? 43 + : this.isPersistenceEnabled.hashCode()); + result = + (result * PRIME) + + (this.warmPoolConfig == null ? 43 : this.warmPoolConfig.hashCode()); + result = + (result * PRIME) + + (this.sandboxOutboundNetworkingConfig == null + ? 43 + : this.sandboxOutboundNetworkingConfig.hashCode()); + result = + (result * PRIME) + + (this.credentialProfiles == null + ? 43 + : this.credentialProfiles.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialInjectionHeader.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialInjectionHeader.java new file mode 100644 index 00000000000..bce468ab2cc --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialInjectionHeader.java @@ -0,0 +1,232 @@ +/** + * 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.generativeai.model; + +/** + * The HTTP request header and OCI Vault secret used by a credential injection rule.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCredentialInjectionHeader.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCredentialInjectionHeader + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"name", "prefix", "vaultSecretId"}) + public SandboxCredentialInjectionHeader(String name, String prefix, String vaultSecretId) { + super(); + this.name = name; + this.prefix = prefix; + this.vaultSecretId = vaultSecretId; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The end-to-end HTTP request header to replace. Routing, connection-specific, forwarding, + * proxy authentication, and HTTP pseudo-header names are prohibited. + */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * The end-to-end HTTP request header to replace. Routing, connection-specific, forwarding, + * proxy authentication, and HTTP pseudo-header names are prohibited. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** + * Optional UTF-8 text prepended unchanged to the decoded Vault secret value. Omitted and + * empty values both mean no prefix. + */ + @com.fasterxml.jackson.annotation.JsonProperty("prefix") + private String prefix; + + /** + * Optional UTF-8 text prepended unchanged to the decoded Vault secret value. Omitted and + * empty values both mean no prefix. + * + * @param prefix the value to set + * @return this builder + */ + public Builder prefix(String prefix) { + this.prefix = prefix; + this.__explicitlySet__.add("prefix"); + return this; + } + /** + * The OCID of the OCI Vault secret read at the {@code CURRENT} stage for every selected + * request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("vaultSecretId") + private String vaultSecretId; + + /** + * The OCID of the OCI Vault secret read at the {@code CURRENT} stage for every selected + * request. + * + * @param vaultSecretId the value to set + * @return this builder + */ + public Builder vaultSecretId(String vaultSecretId) { + this.vaultSecretId = vaultSecretId; + this.__explicitlySet__.add("vaultSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCredentialInjectionHeader build() { + SandboxCredentialInjectionHeader model = + new SandboxCredentialInjectionHeader( + this.name, this.prefix, this.vaultSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCredentialInjectionHeader model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("prefix")) { + this.prefix(model.getPrefix()); + } + if (model.wasPropertyExplicitlySet("vaultSecretId")) { + this.vaultSecretId(model.getVaultSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The end-to-end HTTP request header to replace. Routing, connection-specific, forwarding, + * proxy authentication, and HTTP pseudo-header names are prohibited. + */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * The end-to-end HTTP request header to replace. Routing, connection-specific, forwarding, + * proxy authentication, and HTTP pseudo-header names are prohibited. + * + * @return the value + */ + public String getName() { + return name; + } + + /** + * Optional UTF-8 text prepended unchanged to the decoded Vault secret value. Omitted and empty + * values both mean no prefix. + */ + @com.fasterxml.jackson.annotation.JsonProperty("prefix") + private final String prefix; + + /** + * Optional UTF-8 text prepended unchanged to the decoded Vault secret value. Omitted and empty + * values both mean no prefix. + * + * @return the value + */ + public String getPrefix() { + return prefix; + } + + /** + * The OCID of the OCI Vault secret read at the {@code CURRENT} stage for every selected + * request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("vaultSecretId") + private final String vaultSecretId; + + /** + * The OCID of the OCI Vault secret read at the {@code CURRENT} stage for every selected + * request. + * + * @return the value + */ + public String getVaultSecretId() { + return vaultSecretId; + } + + @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("SandboxCredentialInjectionHeader("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(", prefix=").append(String.valueOf(this.prefix)); + sb.append(", vaultSecretId=").append(String.valueOf(this.vaultSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCredentialInjectionHeader)) { + return false; + } + + SandboxCredentialInjectionHeader other = (SandboxCredentialInjectionHeader) o; + return java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.prefix, other.prefix) + && java.util.Objects.equals(this.vaultSecretId, other.vaultSecretId) + && 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.prefix == null ? 43 : this.prefix.hashCode()); + result = + (result * PRIME) + + (this.vaultSecretId == null ? 43 : this.vaultSecretId.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialInjectionRule.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialInjectionRule.java new file mode 100644 index 00000000000..6c47e8db7aa --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialInjectionRule.java @@ -0,0 +1,125 @@ +/** + * 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.generativeai.model; + +/** + * Base type for a credential injection rule. The ruleType selects the concrete rule schema and its + * required properties. Only HTTP_HEADER is currently supported.
+ * 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: 20231130") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "ruleType", + defaultImpl = SandboxCredentialInjectionRule.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxHttpHeaderCredentialInjectionRule.class, + name = "HTTP_HEADER") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SandboxCredentialInjectionRule + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected SandboxCredentialInjectionRule() { + super(); + } + + @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("SandboxCredentialInjectionRule("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCredentialInjectionRule)) { + return false; + } + + SandboxCredentialInjectionRule other = (SandboxCredentialInjectionRule) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** The credential injection mechanism that selects the rule subtype. */ + public enum RuleType implements com.oracle.bmc.http.internal.BmcEnum { + HttpHeader("HTTP_HEADER"), + + /** + * 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(RuleType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (RuleType v : RuleType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + RuleType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static RuleType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'RuleType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialProfile.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialProfile.java new file mode 100644 index 00000000000..2af013690cb --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxCredentialProfile.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.generativeai.model; + +/** + * A named Project-local credential profile selected explicitly when a Sandbox is created. Profiles + * can be added, removed, or changed through Project Update.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCredentialProfile.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCredentialProfile + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"label", "credentialInjectionRules"}) + public SandboxCredentialProfile( + String label, java.util.List credentialInjectionRules) { + super(); + this.label = label; + this.credentialInjectionRules = credentialInjectionRules; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * Required, unique Project-local selector. The value {@code project-default} is reserved by + * the service. + */ + @com.fasterxml.jackson.annotation.JsonProperty("label") + private String label; + + /** + * Required, unique Project-local selector. The value {@code project-default} is reserved by + * the service. + * + * @param label the value to set + * @return this builder + */ + public Builder label(String label) { + this.label = label; + this.__explicitlySet__.add("label"); + return this; + } + /** + * One or more credential injection rules. A rule authorizes credential injection only; it + * does not grant network reachability. Each selected request reads the referenced OCI Vault + * secret at the {@code CURRENT} stage; secret values are not cached or served stale. + * Protected requests support HTTP/1.1 and HTTP/2. CONNECT, extended CONNECT, Upgrade, + * WebSocket, plain HTTP, and non-HTTP credentials are not supported. + */ + @com.fasterxml.jackson.annotation.JsonProperty("credentialInjectionRules") + private java.util.List credentialInjectionRules; + + /** + * One or more credential injection rules. A rule authorizes credential injection only; it + * does not grant network reachability. Each selected request reads the referenced OCI Vault + * secret at the {@code CURRENT} stage; secret values are not cached or served stale. + * Protected requests support HTTP/1.1 and HTTP/2. CONNECT, extended CONNECT, Upgrade, + * WebSocket, plain HTTP, and non-HTTP credentials are not supported. + * + * @param credentialInjectionRules the value to set + * @return this builder + */ + public Builder credentialInjectionRules( + java.util.List credentialInjectionRules) { + this.credentialInjectionRules = credentialInjectionRules; + this.__explicitlySet__.add("credentialInjectionRules"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCredentialProfile build() { + SandboxCredentialProfile model = + new SandboxCredentialProfile(this.label, this.credentialInjectionRules); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCredentialProfile model) { + if (model.wasPropertyExplicitlySet("label")) { + this.label(model.getLabel()); + } + if (model.wasPropertyExplicitlySet("credentialInjectionRules")) { + this.credentialInjectionRules(model.getCredentialInjectionRules()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * Required, unique Project-local selector. The value {@code project-default} is reserved by the + * service. + */ + @com.fasterxml.jackson.annotation.JsonProperty("label") + private final String label; + + /** + * Required, unique Project-local selector. The value {@code project-default} is reserved by the + * service. + * + * @return the value + */ + public String getLabel() { + return label; + } + + /** + * One or more credential injection rules. A rule authorizes credential injection only; it does + * not grant network reachability. Each selected request reads the referenced OCI Vault secret + * at the {@code CURRENT} stage; secret values are not cached or served stale. Protected + * requests support HTTP/1.1 and HTTP/2. CONNECT, extended CONNECT, Upgrade, WebSocket, plain + * HTTP, and non-HTTP credentials are not supported. + */ + @com.fasterxml.jackson.annotation.JsonProperty("credentialInjectionRules") + private final java.util.List credentialInjectionRules; + + /** + * One or more credential injection rules. A rule authorizes credential injection only; it does + * not grant network reachability. Each selected request reads the referenced OCI Vault secret + * at the {@code CURRENT} stage; secret values are not cached or served stale. Protected + * requests support HTTP/1.1 and HTTP/2. CONNECT, extended CONNECT, Upgrade, WebSocket, plain + * HTTP, and non-HTTP credentials are not supported. + * + * @return the value + */ + public java.util.List getCredentialInjectionRules() { + return credentialInjectionRules; + } + + @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("SandboxCredentialProfile("); + sb.append("super=").append(super.toString()); + sb.append("label=").append(String.valueOf(this.label)); + sb.append(", credentialInjectionRules=") + .append(String.valueOf(this.credentialInjectionRules)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCredentialProfile)) { + return false; + } + + SandboxCredentialProfile other = (SandboxCredentialProfile) o; + return java.util.Objects.equals(this.label, other.label) + && java.util.Objects.equals( + this.credentialInjectionRules, other.credentialInjectionRules) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.label == null ? 43 : this.label.hashCode()); + result = + (result * PRIME) + + (this.credentialInjectionRules == null + ? 43 + : this.credentialInjectionRules.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxDenyAllNetworkPolicy.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxDenyAllNetworkPolicy.java new file mode 100644 index 00000000000..639d4e00542 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxDenyAllNetworkPolicy.java @@ -0,0 +1,100 @@ +/** + * 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.generativeai.model; + +/** + * Network policy that denies all network access for sandboxes in this project.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxDenyAllNetworkPolicy.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "mode") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxDenyAllNetworkPolicy extends SandboxNetworkPolicy { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxDenyAllNetworkPolicy build() { + SandboxDenyAllNetworkPolicy model = new SandboxDenyAllNetworkPolicy(); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxDenyAllNetworkPolicy model) { + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxDenyAllNetworkPolicy() { + super(); + } + + @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("SandboxDenyAllNetworkPolicy("); + 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 SandboxDenyAllNetworkPolicy)) { + return false; + } + + SandboxDenyAllNetworkPolicy other = (SandboxDenyAllNetworkPolicy) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxHttpHeaderCredentialInjectionRule.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxHttpHeaderCredentialInjectionRule.java new file mode 100644 index 00000000000..28e5c784a8f --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxHttpHeaderCredentialInjectionRule.java @@ -0,0 +1,194 @@ +/** + * 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.generativeai.model; + +/** + * An HTTP_HEADER rule that binds one exact HTTPS host on port 443 to exactly one injected HTTP + * request header and one OCI Vault secret. Redirects to another host do not carry the credential. + * Only properties defined for this rule type are supported.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxHttpHeaderCredentialInjectionRule.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "ruleType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxHttpHeaderCredentialInjectionRule extends SandboxCredentialInjectionRule { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The normalized ASCII DNS hostname that selects the rule. This value must be the exact + * regional Generative AI Responses endpoint hostname for the Project's region and realm. Do + * not include a scheme, path, port, wildcard, trailing dot, or IP literal. Brokerage uses + * HTTPS on port 443. + */ + @com.fasterxml.jackson.annotation.JsonProperty("host") + private String host; + + /** + * The normalized ASCII DNS hostname that selects the rule. This value must be the exact + * regional Generative AI Responses endpoint hostname for the Project's region and realm. Do + * not include a scheme, path, port, wildcard, trailing dot, or IP literal. Brokerage uses + * HTTPS on port 443. + * + * @param host the value to set + * @return this builder + */ + public Builder host(String host) { + this.host = host; + this.__explicitlySet__.add("host"); + return this; + } + /** The single HTTP request header that the service replaces with the credential value. */ + @com.fasterxml.jackson.annotation.JsonProperty("injectHeaders") + private java.util.List injectHeaders; + + /** + * The single HTTP request header that the service replaces with the credential value. + * + * @param injectHeaders the value to set + * @return this builder + */ + public Builder injectHeaders( + java.util.List injectHeaders) { + this.injectHeaders = injectHeaders; + this.__explicitlySet__.add("injectHeaders"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxHttpHeaderCredentialInjectionRule build() { + SandboxHttpHeaderCredentialInjectionRule model = + new SandboxHttpHeaderCredentialInjectionRule(this.host, this.injectHeaders); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxHttpHeaderCredentialInjectionRule model) { + if (model.wasPropertyExplicitlySet("host")) { + this.host(model.getHost()); + } + if (model.wasPropertyExplicitlySet("injectHeaders")) { + this.injectHeaders(model.getInjectHeaders()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxHttpHeaderCredentialInjectionRule( + String host, java.util.List injectHeaders) { + super(); + this.host = host; + this.injectHeaders = injectHeaders; + } + + /** + * The normalized ASCII DNS hostname that selects the rule. This value must be the exact + * regional Generative AI Responses endpoint hostname for the Project's region and realm. Do not + * include a scheme, path, port, wildcard, trailing dot, or IP literal. Brokerage uses HTTPS on + * port 443. + */ + @com.fasterxml.jackson.annotation.JsonProperty("host") + private final String host; + + /** + * The normalized ASCII DNS hostname that selects the rule. This value must be the exact + * regional Generative AI Responses endpoint hostname for the Project's region and realm. Do not + * include a scheme, path, port, wildcard, trailing dot, or IP literal. Brokerage uses HTTPS on + * port 443. + * + * @return the value + */ + public String getHost() { + return host; + } + + /** The single HTTP request header that the service replaces with the credential value. */ + @com.fasterxml.jackson.annotation.JsonProperty("injectHeaders") + private final java.util.List injectHeaders; + + /** + * The single HTTP request header that the service replaces with the credential value. + * + * @return the value + */ + public java.util.List getInjectHeaders() { + return injectHeaders; + } + + @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("SandboxHttpHeaderCredentialInjectionRule("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", host=").append(String.valueOf(this.host)); + sb.append(", injectHeaders=").append(String.valueOf(this.injectHeaders)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxHttpHeaderCredentialInjectionRule)) { + return false; + } + + SandboxHttpHeaderCredentialInjectionRule other = + (SandboxHttpHeaderCredentialInjectionRule) o; + return java.util.Objects.equals(this.host, other.host) + && java.util.Objects.equals(this.injectHeaders, other.injectHeaders) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.host == null ? 43 : this.host.hashCode()); + result = + (result * PRIME) + + (this.injectHeaders == null ? 43 : this.injectHeaders.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxNetworkPolicy.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxNetworkPolicy.java new file mode 100644 index 00000000000..83e3aebff1f --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxNetworkPolicy.java @@ -0,0 +1,130 @@ +/** + * 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.generativeai.model; + +/** + * Base network policy for sandboxes in a project using Oracle-managed outbound networking.
+ * 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: 20231130") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "mode", + defaultImpl = SandboxNetworkPolicy.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxAllowNetworkPolicy.class, + name = "ALLOW"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxDenyAllNetworkPolicy.class, + name = "DENY_ALL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxAllowAllNetworkPolicy.class, + name = "ALLOW_ALL") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SandboxNetworkPolicy + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected SandboxNetworkPolicy() { + super(); + } + + @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("SandboxNetworkPolicy("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxNetworkPolicy)) { + return false; + } + + SandboxNetworkPolicy other = (SandboxNetworkPolicy) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** The default network access mode for sandboxes in this project. */ + public enum Mode implements com.oracle.bmc.http.internal.BmcEnum { + DenyAll("DENY_ALL"), + AllowAll("ALLOW_ALL"), + Allow("ALLOW"), + + /** + * 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(Mode.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Mode v : Mode.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Mode(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Mode create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Mode', returning UnknownEnumValue", key); + return UnknownEnumValue; + } + }; +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxOutboundNetworkingConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxOutboundNetworkingConfig.java new file mode 100644 index 00000000000..a5cf0aaf952 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxOutboundNetworkingConfig.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.generativeai.model; + +/** + * Base outbound networking configuration for sandboxes in a project.
+ * 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: 20231130") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "networkMode", + defaultImpl = SandboxOutboundNetworkingConfig.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = ManagedSandboxOutboundNetworkingConfig.class, + name = "MANAGED"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CustomSandboxOutboundNetworkingConfig.class, + name = "CUSTOM") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SandboxOutboundNetworkingConfig + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected SandboxOutboundNetworkingConfig() { + super(); + } + + @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("SandboxOutboundNetworkingConfig("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxOutboundNetworkingConfig)) { + return false; + } + + SandboxOutboundNetworkingConfig other = (SandboxOutboundNetworkingConfig) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** The outbound networking mode for sandboxes in this project. */ + public enum NetworkMode implements com.oracle.bmc.http.internal.BmcEnum { + Managed("MANAGED"), + Custom("CUSTOM"), + + /** + * 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(NetworkMode.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (NetworkMode v : NetworkMode.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + NetworkMode(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static NetworkMode create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'NetworkMode', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPool.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPool.java new file mode 100644 index 00000000000..2041eab483e --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPool.java @@ -0,0 +1,673 @@ +/** + * 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.generativeai.model; + +/** + * CP-owned configuration and management lifecycle of a Project-owned Sandbox warm pool. Get can + * include best-effort runtime observations independently of lifecycle.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SandboxWarmPool.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxWarmPool + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "projectId", + "name", + "type", + "containerImage", + "shape", + "desiredCapacity", + "lifecycleState", + "lifecycleDetails", + "timeCreated", + "timeUpdated", + "runtimeStatus" + }) + public SandboxWarmPool( + String projectId, + String name, + Type type, + String containerImage, + Shape shape, + Integer desiredCapacity, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + SandboxWarmPoolRuntimeStatus runtimeStatus) { + super(); + this.projectId = projectId; + this.name = name; + this.type = type; + this.containerImage = containerImage; + this.shape = shape; + this.desiredCapacity = desiredCapacity; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.runtimeStatus = runtimeStatus; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Owning Project OCID. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private String projectId; + + /** + * Owning Project OCID. + * + * @param projectId the value to set + * @return this builder + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + this.__explicitlySet__.add("projectId"); + return this; + } + /** Unique immutable name within the Project. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Unique immutable name within the Project. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** MANAGED uses the service runtime; CUSTOM uses a customer image. */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private Type type; + + /** + * MANAGED uses the service runtime; CUSTOM uses a customer image. + * + * @param type the value to set + * @return this builder + */ + public Builder type(Type type) { + this.type = type; + this.__explicitlySet__.add("type"); + return this; + } + /** Digest-pinned customer image for CUSTOM; omitted for MANAGED. */ + @com.fasterxml.jackson.annotation.JsonProperty("containerImage") + private String containerImage; + + /** + * Digest-pinned customer image for CUSTOM; omitted for MANAGED. + * + * @param containerImage the value to set + * @return this builder + */ + public Builder containerImage(String containerImage) { + this.containerImage = containerImage; + this.__explicitlySet__.add("containerImage"); + return this; + } + /** Compute shape for each idle Sandbox member. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private Shape shape; + + /** + * Compute shape for each idle Sandbox member. + * + * @param shape the value to set + * @return this builder + */ + public Builder shape(Shape shape) { + this.shape = shape; + this.__explicitlySet__.add("shape"); + return this; + } + /** Requested idle target, not observed capacity. */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private Integer desiredCapacity; + + /** + * Requested idle target, not observed capacity. + * + * @param desiredCapacity the value to set + * @return this builder + */ + public Builder desiredCapacity(Integer desiredCapacity) { + this.desiredCapacity = desiredCapacity; + this.__explicitlySet__.add("desiredCapacity"); + return this; + } + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** Additional information about the current CP management operation or failure. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * Additional information about the current CP management operation or failure. + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + return this; + } + /** Time the desired configuration was created. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * Time the desired configuration was created. + * + * @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; + } + /** Time the configuration or management lifecycle last changed; not runtime readiness. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * Time the configuration or management lifecycle last changed; not runtime readiness. + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonProperty("runtimeStatus") + private SandboxWarmPoolRuntimeStatus runtimeStatus; + + public Builder runtimeStatus(SandboxWarmPoolRuntimeStatus runtimeStatus) { + this.runtimeStatus = runtimeStatus; + this.__explicitlySet__.add("runtimeStatus"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxWarmPool build() { + SandboxWarmPool model = + new SandboxWarmPool( + this.projectId, + this.name, + this.type, + this.containerImage, + this.shape, + this.desiredCapacity, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.runtimeStatus); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxWarmPool model) { + if (model.wasPropertyExplicitlySet("projectId")) { + this.projectId(model.getProjectId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("type")) { + this.type(model.getType()); + } + if (model.wasPropertyExplicitlySet("containerImage")) { + this.containerImage(model.getContainerImage()); + } + if (model.wasPropertyExplicitlySet("shape")) { + this.shape(model.getShape()); + } + if (model.wasPropertyExplicitlySet("desiredCapacity")) { + this.desiredCapacity(model.getDesiredCapacity()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("runtimeStatus")) { + this.runtimeStatus(model.getRuntimeStatus()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Owning Project OCID. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private final String projectId; + + /** + * Owning Project OCID. + * + * @return the value + */ + public String getProjectId() { + return projectId; + } + + /** Unique immutable name within the Project. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Unique immutable name within the Project. + * + * @return the value + */ + public String getName() { + return name; + } + + /** MANAGED uses the service runtime; CUSTOM uses a customer image. */ + public enum Type implements com.oracle.bmc.http.internal.BmcEnum { + Managed("MANAGED"), + Custom("CUSTOM"), + + /** + * 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(Type.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Type v : Type.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Type(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Type create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Type', returning UnknownEnumValue", key); + return UnknownEnumValue; + } + }; + /** MANAGED uses the service runtime; CUSTOM uses a customer image. */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private final Type type; + + /** + * MANAGED uses the service runtime; CUSTOM uses a customer image. + * + * @return the value + */ + public Type getType() { + return type; + } + + /** Digest-pinned customer image for CUSTOM; omitted for MANAGED. */ + @com.fasterxml.jackson.annotation.JsonProperty("containerImage") + private final String containerImage; + + /** + * Digest-pinned customer image for CUSTOM; omitted for MANAGED. + * + * @return the value + */ + public String getContainerImage() { + return containerImage; + } + + /** Compute shape for each idle Sandbox member. */ + public enum Shape implements com.oracle.bmc.http.internal.BmcEnum { + Small("SMALL"), + Medium("MEDIUM"), + Large("LARGE"), + + /** + * 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(Shape.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Shape v : Shape.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Shape(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Shape create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Shape', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Compute shape for each idle Sandbox member. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private final Shape shape; + + /** + * Compute shape for each idle Sandbox member. + * + * @return the value + */ + public Shape getShape() { + return shape; + } + + /** Requested idle target, not observed capacity. */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private final Integer desiredCapacity; + + /** + * Requested idle target, not observed capacity. + * + * @return the value + */ + public Integer getDesiredCapacity() { + return desiredCapacity; + } + + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Creating("CREATING"), + Active("ACTIVE"), + Updating("UPDATING"), + Failed("FAILED"), + Deleting("DELETING"), + Deleted("DELETED"), + + /** + * 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; + } + }; + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** Additional information about the current CP management operation or failure. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * Additional information about the current CP management operation or failure. + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** Time the desired configuration was created. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * Time the desired configuration was created. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** Time the configuration or management lifecycle last changed; not runtime readiness. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * Time the configuration or management lifecycle last changed; not runtime readiness. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + @com.fasterxml.jackson.annotation.JsonProperty("runtimeStatus") + private final SandboxWarmPoolRuntimeStatus runtimeStatus; + + public SandboxWarmPoolRuntimeStatus getRuntimeStatus() { + return runtimeStatus; + } + + @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("SandboxWarmPool("); + sb.append("super=").append(super.toString()); + sb.append("projectId=").append(String.valueOf(this.projectId)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", type=").append(String.valueOf(this.type)); + sb.append(", containerImage=").append(String.valueOf(this.containerImage)); + sb.append(", shape=").append(String.valueOf(this.shape)); + sb.append(", desiredCapacity=").append(String.valueOf(this.desiredCapacity)); + 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(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", runtimeStatus=").append(String.valueOf(this.runtimeStatus)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxWarmPool)) { + return false; + } + + SandboxWarmPool other = (SandboxWarmPool) o; + return java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.type, other.type) + && java.util.Objects.equals(this.containerImage, other.containerImage) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.desiredCapacity, other.desiredCapacity) + && 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.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.runtimeStatus, other.runtimeStatus) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.type == null ? 43 : this.type.hashCode()); + result = + (result * PRIME) + + (this.containerImage == null ? 43 : this.containerImage.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.hashCode()); + result = + (result * PRIME) + + (this.desiredCapacity == null ? 43 : this.desiredCapacity.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.timeUpdated == null ? 43 : this.timeUpdated.hashCode()); + result = + (result * PRIME) + + (this.runtimeStatus == null ? 43 : this.runtimeStatus.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolCollection.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolCollection.java new file mode 100644 index 00000000000..1c184f3614e --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolCollection.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.generativeai.model; + +/** + * Sandbox Warm Pool Collection.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxWarmPoolCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxWarmPoolCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public SandboxWarmPoolCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Page of Sandbox warm-pool configuration summaries. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * Page of Sandbox warm-pool configuration summaries. + * + * @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 SandboxWarmPoolCollection build() { + SandboxWarmPoolCollection model = new SandboxWarmPoolCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxWarmPoolCollection 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); + } + + /** Page of Sandbox warm-pool configuration summaries. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * Page of Sandbox warm-pool configuration summaries. + * + * @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("SandboxWarmPoolCollection("); + 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 SandboxWarmPoolCollection)) { + return false; + } + + SandboxWarmPoolCollection other = (SandboxWarmPoolCollection) 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-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolConfig.java new file mode 100644 index 00000000000..50b6c936988 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolConfig.java @@ -0,0 +1,233 @@ +/** + * 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.generativeai.model; + +/** + * Read-only default warm-pool capacities for managed-runtime sandboxes. The reserved MANAGED + * default entries exposed by the named warm-pool APIs project these same values. Project create and + * update requests must not supply this configuration. Newly enabled projects start with zero + * capacity for every shape. Change capacities through the named warm-pool APIs, which also manage + * CUSTOM pools.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxWarmPoolConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxWarmPoolConfig + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"smallCount", "mediumCount", "largeCount"}) + public SandboxWarmPoolConfig(Integer smallCount, Integer mediumCount, Integer largeCount) { + super(); + this.smallCount = smallCount; + this.mediumCount = mediumCount; + this.largeCount = largeCount; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * Desired number of ready SMALL managed-runtime sandboxes. Each sandbox has 1 CPU and 4 GiB + * of memory. + */ + @com.fasterxml.jackson.annotation.JsonProperty("smallCount") + private Integer smallCount; + + /** + * Desired number of ready SMALL managed-runtime sandboxes. Each sandbox has 1 CPU and 4 GiB + * of memory. + * + * @param smallCount the value to set + * @return this builder + */ + public Builder smallCount(Integer smallCount) { + this.smallCount = smallCount; + this.__explicitlySet__.add("smallCount"); + return this; + } + /** + * Desired number of ready MEDIUM managed-runtime sandboxes. Each sandbox has 2 CPUs and 8 + * GiB of memory. + */ + @com.fasterxml.jackson.annotation.JsonProperty("mediumCount") + private Integer mediumCount; + + /** + * Desired number of ready MEDIUM managed-runtime sandboxes. Each sandbox has 2 CPUs and 8 + * GiB of memory. + * + * @param mediumCount the value to set + * @return this builder + */ + public Builder mediumCount(Integer mediumCount) { + this.mediumCount = mediumCount; + this.__explicitlySet__.add("mediumCount"); + return this; + } + /** + * Desired number of ready LARGE managed-runtime sandboxes. Each sandbox has 4 CPUs and 16 + * GiB of memory. + */ + @com.fasterxml.jackson.annotation.JsonProperty("largeCount") + private Integer largeCount; + + /** + * Desired number of ready LARGE managed-runtime sandboxes. Each sandbox has 4 CPUs and 16 + * GiB of memory. + * + * @param largeCount the value to set + * @return this builder + */ + public Builder largeCount(Integer largeCount) { + this.largeCount = largeCount; + this.__explicitlySet__.add("largeCount"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxWarmPoolConfig build() { + SandboxWarmPoolConfig model = + new SandboxWarmPoolConfig(this.smallCount, this.mediumCount, this.largeCount); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxWarmPoolConfig model) { + if (model.wasPropertyExplicitlySet("smallCount")) { + this.smallCount(model.getSmallCount()); + } + if (model.wasPropertyExplicitlySet("mediumCount")) { + this.mediumCount(model.getMediumCount()); + } + if (model.wasPropertyExplicitlySet("largeCount")) { + this.largeCount(model.getLargeCount()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * Desired number of ready SMALL managed-runtime sandboxes. Each sandbox has 1 CPU and 4 GiB of + * memory. + */ + @com.fasterxml.jackson.annotation.JsonProperty("smallCount") + private final Integer smallCount; + + /** + * Desired number of ready SMALL managed-runtime sandboxes. Each sandbox has 1 CPU and 4 GiB of + * memory. + * + * @return the value + */ + public Integer getSmallCount() { + return smallCount; + } + + /** + * Desired number of ready MEDIUM managed-runtime sandboxes. Each sandbox has 2 CPUs and 8 GiB + * of memory. + */ + @com.fasterxml.jackson.annotation.JsonProperty("mediumCount") + private final Integer mediumCount; + + /** + * Desired number of ready MEDIUM managed-runtime sandboxes. Each sandbox has 2 CPUs and 8 GiB + * of memory. + * + * @return the value + */ + public Integer getMediumCount() { + return mediumCount; + } + + /** + * Desired number of ready LARGE managed-runtime sandboxes. Each sandbox has 4 CPUs and 16 GiB + * of memory. + */ + @com.fasterxml.jackson.annotation.JsonProperty("largeCount") + private final Integer largeCount; + + /** + * Desired number of ready LARGE managed-runtime sandboxes. Each sandbox has 4 CPUs and 16 GiB + * of memory. + * + * @return the value + */ + public Integer getLargeCount() { + return largeCount; + } + + @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("SandboxWarmPoolConfig("); + sb.append("super=").append(super.toString()); + sb.append("smallCount=").append(String.valueOf(this.smallCount)); + sb.append(", mediumCount=").append(String.valueOf(this.mediumCount)); + sb.append(", largeCount=").append(String.valueOf(this.largeCount)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxWarmPoolConfig)) { + return false; + } + + SandboxWarmPoolConfig other = (SandboxWarmPoolConfig) o; + return java.util.Objects.equals(this.smallCount, other.smallCount) + && java.util.Objects.equals(this.mediumCount, other.mediumCount) + && java.util.Objects.equals(this.largeCount, other.largeCount) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.smallCount == null ? 43 : this.smallCount.hashCode()); + result = (result * PRIME) + (this.mediumCount == null ? 43 : this.mediumCount.hashCode()); + result = (result * PRIME) + (this.largeCount == null ? 43 : this.largeCount.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolRuntimeStatus.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolRuntimeStatus.java new file mode 100644 index 00000000000..743ee1e0e4c --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolRuntimeStatus.java @@ -0,0 +1,327 @@ +/** + * 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.generativeai.model; + +/** + * Best-effort runtime observations returned by GetSandboxWarmPool. Runtime read failure does not + * fail an otherwise successful configuration read or change the pool lifecycle.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxWarmPoolRuntimeStatus.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxWarmPoolRuntimeStatus + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"readyCapacity", "observationStatus", "timeRead", "reason"}) + public SandboxWarmPoolRuntimeStatus( + Integer readyCapacity, + ObservationStatus observationStatus, + java.util.Date timeRead, + String reason) { + super(); + this.readyCapacity = readyCapacity; + this.observationStatus = observationStatus; + this.timeRead = timeRead; + this.reason = reason; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * Controller-reported ready idle Sandbox members, excluding adopted customer Sandboxes. + * Omitted when unavailable; a known zero is returned as zero. This eventually consistent + * count is not a reservation or a guarantee of current allocation readiness. + */ + @com.fasterxml.jackson.annotation.JsonProperty("readyCapacity") + private Integer readyCapacity; + + /** + * Controller-reported ready idle Sandbox members, excluding adopted customer Sandboxes. + * Omitted when unavailable; a known zero is returned as zero. This eventually consistent + * count is not a reservation or a guarantee of current allocation readiness. + * + * @param readyCapacity the value to set + * @return this builder + */ + public Builder readyCapacity(Integer readyCapacity) { + this.readyCapacity = readyCapacity; + this.__explicitlySet__.add("readyCapacity"); + return this; + } + /** + * OBSERVED means the runtime status was read. UNAVAILABLE means no usable observation is + * available; configuration and management lifecycle are still returned. + */ + @com.fasterxml.jackson.annotation.JsonProperty("observationStatus") + private ObservationStatus observationStatus; + + /** + * OBSERVED means the runtime status was read. UNAVAILABLE means no usable observation is + * available; configuration and management lifecycle are still returned. + * + * @param observationStatus the value to set + * @return this builder + */ + public Builder observationStatus(ObservationStatus observationStatus) { + this.observationStatus = observationStatus; + this.__explicitlySet__.add("observationStatus"); + return this; + } + /** + * Time the runtime status was fetched, not the controller's last reconciliation time. A + * successful Kubernetes read can still contain an older controller observation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeRead") + private java.util.Date timeRead; + + /** + * Time the runtime status was fetched, not the controller's last reconciliation time. A + * successful Kubernetes read can still contain an older controller observation. + * + * @param timeRead the value to set + * @return this builder + */ + public Builder timeRead(java.util.Date timeRead) { + this.timeRead = timeRead; + this.__explicitlySet__.add("timeRead"); + return this; + } + /** Concise explanation when runtime observations are unavailable. */ + @com.fasterxml.jackson.annotation.JsonProperty("reason") + private String reason; + + /** + * Concise explanation when runtime observations are unavailable. + * + * @param reason the value to set + * @return this builder + */ + public Builder reason(String reason) { + this.reason = reason; + this.__explicitlySet__.add("reason"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxWarmPoolRuntimeStatus build() { + SandboxWarmPoolRuntimeStatus model = + new SandboxWarmPoolRuntimeStatus( + this.readyCapacity, this.observationStatus, this.timeRead, this.reason); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxWarmPoolRuntimeStatus model) { + if (model.wasPropertyExplicitlySet("readyCapacity")) { + this.readyCapacity(model.getReadyCapacity()); + } + if (model.wasPropertyExplicitlySet("observationStatus")) { + this.observationStatus(model.getObservationStatus()); + } + if (model.wasPropertyExplicitlySet("timeRead")) { + this.timeRead(model.getTimeRead()); + } + if (model.wasPropertyExplicitlySet("reason")) { + this.reason(model.getReason()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * Controller-reported ready idle Sandbox members, excluding adopted customer Sandboxes. Omitted + * when unavailable; a known zero is returned as zero. This eventually consistent count is not a + * reservation or a guarantee of current allocation readiness. + */ + @com.fasterxml.jackson.annotation.JsonProperty("readyCapacity") + private final Integer readyCapacity; + + /** + * Controller-reported ready idle Sandbox members, excluding adopted customer Sandboxes. Omitted + * when unavailable; a known zero is returned as zero. This eventually consistent count is not a + * reservation or a guarantee of current allocation readiness. + * + * @return the value + */ + public Integer getReadyCapacity() { + return readyCapacity; + } + + /** + * OBSERVED means the runtime status was read. UNAVAILABLE means no usable observation is + * available; configuration and management lifecycle are still returned. + */ + public enum ObservationStatus implements com.oracle.bmc.http.internal.BmcEnum { + Observed("OBSERVED"), + Unavailable("UNAVAILABLE"), + + /** + * 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(ObservationStatus.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (ObservationStatus v : ObservationStatus.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + ObservationStatus(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static ObservationStatus create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'ObservationStatus', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * OBSERVED means the runtime status was read. UNAVAILABLE means no usable observation is + * available; configuration and management lifecycle are still returned. + */ + @com.fasterxml.jackson.annotation.JsonProperty("observationStatus") + private final ObservationStatus observationStatus; + + /** + * OBSERVED means the runtime status was read. UNAVAILABLE means no usable observation is + * available; configuration and management lifecycle are still returned. + * + * @return the value + */ + public ObservationStatus getObservationStatus() { + return observationStatus; + } + + /** + * Time the runtime status was fetched, not the controller's last reconciliation time. A + * successful Kubernetes read can still contain an older controller observation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeRead") + private final java.util.Date timeRead; + + /** + * Time the runtime status was fetched, not the controller's last reconciliation time. A + * successful Kubernetes read can still contain an older controller observation. + * + * @return the value + */ + public java.util.Date getTimeRead() { + return timeRead; + } + + /** Concise explanation when runtime observations are unavailable. */ + @com.fasterxml.jackson.annotation.JsonProperty("reason") + private final String reason; + + /** + * Concise explanation when runtime observations are unavailable. + * + * @return the value + */ + public String getReason() { + return reason; + } + + @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("SandboxWarmPoolRuntimeStatus("); + sb.append("super=").append(super.toString()); + sb.append("readyCapacity=").append(String.valueOf(this.readyCapacity)); + sb.append(", observationStatus=").append(String.valueOf(this.observationStatus)); + sb.append(", timeRead=").append(String.valueOf(this.timeRead)); + sb.append(", reason=").append(String.valueOf(this.reason)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxWarmPoolRuntimeStatus)) { + return false; + } + + SandboxWarmPoolRuntimeStatus other = (SandboxWarmPoolRuntimeStatus) o; + return java.util.Objects.equals(this.readyCapacity, other.readyCapacity) + && java.util.Objects.equals(this.observationStatus, other.observationStatus) + && java.util.Objects.equals(this.timeRead, other.timeRead) + && java.util.Objects.equals(this.reason, other.reason) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.readyCapacity == null ? 43 : this.readyCapacity.hashCode()); + result = + (result * PRIME) + + (this.observationStatus == null ? 43 : this.observationStatus.hashCode()); + result = (result * PRIME) + (this.timeRead == null ? 43 : this.timeRead.hashCode()); + result = (result * PRIME) + (this.reason == null ? 43 : this.reason.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolSummary.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolSummary.java new file mode 100644 index 00000000000..cc98ac0e4f5 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/SandboxWarmPoolSummary.java @@ -0,0 +1,592 @@ +/** + * 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.generativeai.model; + +/** + * CP-owned configuration and management lifecycle summary. List does not perform per-pool runtime + * reads and does not return observed ready capacity.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxWarmPoolSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxWarmPoolSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "projectId", + "name", + "type", + "containerImage", + "shape", + "desiredCapacity", + "lifecycleState", + "lifecycleDetails", + "timeCreated", + "timeUpdated" + }) + public SandboxWarmPoolSummary( + String projectId, + String name, + Type type, + String containerImage, + Shape shape, + Integer desiredCapacity, + SandboxWarmPool.LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated) { + super(); + this.projectId = projectId; + this.name = name; + this.type = type; + this.containerImage = containerImage; + this.shape = shape; + this.desiredCapacity = desiredCapacity; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Owning Project OCID. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private String projectId; + + /** + * Owning Project OCID. + * + * @param projectId the value to set + * @return this builder + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + this.__explicitlySet__.add("projectId"); + return this; + } + /** Unique immutable name within the Project. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Unique immutable name within the Project. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** MANAGED uses the service runtime; CUSTOM uses a customer image. */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private Type type; + + /** + * MANAGED uses the service runtime; CUSTOM uses a customer image. + * + * @param type the value to set + * @return this builder + */ + public Builder type(Type type) { + this.type = type; + this.__explicitlySet__.add("type"); + return this; + } + /** Digest-pinned customer image for CUSTOM; omitted for MANAGED. */ + @com.fasterxml.jackson.annotation.JsonProperty("containerImage") + private String containerImage; + + /** + * Digest-pinned customer image for CUSTOM; omitted for MANAGED. + * + * @param containerImage the value to set + * @return this builder + */ + public Builder containerImage(String containerImage) { + this.containerImage = containerImage; + this.__explicitlySet__.add("containerImage"); + return this; + } + /** Compute shape for each idle Sandbox member. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private Shape shape; + + /** + * Compute shape for each idle Sandbox member. + * + * @param shape the value to set + * @return this builder + */ + public Builder shape(Shape shape) { + this.shape = shape; + this.__explicitlySet__.add("shape"); + return this; + } + /** Requested idle target, not observed capacity. */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private Integer desiredCapacity; + + /** + * Requested idle target, not observed capacity. + * + * @param desiredCapacity the value to set + * @return this builder + */ + public Builder desiredCapacity(Integer desiredCapacity) { + this.desiredCapacity = desiredCapacity; + this.__explicitlySet__.add("desiredCapacity"); + return this; + } + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private SandboxWarmPool.LifecycleState lifecycleState; + + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(SandboxWarmPool.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** Additional information about the current CP management operation or failure. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * Additional information about the current CP management operation or failure. + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + return this; + } + /** Time the desired configuration was created. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * Time the desired configuration was created. + * + * @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; + } + /** Time the configuration or management lifecycle last changed; not runtime readiness. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * Time the configuration or management lifecycle last changed; not runtime readiness. + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxWarmPoolSummary build() { + SandboxWarmPoolSummary model = + new SandboxWarmPoolSummary( + this.projectId, + this.name, + this.type, + this.containerImage, + this.shape, + this.desiredCapacity, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxWarmPoolSummary model) { + if (model.wasPropertyExplicitlySet("projectId")) { + this.projectId(model.getProjectId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("type")) { + this.type(model.getType()); + } + if (model.wasPropertyExplicitlySet("containerImage")) { + this.containerImage(model.getContainerImage()); + } + if (model.wasPropertyExplicitlySet("shape")) { + this.shape(model.getShape()); + } + if (model.wasPropertyExplicitlySet("desiredCapacity")) { + this.desiredCapacity(model.getDesiredCapacity()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Owning Project OCID. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private final String projectId; + + /** + * Owning Project OCID. + * + * @return the value + */ + public String getProjectId() { + return projectId; + } + + /** Unique immutable name within the Project. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Unique immutable name within the Project. + * + * @return the value + */ + public String getName() { + return name; + } + + /** MANAGED uses the service runtime; CUSTOM uses a customer image. */ + public enum Type implements com.oracle.bmc.http.internal.BmcEnum { + Managed("MANAGED"), + Custom("CUSTOM"), + + /** + * 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(Type.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Type v : Type.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Type(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Type create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Type', returning UnknownEnumValue", key); + return UnknownEnumValue; + } + }; + /** MANAGED uses the service runtime; CUSTOM uses a customer image. */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private final Type type; + + /** + * MANAGED uses the service runtime; CUSTOM uses a customer image. + * + * @return the value + */ + public Type getType() { + return type; + } + + /** Digest-pinned customer image for CUSTOM; omitted for MANAGED. */ + @com.fasterxml.jackson.annotation.JsonProperty("containerImage") + private final String containerImage; + + /** + * Digest-pinned customer image for CUSTOM; omitted for MANAGED. + * + * @return the value + */ + public String getContainerImage() { + return containerImage; + } + + /** Compute shape for each idle Sandbox member. */ + public enum Shape implements com.oracle.bmc.http.internal.BmcEnum { + Small("SMALL"), + Medium("MEDIUM"), + Large("LARGE"), + + /** + * 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(Shape.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Shape v : Shape.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Shape(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Shape create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Shape', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Compute shape for each idle Sandbox member. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private final Shape shape; + + /** + * Compute shape for each idle Sandbox member. + * + * @return the value + */ + public Shape getShape() { + return shape; + } + + /** Requested idle target, not observed capacity. */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private final Integer desiredCapacity; + + /** + * Requested idle target, not observed capacity. + * + * @return the value + */ + public Integer getDesiredCapacity() { + return desiredCapacity; + } + + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final SandboxWarmPool.LifecycleState lifecycleState; + + /** + * CP management lifecycle. ACTIVE means the template and requested pool configuration were + * applied and verified, independently of ready capacity. Scheduling, image-pull and runtime + * capacity failures do not by themselves change ACTIVE to FAILED. + * + * @return the value + */ + public SandboxWarmPool.LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** Additional information about the current CP management operation or failure. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * Additional information about the current CP management operation or failure. + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** Time the desired configuration was created. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * Time the desired configuration was created. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** Time the configuration or management lifecycle last changed; not runtime readiness. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * Time the configuration or management lifecycle last changed; not runtime readiness. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + @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("SandboxWarmPoolSummary("); + sb.append("super=").append(super.toString()); + sb.append("projectId=").append(String.valueOf(this.projectId)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", type=").append(String.valueOf(this.type)); + sb.append(", containerImage=").append(String.valueOf(this.containerImage)); + sb.append(", shape=").append(String.valueOf(this.shape)); + sb.append(", desiredCapacity=").append(String.valueOf(this.desiredCapacity)); + 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(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxWarmPoolSummary)) { + return false; + } + + SandboxWarmPoolSummary other = (SandboxWarmPoolSummary) o; + return java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.type, other.type) + && java.util.Objects.equals(this.containerImage, other.containerImage) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.desiredCapacity, other.desiredCapacity) + && 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.timeUpdated, other.timeUpdated) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.type == null ? 43 : this.type.hashCode()); + result = + (result * PRIME) + + (this.containerImage == null ? 43 : this.containerImage.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.hashCode()); + result = + (result * PRIME) + + (this.desiredCapacity == null ? 43 : this.desiredCapacity.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.timeUpdated == null ? 43 : this.timeUpdated.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateDedicatedAiClusterDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateDedicatedAiClusterDetails.java index 42ff4d669c0..794d9dc2a70 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateDedicatedAiClusterDetails.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateDedicatedAiClusterDetails.java @@ -5,7 +5,8 @@ package com.oracle.bmc.generativeai.model; /** - * The data to update a dedicated AI cluster.
+ * The data to update a dedicated AI cluster. Properties not defined by this schema are rejected. + *
* 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 diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateGenerativeAiProjectDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateGenerativeAiProjectDetails.java index d5eb0d78581..86fade2fe3e 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateGenerativeAiProjectDetails.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateGenerativeAiProjectDetails.java @@ -29,6 +29,7 @@ public final class UpdateGenerativeAiProjectDetails "conversationConfig", "longTermMemoryConfig", "shortTermMemoryOptimizationConfig", + "sandboxConfig", "freeformTags", "definedTags" }) @@ -38,6 +39,7 @@ public UpdateGenerativeAiProjectDetails( ConversationConfig conversationConfig, LongTermMemoryConfig longTermMemoryConfig, ShortTermMemoryOptimizationConfig shortTermMemoryOptimizationConfig, + SandboxConfig sandboxConfig, java.util.Map freeformTags, java.util.Map> definedTags) { super(); @@ -46,6 +48,7 @@ public UpdateGenerativeAiProjectDetails( this.conversationConfig = conversationConfig; this.longTermMemoryConfig = longTermMemoryConfig; this.shortTermMemoryOptimizationConfig = shortTermMemoryOptimizationConfig; + this.sandboxConfig = sandboxConfig; this.freeformTags = freeformTags; this.definedTags = definedTags; } @@ -110,6 +113,15 @@ public Builder shortTermMemoryOptimizationConfig( this.__explicitlySet__.add("shortTermMemoryOptimizationConfig"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("sandboxConfig") + private SandboxConfig sandboxConfig; + + public Builder sandboxConfig(SandboxConfig sandboxConfig) { + this.sandboxConfig = sandboxConfig; + this.__explicitlySet__.add("sandboxConfig"); + 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 @@ -173,6 +185,7 @@ public UpdateGenerativeAiProjectDetails build() { this.conversationConfig, this.longTermMemoryConfig, this.shortTermMemoryOptimizationConfig, + this.sandboxConfig, this.freeformTags, this.definedTags); for (String explicitlySetProperty : this.__explicitlySet__) { @@ -199,6 +212,9 @@ public Builder copy(UpdateGenerativeAiProjectDetails model) { this.shortTermMemoryOptimizationConfig( model.getShortTermMemoryOptimizationConfig()); } + if (model.wasPropertyExplicitlySet("sandboxConfig")) { + this.sandboxConfig(model.getSandboxConfig()); + } if (model.wasPropertyExplicitlySet("freeformTags")) { this.freeformTags(model.getFreeformTags()); } @@ -265,6 +281,13 @@ public ShortTermMemoryOptimizationConfig getShortTermMemoryOptimizationConfig() return shortTermMemoryOptimizationConfig; } + @com.fasterxml.jackson.annotation.JsonProperty("sandboxConfig") + private final SandboxConfig sandboxConfig; + + public SandboxConfig getSandboxConfig() { + return sandboxConfig; + } + /** * 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 @@ -332,6 +355,7 @@ public String toString(boolean includeByteArrayContents) { sb.append(", longTermMemoryConfig=").append(String.valueOf(this.longTermMemoryConfig)); sb.append(", shortTermMemoryOptimizationConfig=") .append(String.valueOf(this.shortTermMemoryOptimizationConfig)); + sb.append(", sandboxConfig=").append(String.valueOf(this.sandboxConfig)); sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); sb.append(", definedTags=").append(String.valueOf(this.definedTags)); sb.append(")"); @@ -355,6 +379,7 @@ public boolean equals(Object o) { && java.util.Objects.equals( this.shortTermMemoryOptimizationConfig, other.shortTermMemoryOptimizationConfig) + && java.util.Objects.equals(this.sandboxConfig, other.sandboxConfig) && java.util.Objects.equals(this.freeformTags, other.freeformTags) && java.util.Objects.equals(this.definedTags, other.definedTags) && super.equals(other); @@ -381,6 +406,9 @@ public int hashCode() { + (this.shortTermMemoryOptimizationConfig == null ? 43 : this.shortTermMemoryOptimizationConfig.hashCode()); + result = + (result * PRIME) + + (this.sandboxConfig == null ? 43 : this.sandboxConfig.hashCode()); result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); result = (result * PRIME) + super.hashCode(); diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateSandboxWarmPoolDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateSandboxWarmPoolDetails.java new file mode 100644 index 00000000000..33a5cc64c3d --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateSandboxWarmPoolDetails.java @@ -0,0 +1,169 @@ +/** + * 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.generativeai.model; + +/** + * Update Sandbox Warm Pool Details.
+ * 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: 20231130") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSandboxWarmPoolDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSandboxWarmPoolDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"desiredCapacity"}) + public UpdateSandboxWarmPoolDetails(Integer desiredCapacity) { + super(); + this.desiredCapacity = desiredCapacity; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * Replacement idle target. If omitted, the current desired capacity is preserved. An empty + * update object is allowed; an explicit null value is not allowed. Image, shape, name and + * type are immutable. Zero pauses idle prewarming. Once the pool is ACTIVE, named-pool + * Sandbox creation can still cold-start from its available applied template when no + * eligible warm member is available. Reserved MANAGED default entries may be resized + * through the existing Project configuration workflow. Named MANAGED and CUSTOM pools use + * the same warm-pool lifecycle workflows. Existing customer Sandboxes continue, and unnamed + * Sandbox creation keeps its existing behavior. + */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private Integer desiredCapacity; + + /** + * Replacement idle target. If omitted, the current desired capacity is preserved. An empty + * update object is allowed; an explicit null value is not allowed. Image, shape, name and + * type are immutable. Zero pauses idle prewarming. Once the pool is ACTIVE, named-pool + * Sandbox creation can still cold-start from its available applied template when no + * eligible warm member is available. Reserved MANAGED default entries may be resized + * through the existing Project configuration workflow. Named MANAGED and CUSTOM pools use + * the same warm-pool lifecycle workflows. Existing customer Sandboxes continue, and unnamed + * Sandbox creation keeps its existing behavior. + * + * @param desiredCapacity the value to set + * @return this builder + */ + public Builder desiredCapacity(Integer desiredCapacity) { + this.desiredCapacity = desiredCapacity; + this.__explicitlySet__.add("desiredCapacity"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSandboxWarmPoolDetails build() { + UpdateSandboxWarmPoolDetails model = + new UpdateSandboxWarmPoolDetails(this.desiredCapacity); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSandboxWarmPoolDetails model) { + if (model.wasPropertyExplicitlySet("desiredCapacity")) { + this.desiredCapacity(model.getDesiredCapacity()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * Replacement idle target. If omitted, the current desired capacity is preserved. An empty + * update object is allowed; an explicit null value is not allowed. Image, shape, name and type + * are immutable. Zero pauses idle prewarming. Once the pool is ACTIVE, named-pool Sandbox + * creation can still cold-start from its available applied template when no eligible warm + * member is available. Reserved MANAGED default entries may be resized through the existing + * Project configuration workflow. Named MANAGED and CUSTOM pools use the same warm-pool + * lifecycle workflows. Existing customer Sandboxes continue, and unnamed Sandbox creation keeps + * its existing behavior. + */ + @com.fasterxml.jackson.annotation.JsonProperty("desiredCapacity") + private final Integer desiredCapacity; + + /** + * Replacement idle target. If omitted, the current desired capacity is preserved. An empty + * update object is allowed; an explicit null value is not allowed. Image, shape, name and type + * are immutable. Zero pauses idle prewarming. Once the pool is ACTIVE, named-pool Sandbox + * creation can still cold-start from its available applied template when no eligible warm + * member is available. Reserved MANAGED default entries may be resized through the existing + * Project configuration workflow. Named MANAGED and CUSTOM pools use the same warm-pool + * lifecycle workflows. Existing customer Sandboxes continue, and unnamed Sandbox creation keeps + * its existing behavior. + * + * @return the value + */ + public Integer getDesiredCapacity() { + return desiredCapacity; + } + + @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("UpdateSandboxWarmPoolDetails("); + sb.append("super=").append(super.toString()); + sb.append("desiredCapacity=").append(String.valueOf(this.desiredCapacity)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSandboxWarmPoolDetails)) { + return false; + } + + UpdateSandboxWarmPoolDetails other = (UpdateSandboxWarmPoolDetails) o; + return java.util.Objects.equals(this.desiredCapacity, other.desiredCapacity) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.desiredCapacity == null ? 43 : this.desiredCapacity.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/CreateSandboxWarmPoolRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/CreateSandboxWarmPoolRequest.java new file mode 100644 index 00000000000..3cb41007a38 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/CreateSandboxWarmPoolRequest.java @@ -0,0 +1,323 @@ +/** + * 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.generativeai.requests; + +import com.oracle.bmc.generativeai.model.*; +/** + * Example: Click here to see how to use + * CreateSandboxWarmPoolRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class CreateSandboxWarmPoolRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails> { + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + public String getProjectId() { + return projectId; + } + /** Desired warm-pool configuration to persist. */ + private com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails + createSandboxWarmPoolDetails; + + /** Desired warm-pool configuration to persist. */ + public com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails + getCreateSandboxWarmPoolDetails() { + return createSandboxWarmPoolDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails getBody$() { + return createSandboxWarmPoolDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateSandboxWarmPoolRequest, + com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId = null; + + /** + * Owning Generative AI Project OCID. Resolve parent compartment for authorization. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** Desired warm-pool configuration to persist. */ + private com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails + createSandboxWarmPoolDetails = null; + + /** + * Desired warm-pool configuration to persist. + * + * @param createSandboxWarmPoolDetails the value to set + * @return this builder instance + */ + public Builder createSandboxWarmPoolDetails( + com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails + createSandboxWarmPoolDetails) { + this.createSandboxWarmPoolDetails = createSandboxWarmPoolDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(CreateSandboxWarmPoolRequest o) { + projectId(o.getProjectId()); + createSandboxWarmPoolDetails(o.getCreateSandboxWarmPoolDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateSandboxWarmPoolRequest 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 CreateSandboxWarmPoolRequest + */ + public CreateSandboxWarmPoolRequest build() { + CreateSandboxWarmPoolRequest 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.generativeai.model.CreateSandboxWarmPoolDetails body) { + createSandboxWarmPoolDetails(body); + return this; + } + + /** + * Build the instance of CreateSandboxWarmPoolRequest 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 CreateSandboxWarmPoolRequest + */ + public CreateSandboxWarmPoolRequest buildWithoutInvocationCallback() { + CreateSandboxWarmPoolRequest request = new CreateSandboxWarmPoolRequest(); + request.projectId = projectId; + request.createSandboxWarmPoolDetails = createSandboxWarmPoolDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new CreateSandboxWarmPoolRequest(projectId, createSandboxWarmPoolDetails, + // opcRequestId, opcRetryToken); + } + } + + /** + * 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() + .projectId(projectId) + .createSandboxWarmPoolDetails(createSandboxWarmPoolDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",createSandboxWarmPoolDetails=") + .append(String.valueOf(this.createSandboxWarmPoolDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxWarmPoolRequest)) { + return false; + } + + CreateSandboxWarmPoolRequest other = (CreateSandboxWarmPoolRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals( + this.createSandboxWarmPoolDetails, other.createSandboxWarmPoolDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = + (result * PRIME) + + (this.createSandboxWarmPoolDetails == null + ? 43 + : this.createSandboxWarmPoolDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/DeleteSandboxWarmPoolRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/DeleteSandboxWarmPoolRequest.java new file mode 100644 index 00000000000..35664ecb689 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/DeleteSandboxWarmPoolRequest.java @@ -0,0 +1,280 @@ +/** + * 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.generativeai.requests; + +import com.oracle.bmc.generativeai.model.*; +/** + * Example: Click here to see how to use + * DeleteSandboxWarmPoolRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class DeleteSandboxWarmPoolRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + public String getProjectId() { + return projectId; + } + /** Immutable name within the Project. */ + private String name; + + /** Immutable name within the Project. */ + public String getName() { + return name; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 will be 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 will be 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< + DeleteSandboxWarmPoolRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId = null; + + /** + * Owning Generative AI Project OCID. Resolve parent compartment for authorization. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** Immutable name within the Project. */ + private String name = null; + + /** + * Immutable name within the Project. + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 will be 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 will be 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(DeleteSandboxWarmPoolRequest o) { + projectId(o.getProjectId()); + name(o.getName()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteSandboxWarmPoolRequest 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 DeleteSandboxWarmPoolRequest + */ + public DeleteSandboxWarmPoolRequest build() { + DeleteSandboxWarmPoolRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteSandboxWarmPoolRequest 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 DeleteSandboxWarmPoolRequest + */ + public DeleteSandboxWarmPoolRequest buildWithoutInvocationCallback() { + DeleteSandboxWarmPoolRequest request = new DeleteSandboxWarmPoolRequest(); + request.projectId = projectId; + request.name = name; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new DeleteSandboxWarmPoolRequest(projectId, name, 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() + .projectId(projectId) + .name(name) + .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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",name=").append(String.valueOf(this.name)); + 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 DeleteSandboxWarmPoolRequest)) { + return false; + } + + DeleteSandboxWarmPoolRequest other = (DeleteSandboxWarmPoolRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.name, other.name) + && 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.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.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-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/GetSandboxWarmPoolRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/GetSandboxWarmPoolRequest.java new file mode 100644 index 00000000000..19e3bee921c --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/GetSandboxWarmPoolRequest.java @@ -0,0 +1,230 @@ +/** + * 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.generativeai.requests; + +import com.oracle.bmc.generativeai.model.*; +/** + * Example: Click here to see how to use GetSandboxWarmPoolRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class GetSandboxWarmPoolRequest extends com.oracle.bmc.requests.BmcRequest { + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + public String getProjectId() { + return projectId; + } + /** Immutable name within the Project. */ + private String name; + + /** Immutable name within the Project. */ + public String getName() { + return name; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetSandboxWarmPoolRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId = null; + + /** + * Owning Generative AI Project OCID. Resolve parent compartment for authorization. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** Immutable name within the Project. */ + private String name = null; + + /** + * Immutable name within the Project. + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(GetSandboxWarmPoolRequest o) { + projectId(o.getProjectId()); + name(o.getName()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetSandboxWarmPoolRequest 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 GetSandboxWarmPoolRequest + */ + public GetSandboxWarmPoolRequest build() { + GetSandboxWarmPoolRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetSandboxWarmPoolRequest 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 GetSandboxWarmPoolRequest + */ + public GetSandboxWarmPoolRequest buildWithoutInvocationCallback() { + GetSandboxWarmPoolRequest request = new GetSandboxWarmPoolRequest(); + request.projectId = projectId; + request.name = name; + request.opcRequestId = opcRequestId; + return request; + // new GetSandboxWarmPoolRequest(projectId, name, 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().projectId(projectId).name(name).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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",name=").append(String.valueOf(this.name)); + 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 GetSandboxWarmPoolRequest)) { + return false; + } + + GetSandboxWarmPoolRequest other = (GetSandboxWarmPoolRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersAllocatableGpusRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersAllocatableGpusRequest.java new file mode 100644 index 00000000000..7915a322eea --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersAllocatableGpusRequest.java @@ -0,0 +1,378 @@ +/** + * 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.generativeai.requests; + +import com.oracle.bmc.generativeai.model.*; +/** + * Example: Click here to see how to use + * ListDedicatedAiClustersAllocatableGpusRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class ListDedicatedAiClustersAllocatableGpusRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + public String getCompartmentId() { + return compartmentId; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + */ + private String capacityReservationId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + */ + public String getCapacityReservationId() { + return capacityReservationId; + } + /** The compute shape to use to filter allocatable GPUs. For example, {@code BM.GPU.A10.4}. */ + private String computeShape; + + /** The compute shape to use to filter allocatable GPUs. For example, {@code BM.GPU.A10.4}. */ + public String getComputeShape() { + return computeShape; + } + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public Integer getLimit() { + return limit; + } + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page; + + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public String getPage() { + return page; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListDedicatedAiClustersAllocatableGpusRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + */ + private String capacityReservationId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + * + * @param capacityReservationId the value to set + * @return this builder instance + */ + public Builder capacityReservationId(String capacityReservationId) { + this.capacityReservationId = capacityReservationId; + return this; + } + + /** + * The compute shape to use to filter allocatable GPUs. For example, {@code BM.GPU.A10.4}. + */ + private String computeShape = null; + + /** + * The compute shape to use to filter allocatable GPUs. For example, {@code BM.GPU.A10.4}. + * + * @param computeShape the value to set + * @return this builder instance + */ + public Builder computeShape(String computeShape) { + this.computeShape = computeShape; + return this; + } + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit = null; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page = null; + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(ListDedicatedAiClustersAllocatableGpusRequest o) { + compartmentId(o.getCompartmentId()); + capacityReservationId(o.getCapacityReservationId()); + computeShape(o.getComputeShape()); + limit(o.getLimit()); + page(o.getPage()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListDedicatedAiClustersAllocatableGpusRequest 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 ListDedicatedAiClustersAllocatableGpusRequest + */ + public ListDedicatedAiClustersAllocatableGpusRequest build() { + ListDedicatedAiClustersAllocatableGpusRequest request = + buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListDedicatedAiClustersAllocatableGpusRequest 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 ListDedicatedAiClustersAllocatableGpusRequest + */ + public ListDedicatedAiClustersAllocatableGpusRequest buildWithoutInvocationCallback() { + ListDedicatedAiClustersAllocatableGpusRequest request = + new ListDedicatedAiClustersAllocatableGpusRequest(); + request.compartmentId = compartmentId; + request.capacityReservationId = capacityReservationId; + request.computeShape = computeShape; + request.limit = limit; + request.page = page; + request.opcRequestId = opcRequestId; + return request; + // new ListDedicatedAiClustersAllocatableGpusRequest(compartmentId, + // capacityReservationId, computeShape, limit, page, 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() + .compartmentId(compartmentId) + .capacityReservationId(capacityReservationId) + .computeShape(computeShape) + .limit(limit) + .page(page) + .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(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(",capacityReservationId=").append(String.valueOf(this.capacityReservationId)); + sb.append(",computeShape=").append(String.valueOf(this.computeShape)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + 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 ListDedicatedAiClustersAllocatableGpusRequest)) { + return false; + } + + ListDedicatedAiClustersAllocatableGpusRequest other = + (ListDedicatedAiClustersAllocatableGpusRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.capacityReservationId, other.capacityReservationId) + && java.util.Objects.equals(this.computeShape, other.computeShape) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @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.capacityReservationId == null + ? 43 + : this.capacityReservationId.hashCode()); + result = (result * PRIME) + (this.computeShape == null ? 43 : this.computeShape.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersRequest.java index 98119aba310..ae3d9804071 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersRequest.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListDedicatedAiClustersRequest.java @@ -149,6 +149,19 @@ public static SortBy create(String key) { public SortBy getSortBy() { return sortBy; } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + */ + private String capacityReservationId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + */ + public String getCapacityReservationId() { + return capacityReservationId; + } /** * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a * particular request, please provide the request ID. The only valid characters for request IDs @@ -314,6 +327,24 @@ public Builder sortBy(SortBy sortBy) { return this; } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + */ + private String capacityReservationId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * capacity reservation. + * + * @param capacityReservationId the value to set + * @return this builder instance + */ + public Builder capacityReservationId(String capacityReservationId) { + this.capacityReservationId = capacityReservationId; + return this; + } + /** * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a * particular request, please provide the request ID. The only valid characters for request @@ -372,6 +403,7 @@ public Builder copy(ListDedicatedAiClustersRequest o) { page(o.getPage()); sortOrder(o.getSortOrder()); sortBy(o.getSortBy()); + capacityReservationId(o.getCapacityReservationId()); opcRequestId(o.getOpcRequestId()); invocationCallback(o.getInvocationCallback()); retryConfiguration(o.getRetryConfiguration()); @@ -415,10 +447,11 @@ public ListDedicatedAiClustersRequest buildWithoutInvocationCallback() { request.page = page; request.sortOrder = sortOrder; request.sortBy = sortBy; + request.capacityReservationId = capacityReservationId; request.opcRequestId = opcRequestId; return request; // new ListDedicatedAiClustersRequest(compartmentId, lifecycleState, displayName, id, - // limit, page, sortOrder, sortBy, opcRequestId); + // limit, page, sortOrder, sortBy, capacityReservationId, opcRequestId); } } @@ -437,6 +470,7 @@ public Builder toBuilder() { .page(page) .sortOrder(sortOrder) .sortBy(sortBy) + .capacityReservationId(capacityReservationId) .opcRequestId(opcRequestId); } @@ -462,6 +496,7 @@ public String toString() { sb.append(",page=").append(String.valueOf(this.page)); sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",capacityReservationId=").append(String.valueOf(this.capacityReservationId)); sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); sb.append(")"); return sb.toString(); @@ -486,6 +521,7 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.page, other.page) && java.util.Objects.equals(this.sortOrder, other.sortOrder) && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.capacityReservationId, other.capacityReservationId) && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); } @@ -505,6 +541,11 @@ public int hashCode() { result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = + (result * PRIME) + + (this.capacityReservationId == null + ? 43 + : this.capacityReservationId.hashCode()); result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); return result; } diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListSandboxWarmPoolsRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListSandboxWarmPoolsRequest.java new file mode 100644 index 00000000000..955439eced9 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/ListSandboxWarmPoolsRequest.java @@ -0,0 +1,562 @@ +/** + * 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.generativeai.requests; + +import com.oracle.bmc.generativeai.model.*; +/** + * Example: Click here to see how to use ListSandboxWarmPoolsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class ListSandboxWarmPoolsRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + public String getProjectId() { + return projectId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public Integer getLimit() { + return limit; + } + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page; + + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public String getPage() { + return page; + } + /** Exact name filter. */ + private String name; + + /** Exact name filter. */ + public String getName() { + return name; + } + /** Filter by type. */ + private Type type; + + /** Filter by type. */ + public enum Type implements com.oracle.bmc.http.internal.BmcEnum { + Managed("MANAGED"), + Custom("CUSTOM"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Type v : Type.values()) { + map.put(v.getValue(), v); + } + } + + Type(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Type create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Type: " + key); + } + }; + + /** Filter by type. */ + public Type getType() { + return type; + } + /** Filter by shape. */ + private Shape shape; + + /** Filter by shape. */ + public enum Shape implements com.oracle.bmc.http.internal.BmcEnum { + Small("SMALL"), + Medium("MEDIUM"), + Large("LARGE"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Shape v : Shape.values()) { + map.put(v.getValue(), v); + } + } + + Shape(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Shape create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Shape: " + key); + } + }; + + /** Filter by shape. */ + public Shape getShape() { + return shape; + } + /** Filter by sortBy. */ + private SortBy sortBy; + + /** Filter by sortBy. */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeCreated("timeCreated"), + Name("name"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** Filter by sortBy. */ + public SortBy getSortBy() { + return sortBy; + } + /** Filter by sortOrder. */ + private SortOrder sortOrder; + + /** Filter by sortOrder. */ + public enum SortOrder implements com.oracle.bmc.http.internal.BmcEnum { + Asc("ASC"), + Desc("DESC"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortOrder v : SortOrder.values()) { + map.put(v.getValue(), v); + } + } + + SortOrder(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortOrder create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortOrder: " + key); + } + }; + + /** Filter by sortOrder. */ + public SortOrder getSortOrder() { + return sortOrder; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListSandboxWarmPoolsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId = null; + + /** + * Owning Generative AI Project OCID. Resolve parent compartment for authorization. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit = null; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page = null; + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** Exact name filter. */ + private String name = null; + + /** + * Exact name filter. + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** Filter by type. */ + private Type type = null; + + /** + * Filter by type. + * + * @param type the value to set + * @return this builder instance + */ + public Builder type(Type type) { + this.type = type; + return this; + } + + /** Filter by shape. */ + private Shape shape = null; + + /** + * Filter by shape. + * + * @param shape the value to set + * @return this builder instance + */ + public Builder shape(Shape shape) { + this.shape = shape; + return this; + } + + /** Filter by sortBy. */ + private SortBy sortBy = null; + + /** + * Filter by sortBy. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** Filter by sortOrder. */ + private SortOrder sortOrder = null; + + /** + * Filter by sortOrder. + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(SortOrder sortOrder) { + this.sortOrder = sortOrder; + 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(ListSandboxWarmPoolsRequest o) { + projectId(o.getProjectId()); + opcRequestId(o.getOpcRequestId()); + limit(o.getLimit()); + page(o.getPage()); + name(o.getName()); + type(o.getType()); + shape(o.getShape()); + sortBy(o.getSortBy()); + sortOrder(o.getSortOrder()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListSandboxWarmPoolsRequest 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 ListSandboxWarmPoolsRequest + */ + public ListSandboxWarmPoolsRequest build() { + ListSandboxWarmPoolsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListSandboxWarmPoolsRequest 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 ListSandboxWarmPoolsRequest + */ + public ListSandboxWarmPoolsRequest buildWithoutInvocationCallback() { + ListSandboxWarmPoolsRequest request = new ListSandboxWarmPoolsRequest(); + request.projectId = projectId; + request.opcRequestId = opcRequestId; + request.limit = limit; + request.page = page; + request.name = name; + request.type = type; + request.shape = shape; + request.sortBy = sortBy; + request.sortOrder = sortOrder; + return request; + // new ListSandboxWarmPoolsRequest(projectId, opcRequestId, limit, page, name, type, + // shape, sortBy, sortOrder); + } + } + + /** + * 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() + .projectId(projectId) + .opcRequestId(opcRequestId) + .limit(limit) + .page(page) + .name(name) + .type(type) + .shape(shape) + .sortBy(sortBy) + .sortOrder(sortOrder); + } + + /** + * 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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",name=").append(String.valueOf(this.name)); + sb.append(",type=").append(String.valueOf(this.type)); + sb.append(",shape=").append(String.valueOf(this.shape)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxWarmPoolsRequest)) { + return false; + } + + ListSandboxWarmPoolsRequest other = (ListSandboxWarmPoolsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.type, other.type) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.sortOrder, other.sortOrder); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.type == null ? 43 : this.type.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/UpdateSandboxWarmPoolRequest.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/UpdateSandboxWarmPoolRequest.java new file mode 100644 index 00000000000..54739588c52 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/requests/UpdateSandboxWarmPoolRequest.java @@ -0,0 +1,344 @@ +/** + * 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.generativeai.requests; + +import com.oracle.bmc.generativeai.model.*; +/** + * Example: Click here to see how to use + * UpdateSandboxWarmPoolRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class UpdateSandboxWarmPoolRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails> { + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + public String getProjectId() { + return projectId; + } + /** Immutable name within the Project. */ + private String name; + + /** Immutable name within the Project. */ + public String getName() { + return name; + } + /** Replacement desired capacity to persist. */ + private com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails + updateSandboxWarmPoolDetails; + + /** Replacement desired capacity to persist. */ + public com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails + getUpdateSandboxWarmPoolDetails() { + return updateSandboxWarmPoolDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 will be 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 will be 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.generativeai.model.UpdateSandboxWarmPoolDetails getBody$() { + return updateSandboxWarmPoolDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpdateSandboxWarmPoolRequest, + com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Owning Generative AI Project OCID. Resolve parent compartment for authorization. */ + private String projectId = null; + + /** + * Owning Generative AI Project OCID. Resolve parent compartment for authorization. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** Immutable name within the Project. */ + private String name = null; + + /** + * Immutable name within the Project. + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** Replacement desired capacity to persist. */ + private com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails + updateSandboxWarmPoolDetails = null; + + /** + * Replacement desired capacity to persist. + * + * @param updateSandboxWarmPoolDetails the value to set + * @return this builder instance + */ + public Builder updateSandboxWarmPoolDetails( + com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails + updateSandboxWarmPoolDetails) { + this.updateSandboxWarmPoolDetails = updateSandboxWarmPoolDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 will be 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 will be 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(UpdateSandboxWarmPoolRequest o) { + projectId(o.getProjectId()); + name(o.getName()); + updateSandboxWarmPoolDetails(o.getUpdateSandboxWarmPoolDetails()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpdateSandboxWarmPoolRequest 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 UpdateSandboxWarmPoolRequest + */ + public UpdateSandboxWarmPoolRequest build() { + UpdateSandboxWarmPoolRequest 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.generativeai.model.UpdateSandboxWarmPoolDetails body) { + updateSandboxWarmPoolDetails(body); + return this; + } + + /** + * Build the instance of UpdateSandboxWarmPoolRequest 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 UpdateSandboxWarmPoolRequest + */ + public UpdateSandboxWarmPoolRequest buildWithoutInvocationCallback() { + UpdateSandboxWarmPoolRequest request = new UpdateSandboxWarmPoolRequest(); + request.projectId = projectId; + request.name = name; + request.updateSandboxWarmPoolDetails = updateSandboxWarmPoolDetails; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new UpdateSandboxWarmPoolRequest(projectId, name, updateSandboxWarmPoolDetails, + // 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() + .projectId(projectId) + .name(name) + .updateSandboxWarmPoolDetails(updateSandboxWarmPoolDetails) + .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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",name=").append(String.valueOf(this.name)); + sb.append(",updateSandboxWarmPoolDetails=") + .append(String.valueOf(this.updateSandboxWarmPoolDetails)); + 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 UpdateSandboxWarmPoolRequest)) { + return false; + } + + UpdateSandboxWarmPoolRequest other = (UpdateSandboxWarmPoolRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals( + this.updateSandboxWarmPoolDetails, other.updateSandboxWarmPoolDetails) + && 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.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = + (result * PRIME) + + (this.updateSandboxWarmPoolDetails == null + ? 43 + : this.updateSandboxWarmPoolDetails.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-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/CreateSandboxWarmPoolResponse.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/CreateSandboxWarmPoolResponse.java new file mode 100644 index 00000000000..e775ad0aa26 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/CreateSandboxWarmPoolResponse.java @@ -0,0 +1,289 @@ +/** + * 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.generativeai.responses; + +import com.oracle.bmc.generativeai.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class CreateSandboxWarmPoolResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** Opaque configuration ETag; use if-match on mutations. */ + private String etag; + + /** + * Opaque configuration ETag; use if-match on mutations. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** Nested resource URI addressed by name. */ + private String location; + + /** + * Nested resource URI addressed by name. + * + * @return the value + */ + public String getLocation() { + return location; + } + + /** The returned {@code SandboxWarmPool} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool; + + /** + * The returned {@code SandboxWarmPool} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeai.model.SandboxWarmPool getSandboxWarmPool() { + return sandboxWarmPool; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcWorkRequestId", + "opcRequestId", + "etag", + "location", + "sandboxWarmPool" + }) + private CreateSandboxWarmPoolResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId, + String etag, + String location, + com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + this.opcRequestId = opcRequestId; + this.etag = etag; + this.location = location; + this.sandboxWarmPool = sandboxWarmPool; + } + + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + return this; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** Opaque configuration ETag; use if-match on mutations. */ + private String etag; + + /** + * Opaque configuration ETag; use if-match on mutations. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** Nested resource URI addressed by name. */ + private String location; + + /** + * Nested resource URI addressed by name. + * + * @param location the value to set + * @return this builder + */ + public Builder location(String location) { + this.location = location; + return this; + } + + /** The returned {@code SandboxWarmPool} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool; + + /** + * The returned {@code SandboxWarmPool} instance. + * + * @param sandboxWarmPool the value to set + * @return this builder + */ + public Builder sandboxWarmPool( + com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool) { + this.sandboxWarmPool = sandboxWarmPool; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateSandboxWarmPoolResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + location(o.getLocation()); + sandboxWarmPool(o.getSandboxWarmPool()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateSandboxWarmPoolResponse build() { + return new CreateSandboxWarmPoolResponse( + __httpStatusCode__, + headers, + opcWorkRequestId, + opcRequestId, + etag, + location, + sandboxWarmPool); + } + } + + /** + * 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",location=").append(String.valueOf(location)); + sb.append(",sandboxWarmPool=").append(String.valueOf(sandboxWarmPool)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxWarmPoolResponse)) { + return false; + } + + CreateSandboxWarmPoolResponse other = (CreateSandboxWarmPoolResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.location, other.location) + && java.util.Objects.equals(this.sandboxWarmPool, other.sandboxWarmPool); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.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.location == null ? 43 : this.location.hashCode()); + result = + (result * PRIME) + + (this.sandboxWarmPool == null ? 43 : this.sandboxWarmPool.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/DeleteSandboxWarmPoolResponse.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/DeleteSandboxWarmPoolResponse.java new file mode 100644 index 00000000000..d9b20c1878a --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/DeleteSandboxWarmPoolResponse.java @@ -0,0 +1,181 @@ +/** + * 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.generativeai.responses; + +import com.oracle.bmc.generativeai.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class DeleteSandboxWarmPoolResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcWorkRequestId", + "opcRequestId" + }) + private DeleteSandboxWarmPoolResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + return this; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @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(DeleteSandboxWarmPoolResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteSandboxWarmPoolResponse build() { + return new DeleteSandboxWarmPoolResponse( + __httpStatusCode__, headers, opcWorkRequestId, 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + 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 DeleteSandboxWarmPoolResponse)) { + return false; + } + + DeleteSandboxWarmPoolResponse other = (DeleteSandboxWarmPoolResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/GetSandboxWarmPoolResponse.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/GetSandboxWarmPoolResponse.java new file mode 100644 index 00000000000..2d809d4347e --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/GetSandboxWarmPoolResponse.java @@ -0,0 +1,203 @@ +/** + * 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.generativeai.responses; + +import com.oracle.bmc.generativeai.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class GetSandboxWarmPoolResponse extends com.oracle.bmc.responses.BmcResponse { + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** Opaque configuration ETag; use if-match on mutations. */ + private String etag; + + /** + * Opaque configuration ETag; use if-match on mutations. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code SandboxWarmPool} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool; + + /** + * The returned {@code SandboxWarmPool} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeai.model.SandboxWarmPool getSandboxWarmPool() { + return sandboxWarmPool; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "sandboxWarmPool" + }) + private GetSandboxWarmPoolResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.sandboxWarmPool = sandboxWarmPool; + } + + 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; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** Opaque configuration ETag; use if-match on mutations. */ + private String etag; + + /** + * Opaque configuration ETag; use if-match on mutations. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code SandboxWarmPool} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool; + + /** + * The returned {@code SandboxWarmPool} instance. + * + * @param sandboxWarmPool the value to set + * @return this builder + */ + public Builder sandboxWarmPool( + com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool) { + this.sandboxWarmPool = sandboxWarmPool; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetSandboxWarmPoolResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + sandboxWarmPool(o.getSandboxWarmPool()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetSandboxWarmPoolResponse build() { + return new GetSandboxWarmPoolResponse( + __httpStatusCode__, headers, opcRequestId, etag, sandboxWarmPool); + } + } + + /** + * 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(",sandboxWarmPool=").append(String.valueOf(sandboxWarmPool)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSandboxWarmPoolResponse)) { + return false; + } + + GetSandboxWarmPoolResponse other = (GetSandboxWarmPoolResponse) 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.sandboxWarmPool, other.sandboxWarmPool); + } + + @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.sandboxWarmPool == null ? 43 : this.sandboxWarmPool.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/ListDedicatedAiClustersAllocatableGpusResponse.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/ListDedicatedAiClustersAllocatableGpusResponse.java new file mode 100644 index 00000000000..c41567ef83c --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/ListDedicatedAiClustersAllocatableGpusResponse.java @@ -0,0 +1,235 @@ +/** + * 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.generativeai.responses; + +import com.oracle.bmc.generativeai.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class ListDedicatedAiClustersAllocatableGpusResponse + 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 AllocatableGpuCollection} instance. */ + private com.oracle.bmc.generativeai.model.AllocatableGpuCollection allocatableGpuCollection; + + /** + * The returned {@code AllocatableGpuCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeai.model.AllocatableGpuCollection + getAllocatableGpuCollection() { + return allocatableGpuCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "allocatableGpuCollection" + }) + private ListDedicatedAiClustersAllocatableGpusResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.generativeai.model.AllocatableGpuCollection allocatableGpuCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.allocatableGpuCollection = allocatableGpuCollection; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + ListDedicatedAiClustersAllocatableGpusResponse> { + 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 AllocatableGpuCollection} instance. */ + private com.oracle.bmc.generativeai.model.AllocatableGpuCollection allocatableGpuCollection; + + /** + * The returned {@code AllocatableGpuCollection} instance. + * + * @param allocatableGpuCollection the value to set + * @return this builder + */ + public Builder allocatableGpuCollection( + com.oracle.bmc.generativeai.model.AllocatableGpuCollection + allocatableGpuCollection) { + this.allocatableGpuCollection = allocatableGpuCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListDedicatedAiClustersAllocatableGpusResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + allocatableGpuCollection(o.getAllocatableGpuCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListDedicatedAiClustersAllocatableGpusResponse build() { + return new ListDedicatedAiClustersAllocatableGpusResponse( + __httpStatusCode__, + headers, + opcRequestId, + opcNextPage, + allocatableGpuCollection); + } + } + + /** + * 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(",allocatableGpuCollection=").append(String.valueOf(allocatableGpuCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListDedicatedAiClustersAllocatableGpusResponse)) { + return false; + } + + ListDedicatedAiClustersAllocatableGpusResponse other = + (ListDedicatedAiClustersAllocatableGpusResponse) 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.allocatableGpuCollection, other.allocatableGpuCollection); + } + + @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.allocatableGpuCollection == null + ? 43 + : this.allocatableGpuCollection.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/ListSandboxWarmPoolsResponse.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/ListSandboxWarmPoolsResponse.java new file mode 100644 index 00000000000..c00bf4543a1 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/ListSandboxWarmPoolsResponse.java @@ -0,0 +1,213 @@ +/** + * 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.generativeai.responses; + +import com.oracle.bmc.generativeai.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class ListSandboxWarmPoolsResponse extends com.oracle.bmc.responses.BmcResponse { + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** Opaque continuation token bound to Project and filters. */ + private String opcNextPage; + + /** + * Opaque continuation token bound to Project and filters. + * + * @return the value + */ + public String getOpcNextPage() { + return opcNextPage; + } + + /** The returned {@code SandboxWarmPoolCollection} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection sandboxWarmPoolCollection; + + /** + * The returned {@code SandboxWarmPoolCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection + getSandboxWarmPoolCollection() { + return sandboxWarmPoolCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "sandboxWarmPoolCollection" + }) + private ListSandboxWarmPoolsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection sandboxWarmPoolCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.sandboxWarmPoolCollection = sandboxWarmPoolCollection; + } + + 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; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** Opaque continuation token bound to Project and filters. */ + private String opcNextPage; + + /** + * Opaque continuation token bound to Project and filters. + * + * @param opcNextPage the value to set + * @return this builder + */ + public Builder opcNextPage(String opcNextPage) { + this.opcNextPage = opcNextPage; + return this; + } + + /** The returned {@code SandboxWarmPoolCollection} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection + sandboxWarmPoolCollection; + + /** + * The returned {@code SandboxWarmPoolCollection} instance. + * + * @param sandboxWarmPoolCollection the value to set + * @return this builder + */ + public Builder sandboxWarmPoolCollection( + com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection + sandboxWarmPoolCollection) { + this.sandboxWarmPoolCollection = sandboxWarmPoolCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListSandboxWarmPoolsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + sandboxWarmPoolCollection(o.getSandboxWarmPoolCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListSandboxWarmPoolsResponse build() { + return new ListSandboxWarmPoolsResponse( + __httpStatusCode__, + headers, + opcRequestId, + opcNextPage, + sandboxWarmPoolCollection); + } + } + + /** + * 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(",sandboxWarmPoolCollection=").append(String.valueOf(sandboxWarmPoolCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxWarmPoolsResponse)) { + return false; + } + + ListSandboxWarmPoolsResponse other = (ListSandboxWarmPoolsResponse) 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.sandboxWarmPoolCollection, other.sandboxWarmPoolCollection); + } + + @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.sandboxWarmPoolCollection == null + ? 43 + : this.sandboxWarmPoolCollection.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/UpdateSandboxWarmPoolResponse.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/UpdateSandboxWarmPoolResponse.java new file mode 100644 index 00000000000..05df8d149d5 --- /dev/null +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/responses/UpdateSandboxWarmPoolResponse.java @@ -0,0 +1,255 @@ +/** + * 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.generativeai.responses; + +import com.oracle.bmc.generativeai.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20231130") +public class UpdateSandboxWarmPoolResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** Opaque ETag of the persisted configuration. */ + private String etag; + + /** + * Opaque ETag of the persisted configuration. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** The returned {@code SandboxWarmPool} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool; + + /** + * The returned {@code SandboxWarmPool} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeai.model.SandboxWarmPool getSandboxWarmPool() { + return sandboxWarmPool; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcWorkRequestId", + "etag", + "opcRequestId", + "sandboxWarmPool" + }) + private UpdateSandboxWarmPoolResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String etag, + String opcRequestId, + com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandboxWarmPool = sandboxWarmPool; + } + + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + return this; + } + + /** Opaque ETag of the persisted configuration. */ + private String etag; + + /** + * Opaque ETag of the persisted configuration. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** Request identifier. */ + private String opcRequestId; + + /** + * Request identifier. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The returned {@code SandboxWarmPool} instance. */ + private com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool; + + /** + * The returned {@code SandboxWarmPool} instance. + * + * @param sandboxWarmPool the value to set + * @return this builder + */ + public Builder sandboxWarmPool( + com.oracle.bmc.generativeai.model.SandboxWarmPool sandboxWarmPool) { + this.sandboxWarmPool = sandboxWarmPool; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(UpdateSandboxWarmPoolResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandboxWarmPool(o.getSandboxWarmPool()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpdateSandboxWarmPoolResponse build() { + return new UpdateSandboxWarmPoolResponse( + __httpStatusCode__, + headers, + opcWorkRequestId, + etag, + opcRequestId, + sandboxWarmPool); + } + } + + /** + * 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandboxWarmPool=").append(String.valueOf(sandboxWarmPool)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSandboxWarmPoolResponse)) { + return false; + } + + UpdateSandboxWarmPoolResponse other = (UpdateSandboxWarmPoolResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxWarmPool, other.sandboxWarmPool); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.sandboxWarmPool == null ? 43 : this.sandboxWarmPool.hashCode()); + return result; + } +} diff --git a/bmc-generativeai/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeai/reflect-config.json b/bmc-generativeai/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeai/reflect-config.json index e5182ec4299..ffd71e14110 100644 --- a/bmc-generativeai/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeai/reflect-config.json +++ b/bmc-generativeai/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeai/reflect-config.json @@ -19,6 +19,48 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.AllocatableGpuCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.AllocatableGpuCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.AllocatableGpuSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.AllocatableGpuSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.AllowedDomain", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.AllowedDomain$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.ApiKey", @@ -288,6 +330,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.ComputeCapacityReservation", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.ComputeCapacityReservation$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.CondenserConfig", @@ -571,6 +627,32 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails$Type", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.CreateSandboxWarmPoolDetails$Shape", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.CreateSchemasDatabaseToolsConnectionDetails", @@ -654,6 +736,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.CustomSandboxOutboundNetworkingConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.CustomSandboxOutboundNetworkingConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.CustomSemanticStoreModelSelection", @@ -1097,6 +1193,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.GpuAllocation", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.GpuAllocation$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.HostedApplication", @@ -1470,6 +1580,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.ManagedSandboxOutboundNetworkingConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.ManagedSandboxOutboundNetworkingConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.Model", @@ -1926,6 +2050,249 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxAllowAllNetworkPolicy", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxAllowAllNetworkPolicy$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxAllowNetworkPolicy", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxAllowNetworkPolicy$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxCredentialInjectionHeader", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxCredentialInjectionHeader$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxCredentialInjectionRule", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxCredentialInjectionRule$RuleType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxCredentialProfile", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxCredentialProfile$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxDenyAllNetworkPolicy", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxDenyAllNetworkPolicy$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxHttpHeaderCredentialInjectionRule", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxHttpHeaderCredentialInjectionRule$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxNetworkPolicy", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxNetworkPolicy$Mode", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxOutboundNetworkingConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxOutboundNetworkingConfig$NetworkMode", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPool", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPool$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPool$Type", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPool$Shape", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPool$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolRuntimeStatus", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolRuntimeStatus$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolRuntimeStatus$ObservationStatus", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary$Type", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.SandboxWarmPoolSummary$Shape", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.ScalingConfig", @@ -2392,6 +2759,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeai.model.UpdateSandboxWarmPoolDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.generativeai.model.UpdateSemanticStoreDetails", diff --git a/bmc-generativeaiagent/pom.xml b/bmc-generativeaiagent/pom.xml index a65a896056c..5712829b1aa 100644 --- a/bmc-generativeaiagent/pom.xml +++ b/bmc-generativeaiagent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-generativeaiagent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-generativeaiagentruntime/pom.xml b/bmc-generativeaiagentruntime/pom.xml index 22df40321c4..8c5af4fc8d3 100644 --- a/bmc-generativeaiagentruntime/pom.xml +++ b/bmc-generativeaiagentruntime/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-generativeaiagentruntime @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-generativeaidata/pom.xml b/bmc-generativeaidata/pom.xml index 59f68c51f78..e7c6021ff13 100644 --- a/bmc-generativeaidata/pom.xml +++ b/bmc-generativeaidata/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-generativeaidata @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-generativeaiinference/pom.xml b/bmc-generativeaiinference/pom.xml index 6240201bbc9..f3bea277a69 100644 --- a/bmc-generativeaiinference/pom.xml +++ b/bmc-generativeaiinference/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-generativeaiinference @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-generativeaisandbox/pom.xml b/bmc-generativeaisandbox/pom.xml new file mode 100644 index 00000000000..7216745bced --- /dev/null +++ b/bmc-generativeaisandbox/pom.xml @@ -0,0 +1,21 @@ + + + 4.0.0 + + com.oracle.oci.sdk + oci-java-sdk + 3.99.0 + ../pom.xml + + oci-java-sdk-generativeaisandbox + Oracle Cloud Infrastructure SDK - Generative Ai Sandbox + This project contains the SDK used for Oracle Cloud Infrastructure Generative Ai Sandbox + https://docs.cloud.oracle.com/Content/API/SDKDocs/javasdk.htm + + + com.oracle.oci.sdk + oci-java-sdk-common + 3.99.0 + + + \ No newline at end of file diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandbox.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandbox.java new file mode 100644 index 00000000000..294d922fc43 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandbox.java @@ -0,0 +1,481 @@ +/** + * 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.generativeaisandbox; + +import com.oracle.bmc.generativeaisandbox.requests.*; +import com.oracle.bmc.generativeaisandbox.responses.*; + +/** + * API for managing sandbox resources and exchanging sandbox access tokens. 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: 1.0") +public interface GenerativeAiSandbox 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); + + /** + * Requests cancellation of a running sandbox command. + * + * @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 + * CancelSandboxCommand API. + */ + CancelSandboxCommandResponse cancelSandboxCommand(CancelSandboxCommandRequest request); + + /** + * Creates a sandbox resource and returns its initial state. + * + * @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 CreateSandbox API. + */ + CreateSandboxResponse createSandbox(CreateSandboxRequest request); + + /** + * Creates a sandbox snapshot resource and returns its initial state. + * + * @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 + * CreateSandboxSnapshot API. + */ + CreateSandboxSnapshotResponse createSandboxSnapshot(CreateSandboxSnapshotRequest request); + + /** + * Deletes a sandbox. + * + * @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 DeleteSandbox API. + */ + DeleteSandboxResponse deleteSandbox(DeleteSandboxRequest request); + + /** + * Deletes a sandbox snapshot. + * + * @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 + * DeleteSandboxSnapshot API. + */ + DeleteSandboxSnapshotResponse deleteSandboxSnapshot(DeleteSandboxSnapshotRequest request); + + /** + * Extends the duration of a sandbox. + * + * @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 ExtendSandbox API. + */ + ExtendSandboxResponse extendSandbox(ExtendSandboxRequest request); + + /** + * Gets information about a sandbox. + * + * @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 GetSandbox API. + */ + GetSandboxResponse getSandbox(GetSandboxRequest request); + + /** + * Gets command metadata for a sandbox command. + * + * @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 GetSandboxCommand + * API. + */ + GetSandboxCommandResponse getSandboxCommand(GetSandboxCommandRequest request); + + /** + * Gets captured output for a sandbox command starting from the requested event sequence. + * + * @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 + * GetSandboxCommandOutput API. + */ + GetSandboxCommandOutputResponse getSandboxCommandOutput(GetSandboxCommandOutputRequest request); + + /** + * Gets information about a sandbox snapshot. + * + * @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 GetSandboxSnapshot + * API. + */ + GetSandboxSnapshotResponse getSandboxSnapshot(GetSandboxSnapshotRequest request); + + /** + * Lists sandbox commands for a sandbox with optional pagination. + * + * @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 ListSandboxCommand + * API. + */ + ListSandboxCommandResponse listSandboxCommand(ListSandboxCommandRequest request); + + /** + * Lists sandbox snapshot resources with optional filtering and pagination. + * + * @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 + * ListSandboxSnapshots API. + */ + ListSandboxSnapshotsResponse listSandboxSnapshots(ListSandboxSnapshotsRequest request); + + /** + * Lists sandbox resources with optional filtering and pagination. Specify exactly one of + * `projectId` or `compartmentId`. A compartment-scoped request returns sandboxes from + * Generative AI projects directly contained in that compartment; child compartments are not + * included. + * + * @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 ListSandboxes API. + */ + ListSandboxesResponse listSandboxes(ListSandboxesRequest request); + + /** + * Reads a file from a sandbox. + * + * @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 ReadSandboxFile + * API. + */ + ReadSandboxFileResponse readSandboxFile(ReadSandboxFileRequest request); + + /** + * Resumes a suspended sandbox by scaling its backing runtime back to one replica. + * + * @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 ResumeSandbox API. + */ + ResumeSandboxResponse resumeSandbox(ResumeSandboxRequest request); + + /** + * Runs a command in a sandbox and returns the command identifier immediately. + * + * @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 RunSandboxCommand + * API. + */ + RunSandboxCommandResponse runSandboxCommand(RunSandboxCommandRequest request); + + /** + * Runs a command in a sandbox and streams command events as newline-delimited JSON. Each line + * is a serialized SandboxCommandEvent. + * + * @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 + * RunSandboxCommandAndStream API. + */ + RunSandboxCommandAndStreamResponse runSandboxCommandAndStream( + RunSandboxCommandAndStreamRequest request); + + /** + * Runs a command in a sandbox, blocks until command execution finishes, and returns the final + * command metadata. + * + * @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 + * RunSandboxCommandAndWait API. + */ + RunSandboxCommandAndWaitResponse runSandboxCommandAndWait( + RunSandboxCommandAndWaitRequest request); + + /** + * Stops a running sandbox. + * + * @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 StopSandbox API. + */ + StopSandboxResponse stopSandbox(StopSandboxRequest request); + + /** + * Streams command events for an existing sandbox command from `fromSeq` through `untilSeq` + * using Server-Sent Events. Each SSE `data` field contains a serialized SandboxCommandEvent. + * + * @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 + * StreamSandboxCommandEvents API. + */ + StreamSandboxCommandEventsResponse streamSandboxCommandEvents( + StreamSandboxCommandEventsRequest request); + + /** + * Suspends a running sandbox by scaling its backing runtime to zero replicas while retaining + * the workspace block volume. + * + * @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 SuspendSandbox API. + */ + SuspendSandboxResponse suspendSandbox(SuspendSandboxRequest request); + + /** + * Updates a sandbox. + * + * @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 UpdateSandbox API. + */ + UpdateSandboxResponse updateSandbox(UpdateSandboxRequest request); + + /** + * Writes a file in a sandbox and returns the resulting file resource. + * + *

Note: This operation consumes a stream. + * + *

If the stream supports {@link java.io.InputStream#mark(int)} and {@link + * java.io.InputStream#reset()}, when a retry is necessary, the stream is reset so it starts at + * the beginning (or whatever the stream's position was at the time this operation is called}. + * + *

Note this means that if the caller has used {@link java.io.InputStream#mark(int)} before, + * then the mark will not be the same anymore after this operation, and a subsequent call to + * {@link java.io.InputStream#reset()} by the caller will reset the stream not to the caller's + * mark, but to the position the stream was in when this operation was called. + * + *

If the stream is a {@link java.io.FileInputStream}, and the stream's {@link + * java.nio.channels.FileChannel} position can be changed (like for a regular file), the stream + * will be wrapped in such a way that it does provide support for {@link + * java.io.InputStream#mark(int)} and {@link java.io.InputStream#reset()}. Then the same + * procedure as above is followed. If the stream's {@link java.nio.channels.FileChannel} + * position cannot be changed (like for a named pipe), then the stream's contents will be + * buffered in memory, as described below. + * + *

If the stream does not support {@link java.io.InputStream#mark(int)} and {@link + * java.io.InputStream#reset()}, then the stream is wrapped in a {@link + * java.io.BufferedInputStream}, which means the entire contents may be buffered in memory. Then + * the same procedure as above is followed. + * + *

The contents of the stream, except when the stream is a {@link java.io.FileInputStream} + * whose {@link java.nio.channels.FileChannel} position can be changed, should be less than 2 + * GiB in size if retries are used. This is because streams 2 GiB in size or larger do no + * guarantee that mark-and-reset can be performed. If the stream is larger, do not use built-in + * retries and manage retries yourself. + * + * @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 WriteSandboxFile + * API. + */ + WriteSandboxFileResponse writeSandboxFile(WriteSandboxFileRequest request); + + /** + * Gets the pre-configured waiters available for resources for this service. + * + * @return The service waiters. + */ + GenerativeAiSandboxWaiters 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. + */ + GenerativeAiSandboxPaginators getPaginators(); +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxAsync.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxAsync.java new file mode 100644 index 00000000000..9094b91a356 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxAsync.java @@ -0,0 +1,423 @@ +/** + * 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.generativeaisandbox; + +import com.oracle.bmc.generativeaisandbox.requests.*; +import com.oracle.bmc.generativeaisandbox.responses.*; + +/** API for managing sandbox resources and exchanging sandbox access tokens. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public interface GenerativeAiSandboxAsync 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); + + /** + * Requests cancellation of a running sandbox command. + * + * @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 cancelSandboxCommand( + CancelSandboxCommandRequest request, + com.oracle.bmc.responses.AsyncHandler< + CancelSandboxCommandRequest, CancelSandboxCommandResponse> + handler); + + /** + * Creates a sandbox resource and returns its initial state. + * + * @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 createSandbox( + CreateSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Creates a sandbox snapshot resource and returns its initial state. + * + * @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 createSandboxSnapshot( + CreateSandboxSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + CreateSandboxSnapshotRequest, CreateSandboxSnapshotResponse> + handler); + + /** + * Deletes a sandbox. + * + * @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 deleteSandbox( + DeleteSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Deletes a sandbox snapshot. + * + * @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 deleteSandboxSnapshot( + DeleteSandboxSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + DeleteSandboxSnapshotRequest, DeleteSandboxSnapshotResponse> + handler); + + /** + * Extends the duration of a sandbox. + * + * @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 extendSandbox( + ExtendSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Gets information about a sandbox. + * + * @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 getSandbox( + GetSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler handler); + + /** + * Gets command metadata for a sandbox command. + * + * @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 getSandboxCommand( + GetSandboxCommandRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetSandboxCommandRequest, GetSandboxCommandResponse> + handler); + + /** + * Gets captured output for a sandbox command starting from the requested event sequence. + * + * @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 getSandboxCommandOutput( + GetSandboxCommandOutputRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetSandboxCommandOutputRequest, GetSandboxCommandOutputResponse> + handler); + + /** + * Gets information about a sandbox snapshot. + * + * @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 getSandboxSnapshot( + GetSandboxSnapshotRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetSandboxSnapshotRequest, GetSandboxSnapshotResponse> + handler); + + /** + * Lists sandbox commands for a sandbox with optional pagination. + * + * @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 listSandboxCommand( + ListSandboxCommandRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListSandboxCommandRequest, ListSandboxCommandResponse> + handler); + + /** + * Lists sandbox snapshot resources with optional filtering and pagination. + * + * @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 listSandboxSnapshots( + ListSandboxSnapshotsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListSandboxSnapshotsRequest, ListSandboxSnapshotsResponse> + handler); + + /** + * Lists sandbox resources with optional filtering and pagination. Specify exactly one of + * `projectId` or `compartmentId`. A compartment-scoped request returns sandboxes from + * Generative AI projects directly contained in that compartment; child compartments are not + * included. + * + * @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 listSandboxes( + ListSandboxesRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Reads a file from a sandbox. + * + * @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 readSandboxFile( + ReadSandboxFileRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Resumes a suspended sandbox by scaling its backing runtime back to one replica. + * + * @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 resumeSandbox( + ResumeSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Runs a command in a sandbox and returns the command identifier immediately. + * + * @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 runSandboxCommand( + RunSandboxCommandRequest request, + com.oracle.bmc.responses.AsyncHandler< + RunSandboxCommandRequest, RunSandboxCommandResponse> + handler); + + /** + * Runs a command in a sandbox and streams command events as newline-delimited JSON. Each line + * is a serialized SandboxCommandEvent. + * + * @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 runSandboxCommandAndStream( + RunSandboxCommandAndStreamRequest request, + com.oracle.bmc.responses.AsyncHandler< + RunSandboxCommandAndStreamRequest, RunSandboxCommandAndStreamResponse> + handler); + + /** + * Runs a command in a sandbox, blocks until command execution finishes, and returns the final + * command metadata. + * + * @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 runSandboxCommandAndWait( + RunSandboxCommandAndWaitRequest request, + com.oracle.bmc.responses.AsyncHandler< + RunSandboxCommandAndWaitRequest, RunSandboxCommandAndWaitResponse> + handler); + + /** + * Stops a running sandbox. + * + * @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 stopSandbox( + StopSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler handler); + + /** + * Streams command events for an existing sandbox command from `fromSeq` through `untilSeq` + * using Server-Sent Events. Each SSE `data` field contains a serialized SandboxCommandEvent. + * + * @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 streamSandboxCommandEvents( + StreamSandboxCommandEventsRequest request, + com.oracle.bmc.responses.AsyncHandler< + StreamSandboxCommandEventsRequest, StreamSandboxCommandEventsResponse> + handler); + + /** + * Suspends a running sandbox by scaling its backing runtime to zero replicas while retaining + * the workspace block volume. + * + * @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 suspendSandbox( + SuspendSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Updates a sandbox. + * + * @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 updateSandbox( + UpdateSandboxRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Writes a file in a sandbox and returns the resulting file resource. + * + * @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 writeSandboxFile( + WriteSandboxFileRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxAsyncClient.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxAsyncClient.java new file mode 100644 index 00000000000..ca7d7e62d8e --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxAsyncClient.java @@ -0,0 +1,1035 @@ +/** + * 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.generativeaisandbox; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.generativeaisandbox.requests.*; +import com.oracle.bmc.generativeaisandbox.responses.*; + +import java.util.Objects; + +/** + * Async client implementation for GenerativeAiSandbox 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: 1.0") +public class GenerativeAiSandboxAsyncClient extends com.oracle.bmc.http.internal.BaseAsyncClient + implements GenerativeAiSandboxAsync { + /** Service instance for GenerativeAiSandbox. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(GenerativeAiSandboxClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://inference.generativeai.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(GenerativeAiSandboxAsyncClient.class); + + GenerativeAiSandboxAsyncClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + this(builder, authenticationDetailsProvider, true); + } + + GenerativeAiSandboxAsyncClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, + boolean isStreamWarningEnabled) { + super(builder, authenticationDetailsProvider); + + if (isStreamWarningEnabled && com.oracle.bmc.util.StreamUtils.isExtraStreamLogsEnabled()) { + LOG.warn( + com.oracle.bmc.util.StreamUtils.getStreamWarningMessage( + "GenerativeAiSandboxAsyncClient", + "readSandboxFile,runSandboxCommandAndStream,streamSandboxCommandEvents")); + } + } + + /** + * 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, GenerativeAiSandboxAsyncClient> { + private boolean isStreamWarningEnabled = true; + + private Builder(com.oracle.bmc.Service service) { + super(service); + final String packageName = "generativeaisandbox"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + requestSignerFactory = + new com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory( + com.oracle.bmc.http.signing.SigningStrategy.STANDARD); + } + + /** + * Enable/disable the stream warnings for the client + * + * @param isStreamWarningEnabled executorService + * @return this builder + */ + public Builder isStreamWarningEnabled(boolean isStreamWarningEnabled) { + this.isStreamWarningEnabled = isStreamWarningEnabled; + return this; + } + + /** + * Build the client. + * + * @param authenticationDetailsProvider authentication details provider + * @return the client + */ + public GenerativeAiSandboxAsyncClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new GenerativeAiSandboxAsyncClient( + this, authenticationDetailsProvider, isStreamWarningEnabled); + } + } + + @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 cancelSandboxCommand( + CancelSandboxCommandRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CancelSandboxCommandRequest, CancelSandboxCommandResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + Objects.requireNonNull( + request.getCancelSandboxCommandDetails(), + "cancelSandboxCommandDetails is required"); + + return clientCall(request, CancelSandboxCommandResponse::builder) + .logger(LOG, "cancelSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "CancelSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CancelSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .appendPathParam("actions") + .appendPathParam("cancel") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand.class, + CancelSandboxCommandResponse.Builder::sandboxCommand) + .handleResponseHeaderString( + "opc-request-id", CancelSandboxCommandResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future createSandbox( + CreateSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + Objects.requireNonNull(request.getProjectId(), "projectId is required"); + + Objects.requireNonNull( + request.getCreateSandboxDetails(), "createSandboxDetails is required"); + + return clientCall(request, CreateSandboxResponse::builder) + .logger(LOG, "createSandbox") + .serviceDetails("GenerativeAiSandbox", "CreateSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("project-id", request.getProjectId()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + CreateSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", CreateSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", CreateSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future createSandboxSnapshot( + CreateSandboxSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CreateSandboxSnapshotRequest, CreateSandboxSnapshotResponse> + handler) { + Objects.requireNonNull( + request.getCreateSandboxSnapshotDetails(), + "createSandboxSnapshotDetails is required"); + + return clientCall(request, CreateSandboxSnapshotResponse::builder) + .logger(LOG, "createSandboxSnapshot") + .serviceDetails("GenerativeAiSandbox", "CreateSandboxSnapshot", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateSandboxSnapshotRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.class, + CreateSandboxSnapshotResponse.Builder::sandboxSnapshot) + .handleResponseHeaderString("etag", CreateSandboxSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", CreateSandboxSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future deleteSandbox( + DeleteSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + return clientCall(request, DeleteSandboxResponse::builder) + .logger(LOG, "deleteSandbox") + .serviceDetails("GenerativeAiSandbox", "DeleteSandbox", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .handleResponseHeaderString( + "opc-request-id", DeleteSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future deleteSandboxSnapshot( + DeleteSandboxSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + DeleteSandboxSnapshotRequest, DeleteSandboxSnapshotResponse> + handler) { + + Validate.notBlank(request.getSnapshotId(), "snapshotId must not be blank"); + + return clientCall(request, DeleteSandboxSnapshotResponse::builder) + .logger(LOG, "deleteSandboxSnapshot") + .serviceDetails("GenerativeAiSandbox", "DeleteSandboxSnapshot", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteSandboxSnapshotRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .appendPathParam(request.getSnapshotId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .handleResponseHeaderString( + "opc-request-id", DeleteSandboxSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future extendSandbox( + ExtendSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getExtendSandboxDetails(), "extendSandboxDetails is required"); + + return clientCall(request, ExtendSandboxResponse::builder) + .logger(LOG, "extendSandbox") + .serviceDetails("GenerativeAiSandbox", "ExtendSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ExtendSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("extend") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + ExtendSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", ExtendSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", ExtendSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getSandbox( + GetSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + return clientCall(request, GetSandboxResponse::builder) + .logger(LOG, "getSandbox") + .serviceDetails("GenerativeAiSandbox", "GetSandbox", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + GetSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", GetSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getSandboxCommand( + GetSandboxCommandRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetSandboxCommandRequest, GetSandboxCommandResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + + return clientCall(request, GetSandboxCommandResponse::builder) + .logger(LOG, "getSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "GetSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand.class, + GetSandboxCommandResponse.Builder::sandboxCommand) + .handleResponseHeaderString( + "opc-request-id", GetSandboxCommandResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getSandboxCommandOutput( + GetSandboxCommandOutputRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetSandboxCommandOutputRequest, GetSandboxCommandOutputResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + + return clientCall(request, GetSandboxCommandOutputResponse::builder) + .logger(LOG, "getSandboxCommandOutput") + .serviceDetails("GenerativeAiSandbox", "GetSandboxCommandOutput", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxCommandOutputRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .appendPathParam("output") + .appendQueryParam("fromSeq", request.getFromSeq()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput.class, + GetSandboxCommandOutputResponse.Builder::sandboxCommandOutput) + .handleResponseHeaderString( + "opc-request-id", GetSandboxCommandOutputResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getSandboxSnapshot( + GetSandboxSnapshotRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetSandboxSnapshotRequest, GetSandboxSnapshotResponse> + handler) { + + Validate.notBlank(request.getSnapshotId(), "snapshotId must not be blank"); + + return clientCall(request, GetSandboxSnapshotResponse::builder) + .logger(LOG, "getSandboxSnapshot") + .serviceDetails("GenerativeAiSandbox", "GetSandboxSnapshot", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxSnapshotRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .appendPathParam(request.getSnapshotId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.class, + GetSandboxSnapshotResponse.Builder::sandboxSnapshot) + .handleResponseHeaderString("etag", GetSandboxSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetSandboxSnapshotResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listSandboxCommand( + ListSandboxCommandRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListSandboxCommandRequest, ListSandboxCommandResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + return clientCall(request, ListSandboxCommandResponse::builder) + .logger(LOG, "listSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "ListSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendQueryParam("commandId", request.getCommandId()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection.class, + ListSandboxCommandResponse.Builder::sandboxCommandCollection) + .handleResponseHeaderString( + "opc-next-page", ListSandboxCommandResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListSandboxCommandResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listSandboxSnapshots( + ListSandboxSnapshotsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListSandboxSnapshotsRequest, ListSandboxSnapshotsResponse> + handler) { + + return clientCall(request, ListSandboxSnapshotsResponse::builder) + .logger(LOG, "listSandboxSnapshots") + .serviceDetails("GenerativeAiSandbox", "ListSandboxSnapshots", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxSnapshotsRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .appendQueryParam("projectId", request.getProjectId()) + .appendQueryParam("displayName", request.getDisplayName()) + .appendQueryParam("sandboxId", request.getSandboxId()) + .appendQueryParam("snapshotId", request.getSnapshotId()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection.class, + ListSandboxSnapshotsResponse.Builder::sandboxSnapshotCollection) + .handleResponseHeaderString( + "opc-next-page", ListSandboxSnapshotsResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListSandboxSnapshotsResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listSandboxes( + ListSandboxesRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + return clientCall(request, ListSandboxesResponse::builder) + .logger(LOG, "listSandboxes") + .serviceDetails("GenerativeAiSandbox", "ListSandboxes", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxesRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendQueryParam("projectId", request.getProjectId()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("sandboxId", request.getSandboxId()) + .appendQueryParam("displayName", request.getDisplayName()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCollection.class, + ListSandboxesResponse.Builder::sandboxCollection) + .handleResponseHeaderString( + "opc-next-page", ListSandboxesResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListSandboxesResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future readSandboxFile( + ReadSandboxFileRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ReadSandboxFileRequest, ReadSandboxFileResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull(request.getFilePath(), "filePath is required"); + + return clientCall(request, ReadSandboxFileResponse::builder) + .logger(LOG, "readSandboxFile") + .serviceDetails("GenerativeAiSandbox", "ReadSandboxFile", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ReadSandboxFileRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("files") + .appendPathParam("read") + .appendQueryParam("filePath", request.getFilePath()) + .accept("application/octet-stream") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody(java.io.InputStream.class, ReadSandboxFileResponse.Builder::inputStream) + .handleResponseHeaderString( + "opc-request-id", ReadSandboxFileResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-content-sha256", ReadSandboxFileResponse.Builder::opcContentSha256) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future resumeSandbox( + ResumeSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getResumeSandboxDetails(), "resumeSandboxDetails is required"); + + return clientCall(request, ResumeSandboxResponse::builder) + .logger(LOG, "resumeSandbox") + .serviceDetails("GenerativeAiSandbox", "ResumeSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ResumeSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("resume") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + ResumeSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", ResumeSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", ResumeSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future runSandboxCommand( + RunSandboxCommandRequest request, + final com.oracle.bmc.responses.AsyncHandler< + RunSandboxCommandRequest, RunSandboxCommandResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getRunSandboxCommandDetails(), "runSandboxCommandDetails is required"); + + return clientCall(request, RunSandboxCommandResponse::builder) + .logger(LOG, "runSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "RunSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(RunSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier.class, + RunSandboxCommandResponse.Builder::sandboxCommandIdentifier) + .handleResponseHeaderString( + "opc-request-id", RunSandboxCommandResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future + runSandboxCommandAndStream( + RunSandboxCommandAndStreamRequest request, + final com.oracle.bmc.responses.AsyncHandler< + RunSandboxCommandAndStreamRequest, + RunSandboxCommandAndStreamResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getRunSandboxCommandDetails(), "runSandboxCommandDetails is required"); + + return clientCall(request, RunSandboxCommandAndStreamResponse::builder) + .logger(LOG, "runSandboxCommandAndStream") + .serviceDetails("GenerativeAiSandbox", "RunSandboxCommandAndStream", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(RunSandboxCommandAndStreamRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam("actions") + .appendPathParam("runAndStream") + .accept("application/x-ndjson") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleBody( + java.io.InputStream.class, + RunSandboxCommandAndStreamResponse.Builder::inputStream) + .handleResponseHeaderString( + "opc-request-id", RunSandboxCommandAndStreamResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future runSandboxCommandAndWait( + RunSandboxCommandAndWaitRequest request, + final com.oracle.bmc.responses.AsyncHandler< + RunSandboxCommandAndWaitRequest, RunSandboxCommandAndWaitResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getRunSandboxCommandDetails(), "runSandboxCommandDetails is required"); + + return clientCall(request, RunSandboxCommandAndWaitResponse::builder) + .logger(LOG, "runSandboxCommandAndWait") + .serviceDetails("GenerativeAiSandbox", "RunSandboxCommandAndWait", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(RunSandboxCommandAndWaitRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam("actions") + .appendPathParam("runAndWait") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand.class, + RunSandboxCommandAndWaitResponse.Builder::sandboxCommand) + .handleResponseHeaderString( + "opc-request-id", RunSandboxCommandAndWaitResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future stopSandbox( + StopSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull(request.getStopSandboxDetails(), "stopSandboxDetails is required"); + + return clientCall(request, StopSandboxResponse::builder) + .logger(LOG, "stopSandbox") + .serviceDetails("GenerativeAiSandbox", "StopSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(StopSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("stop") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + StopSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", StopSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", StopSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future + streamSandboxCommandEvents( + StreamSandboxCommandEventsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + StreamSandboxCommandEventsRequest, + StreamSandboxCommandEventsResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + + return clientCall(request, StreamSandboxCommandEventsResponse::builder) + .logger(LOG, "streamSandboxCommandEvents") + .serviceDetails("GenerativeAiSandbox", "StreamSandboxCommandEvents", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(StreamSandboxCommandEventsRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .appendPathParam("events") + .appendQueryParam("fromSeq", request.getFromSeq()) + .appendQueryParam("untilSeq", request.getUntilSeq()) + .accept("text/event-stream") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + java.io.InputStream.class, + StreamSandboxCommandEventsResponse.Builder::inputStream) + .handleEventStream(StreamSandboxCommandEventsResponse.Builder::eventStream) + .handleResponseHeaderString( + "opc-request-id", StreamSandboxCommandEventsResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future suspendSandbox( + SuspendSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler< + SuspendSandboxRequest, SuspendSandboxResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getSuspendSandboxDetails(), "suspendSandboxDetails is required"); + + return clientCall(request, SuspendSandboxResponse::builder) + .logger(LOG, "suspendSandbox") + .serviceDetails("GenerativeAiSandbox", "SuspendSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(SuspendSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("suspend") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + SuspendSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", SuspendSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", SuspendSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future updateSandbox( + UpdateSandboxRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getUpdateSandboxDetails(), "updateSandboxDetails is required"); + + return clientCall(request, UpdateSandboxResponse::builder) + .logger(LOG, "updateSandbox") + .serviceDetails("GenerativeAiSandbox", "UpdateSandbox", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + UpdateSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", UpdateSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", UpdateSandboxResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future writeSandboxFile( + WriteSandboxFileRequest request, + final com.oracle.bmc.responses.AsyncHandler< + WriteSandboxFileRequest, WriteSandboxFileResponse> + handler) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull(request.getFilePath(), "filePath is required"); + + Objects.requireNonNull( + request.getWriteSandboxFileContentDetails(), + "writeSandboxFileContentDetails is required"); + + return clientCall(request, WriteSandboxFileResponse::builder) + .logger(LOG, "writeSandboxFile") + .serviceDetails("GenerativeAiSandbox", "WriteSandboxFile", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(WriteSandboxFileRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("files") + .appendPathParam("write") + .appendQueryParam("filePath", request.getFilePath()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-content-sha256", request.getOpcContentSha256()) + .hasBinaryRequestBody() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxFile.class, + WriteSandboxFileResponse.Builder::sandboxFile) + .handleResponseHeaderString( + "opc-request-id", WriteSandboxFileResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-content-sha256", WriteSandboxFileResponse.Builder::opcContentSha256) + .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 GenerativeAiSandboxAsyncClient( + 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 GenerativeAiSandboxAsyncClient( + 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 GenerativeAiSandboxAsyncClient( + 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 GenerativeAiSandboxAsyncClient( + 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 GenerativeAiSandboxAsyncClient( + 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 GenerativeAiSandboxAsyncClient( + 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 GenerativeAiSandboxAsyncClient( + 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxClient.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxClient.java new file mode 100644 index 00000000000..1e2c7ce657a --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxClient.java @@ -0,0 +1,1058 @@ +/** + * 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.generativeaisandbox; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.generativeaisandbox.requests.*; +import com.oracle.bmc.generativeaisandbox.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: 1.0") +public class GenerativeAiSandboxClient extends com.oracle.bmc.http.internal.BaseSyncClient + implements GenerativeAiSandbox { + /** Service instance for GenerativeAiSandbox. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(GenerativeAiSandboxClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://inference.generativeai.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(GenerativeAiSandboxClient.class); + + private final GenerativeAiSandboxWaiters waiters; + + private final GenerativeAiSandboxPaginators paginators; + + GenerativeAiSandboxClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, + java.util.concurrent.ExecutorService executorService) { + this(builder, authenticationDetailsProvider, executorService, true); + } + + GenerativeAiSandboxClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, + java.util.concurrent.ExecutorService executorService, + boolean isStreamWarningEnabled) { + 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("GenerativeAiSandbox-waiters-%d") + .build()); + threadPoolExecutor.allowCoreThreadTimeOut(true); + + executorService = threadPoolExecutor; + } + this.waiters = new GenerativeAiSandboxWaiters(executorService, this); + + this.paginators = new GenerativeAiSandboxPaginators(this); + if (isStreamWarningEnabled && com.oracle.bmc.util.StreamUtils.isExtraStreamLogsEnabled()) { + LOG.warn( + com.oracle.bmc.util.StreamUtils.getStreamWarningMessage( + "GenerativeAiSandboxClient", + "readSandboxFile,runSandboxCommandAndStream,streamSandboxCommandEvents")); + } + } + + /** + * 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, GenerativeAiSandboxClient> { + private boolean isStreamWarningEnabled = true; + private java.util.concurrent.ExecutorService executorService; + + private Builder(com.oracle.bmc.Service service) { + super(service); + final String packageName = "generativeaisandbox"; + 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; + } + + /** + * Enable/disable the stream warnings for the client + * + * @param isStreamWarningEnabled executorService + * @return this builder + */ + public Builder isStreamWarningEnabled(boolean isStreamWarningEnabled) { + this.isStreamWarningEnabled = isStreamWarningEnabled; + return this; + } + + /** + * Build the client. + * + * @param authenticationDetailsProvider authentication details provider + * @return the client + */ + public GenerativeAiSandboxClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new GenerativeAiSandboxClient( + this, authenticationDetailsProvider, executorService, isStreamWarningEnabled); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public CancelSandboxCommandResponse cancelSandboxCommand(CancelSandboxCommandRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + Objects.requireNonNull( + request.getCancelSandboxCommandDetails(), + "cancelSandboxCommandDetails is required"); + + return clientCall(request, CancelSandboxCommandResponse::builder) + .logger(LOG, "cancelSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "CancelSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CancelSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .appendPathParam("actions") + .appendPathParam("cancel") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand.class, + CancelSandboxCommandResponse.Builder::sandboxCommand) + .handleResponseHeaderString( + "opc-request-id", CancelSandboxCommandResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public CreateSandboxResponse createSandbox(CreateSandboxRequest request) { + Objects.requireNonNull(request.getProjectId(), "projectId is required"); + + Objects.requireNonNull( + request.getCreateSandboxDetails(), "createSandboxDetails is required"); + + return clientCall(request, CreateSandboxResponse::builder) + .logger(LOG, "createSandbox") + .serviceDetails("GenerativeAiSandbox", "CreateSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("project-id", request.getProjectId()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + CreateSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", CreateSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", CreateSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public CreateSandboxSnapshotResponse createSandboxSnapshot( + CreateSandboxSnapshotRequest request) { + Objects.requireNonNull( + request.getCreateSandboxSnapshotDetails(), + "createSandboxSnapshotDetails is required"); + + return clientCall(request, CreateSandboxSnapshotResponse::builder) + .logger(LOG, "createSandboxSnapshot") + .serviceDetails("GenerativeAiSandbox", "CreateSandboxSnapshot", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateSandboxSnapshotRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.class, + CreateSandboxSnapshotResponse.Builder::sandboxSnapshot) + .handleResponseHeaderString("etag", CreateSandboxSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", CreateSandboxSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public DeleteSandboxResponse deleteSandbox(DeleteSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + return clientCall(request, DeleteSandboxResponse::builder) + .logger(LOG, "deleteSandbox") + .serviceDetails("GenerativeAiSandbox", "DeleteSandbox", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-request-id", DeleteSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public DeleteSandboxSnapshotResponse deleteSandboxSnapshot( + DeleteSandboxSnapshotRequest request) { + + Validate.notBlank(request.getSnapshotId(), "snapshotId must not be blank"); + + return clientCall(request, DeleteSandboxSnapshotResponse::builder) + .logger(LOG, "deleteSandboxSnapshot") + .serviceDetails("GenerativeAiSandbox", "DeleteSandboxSnapshot", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteSandboxSnapshotRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .appendPathParam(request.getSnapshotId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-request-id", DeleteSandboxSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ExtendSandboxResponse extendSandbox(ExtendSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getExtendSandboxDetails(), "extendSandboxDetails is required"); + + return clientCall(request, ExtendSandboxResponse::builder) + .logger(LOG, "extendSandbox") + .serviceDetails("GenerativeAiSandbox", "ExtendSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ExtendSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("extend") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + ExtendSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", ExtendSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", ExtendSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetSandboxResponse getSandbox(GetSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + return clientCall(request, GetSandboxResponse::builder) + .logger(LOG, "getSandbox") + .serviceDetails("GenerativeAiSandbox", "GetSandbox", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + GetSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", GetSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetSandboxCommandResponse getSandboxCommand(GetSandboxCommandRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + + return clientCall(request, GetSandboxCommandResponse::builder) + .logger(LOG, "getSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "GetSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand.class, + GetSandboxCommandResponse.Builder::sandboxCommand) + .handleResponseHeaderString( + "opc-request-id", GetSandboxCommandResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetSandboxCommandOutputResponse getSandboxCommandOutput( + GetSandboxCommandOutputRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + + return clientCall(request, GetSandboxCommandOutputResponse::builder) + .logger(LOG, "getSandboxCommandOutput") + .serviceDetails("GenerativeAiSandbox", "GetSandboxCommandOutput", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxCommandOutputRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .appendPathParam("output") + .appendQueryParam("fromSeq", request.getFromSeq()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput.class, + GetSandboxCommandOutputResponse.Builder::sandboxCommandOutput) + .handleResponseHeaderString( + "opc-request-id", GetSandboxCommandOutputResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetSandboxSnapshotResponse getSandboxSnapshot(GetSandboxSnapshotRequest request) { + + Validate.notBlank(request.getSnapshotId(), "snapshotId must not be blank"); + + return clientCall(request, GetSandboxSnapshotResponse::builder) + .logger(LOG, "getSandboxSnapshot") + .serviceDetails("GenerativeAiSandbox", "GetSandboxSnapshot", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSandboxSnapshotRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .appendPathParam(request.getSnapshotId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.class, + GetSandboxSnapshotResponse.Builder::sandboxSnapshot) + .handleResponseHeaderString("etag", GetSandboxSnapshotResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetSandboxSnapshotResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ListSandboxCommandResponse listSandboxCommand(ListSandboxCommandRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + return clientCall(request, ListSandboxCommandResponse::builder) + .logger(LOG, "listSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "ListSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendQueryParam("commandId", request.getCommandId()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection.class, + ListSandboxCommandResponse.Builder::sandboxCommandCollection) + .handleResponseHeaderString( + "opc-next-page", ListSandboxCommandResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListSandboxCommandResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ListSandboxSnapshotsResponse listSandboxSnapshots(ListSandboxSnapshotsRequest request) { + + return clientCall(request, ListSandboxSnapshotsResponse::builder) + .logger(LOG, "listSandboxSnapshots") + .serviceDetails("GenerativeAiSandbox", "ListSandboxSnapshots", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxSnapshotsRequest::builder) + .basePath("/20260422") + .appendPathParam("snapshots") + .appendQueryParam("projectId", request.getProjectId()) + .appendQueryParam("displayName", request.getDisplayName()) + .appendQueryParam("sandboxId", request.getSandboxId()) + .appendQueryParam("snapshotId", request.getSnapshotId()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection.class, + ListSandboxSnapshotsResponse.Builder::sandboxSnapshotCollection) + .handleResponseHeaderString( + "opc-next-page", ListSandboxSnapshotsResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListSandboxSnapshotsResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ListSandboxesResponse listSandboxes(ListSandboxesRequest request) { + + return clientCall(request, ListSandboxesResponse::builder) + .logger(LOG, "listSandboxes") + .serviceDetails("GenerativeAiSandbox", "ListSandboxes", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListSandboxesRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendQueryParam("projectId", request.getProjectId()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("sandboxId", request.getSandboxId()) + .appendQueryParam("displayName", request.getDisplayName()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCollection.class, + ListSandboxesResponse.Builder::sandboxCollection) + .handleResponseHeaderString( + "opc-next-page", ListSandboxesResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListSandboxesResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ReadSandboxFileResponse readSandboxFile(ReadSandboxFileRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull(request.getFilePath(), "filePath is required"); + + return clientCall(request, ReadSandboxFileResponse::builder) + .logger(LOG, "readSandboxFile") + .serviceDetails("GenerativeAiSandbox", "ReadSandboxFile", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ReadSandboxFileRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("files") + .appendPathParam("read") + .appendQueryParam("filePath", request.getFilePath()) + .accept("application/octet-stream") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody(java.io.InputStream.class, ReadSandboxFileResponse.Builder::inputStream) + .handleResponseHeaderString( + "opc-request-id", ReadSandboxFileResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-content-sha256", ReadSandboxFileResponse.Builder::opcContentSha256) + .callSync(); + } + + @Override + public ResumeSandboxResponse resumeSandbox(ResumeSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getResumeSandboxDetails(), "resumeSandboxDetails is required"); + + return clientCall(request, ResumeSandboxResponse::builder) + .logger(LOG, "resumeSandbox") + .serviceDetails("GenerativeAiSandbox", "ResumeSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ResumeSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("resume") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + ResumeSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", ResumeSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", ResumeSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public RunSandboxCommandResponse runSandboxCommand(RunSandboxCommandRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getRunSandboxCommandDetails(), "runSandboxCommandDetails is required"); + + return clientCall(request, RunSandboxCommandResponse::builder) + .logger(LOG, "runSandboxCommand") + .serviceDetails("GenerativeAiSandbox", "RunSandboxCommand", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(RunSandboxCommandRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier.class, + RunSandboxCommandResponse.Builder::sandboxCommandIdentifier) + .handleResponseHeaderString( + "opc-request-id", RunSandboxCommandResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public RunSandboxCommandAndStreamResponse runSandboxCommandAndStream( + RunSandboxCommandAndStreamRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getRunSandboxCommandDetails(), "runSandboxCommandDetails is required"); + + return clientCall(request, RunSandboxCommandAndStreamResponse::builder) + .logger(LOG, "runSandboxCommandAndStream") + .serviceDetails("GenerativeAiSandbox", "RunSandboxCommandAndStream", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(RunSandboxCommandAndStreamRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam("actions") + .appendPathParam("runAndStream") + .accept("application/x-ndjson") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + java.io.InputStream.class, + RunSandboxCommandAndStreamResponse.Builder::inputStream) + .handleResponseHeaderString( + "opc-request-id", RunSandboxCommandAndStreamResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public RunSandboxCommandAndWaitResponse runSandboxCommandAndWait( + RunSandboxCommandAndWaitRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getRunSandboxCommandDetails(), "runSandboxCommandDetails is required"); + + return clientCall(request, RunSandboxCommandAndWaitResponse::builder) + .logger(LOG, "runSandboxCommandAndWait") + .serviceDetails("GenerativeAiSandbox", "RunSandboxCommandAndWait", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(RunSandboxCommandAndWaitRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam("actions") + .appendPathParam("runAndWait") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand.class, + RunSandboxCommandAndWaitResponse.Builder::sandboxCommand) + .handleResponseHeaderString( + "opc-request-id", RunSandboxCommandAndWaitResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public StopSandboxResponse stopSandbox(StopSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull(request.getStopSandboxDetails(), "stopSandboxDetails is required"); + + return clientCall(request, StopSandboxResponse::builder) + .logger(LOG, "stopSandbox") + .serviceDetails("GenerativeAiSandbox", "StopSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(StopSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("stop") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + StopSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", StopSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", StopSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public StreamSandboxCommandEventsResponse streamSandboxCommandEvents( + StreamSandboxCommandEventsRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + + Validate.notBlank(request.getCommandId(), "commandId must not be blank"); + + return clientCall(request, StreamSandboxCommandEventsResponse::builder) + .logger(LOG, "streamSandboxCommandEvents") + .serviceDetails("GenerativeAiSandbox", "StreamSandboxCommandEvents", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(StreamSandboxCommandEventsRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("commands") + .appendPathParam(request.getCommandId()) + .appendPathParam("events") + .appendQueryParam("fromSeq", request.getFromSeq()) + .appendQueryParam("untilSeq", request.getUntilSeq()) + .accept("text/event-stream") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + java.io.InputStream.class, + StreamSandboxCommandEventsResponse.Builder::inputStream) + .handleEventStream(StreamSandboxCommandEventsResponse.Builder::eventStream) + .handleResponseHeaderString( + "opc-request-id", StreamSandboxCommandEventsResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public SuspendSandboxResponse suspendSandbox(SuspendSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getSuspendSandboxDetails(), "suspendSandboxDetails is required"); + + return clientCall(request, SuspendSandboxResponse::builder) + .logger(LOG, "suspendSandbox") + .serviceDetails("GenerativeAiSandbox", "SuspendSandbox", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(SuspendSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("actions") + .appendPathParam("suspend") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + SuspendSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", SuspendSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", SuspendSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public UpdateSandboxResponse updateSandbox(UpdateSandboxRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull( + request.getUpdateSandboxDetails(), "updateSandboxDetails is required"); + + return clientCall(request, UpdateSandboxResponse::builder) + .logger(LOG, "updateSandbox") + .serviceDetails("GenerativeAiSandbox", "UpdateSandbox", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateSandboxRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.Sandbox.class, + UpdateSandboxResponse.Builder::sandbox) + .handleResponseHeaderString("etag", UpdateSandboxResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", UpdateSandboxResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public WriteSandboxFileResponse writeSandboxFile(WriteSandboxFileRequest request) { + + Validate.notBlank(request.getSandboxId(), "sandboxId must not be blank"); + Objects.requireNonNull(request.getFilePath(), "filePath is required"); + + Objects.requireNonNull( + request.getWriteSandboxFileContentDetails(), + "writeSandboxFileContentDetails is required"); + + return clientCall(request, WriteSandboxFileResponse::builder) + .logger(LOG, "writeSandboxFile") + .serviceDetails("GenerativeAiSandbox", "WriteSandboxFile", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(WriteSandboxFileRequest::builder) + .basePath("/20260422") + .appendPathParam("sandboxes") + .appendPathParam(request.getSandboxId()) + .appendPathParam("files") + .appendPathParam("write") + .appendQueryParam("filePath", request.getFilePath()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-content-sha256", request.getOpcContentSha256()) + .operationUsesDefaultRetries() + .hasBinaryRequestBody() + .hasBody() + .handleBody( + com.oracle.bmc.generativeaisandbox.model.SandboxFile.class, + WriteSandboxFileResponse.Builder::sandboxFile) + .handleResponseHeaderString( + "opc-request-id", WriteSandboxFileResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-content-sha256", WriteSandboxFileResponse.Builder::opcContentSha256) + .callSync(); + } + + @Override + public GenerativeAiSandboxWaiters getWaiters() { + return waiters; + } + + @Override + public GenerativeAiSandboxPaginators 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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 GenerativeAiSandboxClient( + 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxPaginators.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxPaginators.java new file mode 100644 index 00000000000..631628b78c6 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxPaginators.java @@ -0,0 +1,400 @@ +/** + * 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.generativeaisandbox; + +import com.oracle.bmc.generativeaisandbox.requests.*; +import com.oracle.bmc.generativeaisandbox.responses.*; + +/** + * Collection of helper methods that can be used to provide an {@link java.lang.Iterable} interface + * to any list operations of GenerativeAiSandbox 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: 1.0") +public class GenerativeAiSandboxPaginators { + private final GenerativeAiSandbox client; + + public GenerativeAiSandboxPaginators(GenerativeAiSandbox client) { + this.client = client; + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listSandboxCommand 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 listSandboxCommandResponseIterator( + final ListSandboxCommandRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListSandboxCommandRequest.Builder, + ListSandboxCommandRequest, + ListSandboxCommandResponse>( + new java.util.function.Supplier() { + @Override + public ListSandboxCommandRequest.Builder get() { + return ListSandboxCommandRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxCommandResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxCommandRequest.Builder>, + ListSandboxCommandRequest>() { + @Override + public ListSandboxCommandRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxCommandRequest.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< + ListSandboxCommandRequest, ListSandboxCommandResponse>() { + @Override + public ListSandboxCommandResponse apply(ListSandboxCommandRequest request) { + return client.listSandboxCommand(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.generativeaisandbox.model.SandboxCommandSummary} objects contained in + * responses from the listSandboxCommand 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.generativeaisandbox.model.SandboxCommandSummary} objects contained in + * responses received from the service. + */ + public Iterable + listSandboxCommandRecordIterator(final ListSandboxCommandRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListSandboxCommandRequest.Builder, + ListSandboxCommandRequest, + ListSandboxCommandResponse, + com.oracle.bmc.generativeaisandbox.model.SandboxCommandSummary>( + new java.util.function.Supplier() { + @Override + public ListSandboxCommandRequest.Builder get() { + return ListSandboxCommandRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxCommandResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxCommandRequest.Builder>, + ListSandboxCommandRequest>() { + @Override + public ListSandboxCommandRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxCommandRequest.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< + ListSandboxCommandRequest, ListSandboxCommandResponse>() { + @Override + public ListSandboxCommandResponse apply(ListSandboxCommandRequest request) { + return client.listSandboxCommand(request); + } + }, + new java.util.function.Function< + ListSandboxCommandResponse, + java.util.List< + com.oracle.bmc.generativeaisandbox.model.SandboxCommandSummary>>() { + @Override + public java.util.List< + com.oracle.bmc.generativeaisandbox.model.SandboxCommandSummary> + apply(ListSandboxCommandResponse response) { + return response.getSandboxCommandCollection().getItems(); + } + }); + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listSandboxSnapshots 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 listSandboxSnapshotsResponseIterator( + final ListSandboxSnapshotsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListSandboxSnapshotsRequest.Builder, + ListSandboxSnapshotsRequest, + ListSandboxSnapshotsResponse>( + new java.util.function.Supplier() { + @Override + public ListSandboxSnapshotsRequest.Builder get() { + return ListSandboxSnapshotsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxSnapshotsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxSnapshotsRequest.Builder>, + ListSandboxSnapshotsRequest>() { + @Override + public ListSandboxSnapshotsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxSnapshotsRequest.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< + ListSandboxSnapshotsRequest, ListSandboxSnapshotsResponse>() { + @Override + public ListSandboxSnapshotsResponse apply(ListSandboxSnapshotsRequest request) { + return client.listSandboxSnapshots(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSummary} objects contained in + * responses from the listSandboxSnapshots 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.generativeaisandbox.model.SandboxSnapshotSummary} objects contained in + * responses received from the service. + */ + public Iterable + listSandboxSnapshotsRecordIterator(final ListSandboxSnapshotsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListSandboxSnapshotsRequest.Builder, + ListSandboxSnapshotsRequest, + ListSandboxSnapshotsResponse, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSummary>( + new java.util.function.Supplier() { + @Override + public ListSandboxSnapshotsRequest.Builder get() { + return ListSandboxSnapshotsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxSnapshotsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxSnapshotsRequest.Builder>, + ListSandboxSnapshotsRequest>() { + @Override + public ListSandboxSnapshotsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxSnapshotsRequest.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< + ListSandboxSnapshotsRequest, ListSandboxSnapshotsResponse>() { + @Override + public ListSandboxSnapshotsResponse apply(ListSandboxSnapshotsRequest request) { + return client.listSandboxSnapshots(request); + } + }, + new java.util.function.Function< + ListSandboxSnapshotsResponse, + java.util.List< + com.oracle.bmc.generativeaisandbox.model + .SandboxSnapshotSummary>>() { + @Override + public java.util.List< + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSummary> + apply(ListSandboxSnapshotsResponse response) { + return response.getSandboxSnapshotCollection().getItems(); + } + }); + } + + /** + * Creates a new iterable which will iterate over the responses received from the listSandboxes + * 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 listSandboxesResponseIterator( + final ListSandboxesRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListSandboxesRequest.Builder, ListSandboxesRequest, ListSandboxesResponse>( + new java.util.function.Supplier() { + @Override + public ListSandboxesRequest.Builder get() { + return ListSandboxesRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxesResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxesRequest.Builder>, + ListSandboxesRequest>() { + @Override + public ListSandboxesRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxesRequest.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 ListSandboxesResponse apply(ListSandboxesRequest request) { + return client.listSandboxes(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.generativeaisandbox.model.SandboxSummary} objects contained in responses from + * the listSandboxes 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.generativeaisandbox.model.SandboxSummary} objects contained in responses + * received from the service. + */ + public Iterable + listSandboxesRecordIterator(final ListSandboxesRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListSandboxesRequest.Builder, + ListSandboxesRequest, + ListSandboxesResponse, + com.oracle.bmc.generativeaisandbox.model.SandboxSummary>( + new java.util.function.Supplier() { + @Override + public ListSandboxesRequest.Builder get() { + return ListSandboxesRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListSandboxesResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxesRequest.Builder>, + ListSandboxesRequest>() { + @Override + public ListSandboxesRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListSandboxesRequest.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 ListSandboxesResponse apply(ListSandboxesRequest request) { + return client.listSandboxes(request); + } + }, + new java.util.function.Function< + ListSandboxesResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListSandboxesResponse response) { + return response.getSandboxCollection().getItems(); + } + }); + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxWaiters.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxWaiters.java new file mode 100644 index 00000000000..5b2d23a4980 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/GenerativeAiSandboxWaiters.java @@ -0,0 +1,237 @@ +/** + * 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.generativeaisandbox; + +import com.oracle.bmc.generativeaisandbox.requests.*; +import com.oracle.bmc.generativeaisandbox.responses.*; + +/** + * Collection of helper methods to produce {@link com.oracle.bmc.waiter.Waiter}s for different + * resources of GenerativeAiSandbox. + * + *

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: 1.0") +public class GenerativeAiSandboxWaiters { + private final java.util.concurrent.ExecutorService executorService; + private final GenerativeAiSandbox client; + + public GenerativeAiSandboxWaiters( + java.util.concurrent.ExecutorService executorService, GenerativeAiSandbox 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 forSandbox( + GetSandboxRequest request, + com.oracle.bmc.generativeaisandbox.model.Sandbox.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 forSandbox( + 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 forSandbox( + GetSandboxRequest request, + com.oracle.bmc.generativeaisandbox.model.Sandbox.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 forSandbox( + 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 forSandbox( + GetSandboxRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.generativeaisandbox.model.Sandbox.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 forSandbox( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for Sandbox. + private com.oracle.bmc.waiter.Waiter forSandbox( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetSandboxRequest request, + final com.oracle.bmc.generativeaisandbox.model.Sandbox.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 GetSandboxResponse apply(GetSandboxRequest request) { + return client.getSandbox(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetSandboxResponse response) { + return targetStatesSet.contains( + response.getSandbox().getLifecycleState()); + } + }, + targetStatesSet.contains( + com.oracle.bmc.generativeaisandbox.model.Sandbox.LifecycleState + .Deleted)), + request); + } + + /** + * 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 + forSandboxSnapshot( + GetSandboxSnapshotRequest request, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.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 forSandboxSnapshot( + 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 + forSandboxSnapshot( + GetSandboxSnapshotRequest request, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.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 forSandboxSnapshot( + 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 + forSandboxSnapshot( + GetSandboxSnapshotRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.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 forSandboxSnapshot( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for SandboxSnapshot. + private com.oracle.bmc.waiter.Waiter + forSandboxSnapshot( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetSandboxSnapshotRequest request, + final com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.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< + GetSandboxSnapshotRequest, GetSandboxSnapshotResponse>() { + @Override + public GetSandboxSnapshotResponse apply( + GetSandboxSnapshotRequest request) { + return client.getSandboxSnapshot(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetSandboxSnapshotResponse response) { + return targetStatesSet.contains( + response.getSandboxSnapshot().getLifecycleState()); + } + }, + targetStatesSet.contains( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot + .LifecycleState.Deleted)), + request); + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CancelSandboxCommandDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CancelSandboxCommandDetails.java new file mode 100644 index 00000000000..cbb1c45ff99 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CancelSandboxCommandDetails.java @@ -0,0 +1,166 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Request body used to cancel a sandbox command.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CancelSandboxCommandDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CancelSandboxCommandDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"signal"}) + public CancelSandboxCommandDetails(Signal signal) { + super(); + this.signal = signal; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Signal to send to the running command. */ + @com.fasterxml.jackson.annotation.JsonProperty("signal") + private Signal signal; + + /** + * Signal to send to the running command. + * + * @param signal the value to set + * @return this builder + */ + public Builder signal(Signal signal) { + this.signal = signal; + this.__explicitlySet__.add("signal"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CancelSandboxCommandDetails build() { + CancelSandboxCommandDetails model = new CancelSandboxCommandDetails(this.signal); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CancelSandboxCommandDetails model) { + if (model.wasPropertyExplicitlySet("signal")) { + this.signal(model.getSignal()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Signal to send to the running command. */ + public enum Signal implements com.oracle.bmc.http.internal.BmcEnum { + Sigterm("SIGTERM"), + Sigkill("SIGKILL"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Signal v : Signal.values()) { + map.put(v.getValue(), v); + } + } + + Signal(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Signal create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Signal: " + key); + } + }; + /** Signal to send to the running command. */ + @com.fasterxml.jackson.annotation.JsonProperty("signal") + private final Signal signal; + + /** + * Signal to send to the running command. + * + * @return the value + */ + public Signal getSignal() { + return signal; + } + + @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("CancelSandboxCommandDetails("); + sb.append("super=").append(super.toString()); + sb.append("signal=").append(String.valueOf(this.signal)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CancelSandboxCommandDetails)) { + return false; + } + + CancelSandboxCommandDetails other = (CancelSandboxCommandDetails) o; + return java.util.Objects.equals(this.signal, other.signal) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.signal == null ? 43 : this.signal.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CreateSandboxDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CreateSandboxDetails.java new file mode 100644 index 00000000000..597ced51daa --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CreateSandboxDetails.java @@ -0,0 +1,677 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Request body used to create a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSandboxDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSandboxDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "warmpoolName", + "source", + "displayName", + "runtime", + "shape", + "publishedPortAuthMode", + "publishPorts", + "expiresInMinutes", + "expirationDuration", + "environmentVariables", + "credentialProfileLabel" + }) + public CreateSandboxDetails( + String warmpoolName, + SandboxSource source, + String displayName, + String runtime, + Sandbox.Shape shape, + Sandbox.PublishedPortAuthMode publishedPortAuthMode, + java.util.List publishPorts, + Integer expiresInMinutes, + String expirationDuration, + java.util.List environmentVariables, + String credentialProfileLabel) { + super(); + this.warmpoolName = warmpoolName; + this.source = source; + this.displayName = displayName; + this.runtime = runtime; + this.shape = shape; + this.publishedPortAuthMode = publishedPortAuthMode; + this.publishPorts = publishPorts; + this.expiresInMinutes = expiresInMinutes; + this.expirationDuration = expirationDuration; + this.environmentVariables = environmentVariables; + this.credentialProfileLabel = credentialProfileLabel; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * Name of a MANAGED or CUSTOM warm pool in the owning project. Runtime and shape are + * derived from the pool; explicit values must match. Deleting pools cannot be used. + * Snapshot restore, credential brokerage, and nested resource principals are not supported + * with named pools. An empty pool may cold-create using its same template, including when + * desired capacity is zero. Zero capacity stops idle prewarming; it does not prevent + * creation from an available applied template. When warmpoolName is omitted, a built-in + * runtime can automatically select an eligible named MANAGED pool in the same project + * matching its runtime and shape. Omitted runtime defaults to python-3.11 and omitted shape + * defaults to SMALL for automatic matching. A digest-pinned customer image can + * automatically select an eligible CUSTOM pool in the same project matching its canonical + * registry host, repository, digest and shape. Tag-based customer images are not + * automatically matched. Matching pools are considered in name order; the first with a + * valid applied template is selected without reading ready counts. Empty pools and zero + * desired or applied capacity still allow cold creation through the selected template. If + * no eligible pool is found or automatic lookup is unavailable, built-in runtimes use the + * existing managed runtime path, and customer images use the ordinary direct customer-image + * path with its existing validation. Automatic matching does not apply when source is + * supplied, including snapshot restore, or when credential brokerage or nested resource + * principals are used. Explicit names retain strict validation and do not fall back to + * automatic matching or another creation path. Retries preserve the original persisted pool + * binding or the original managed or direct customer-image route, even when matching pools + * change. Sandbox and SandboxSummary report an automatically selected pool in warmpoolName. + */ + @com.fasterxml.jackson.annotation.JsonProperty("warmpoolName") + private String warmpoolName; + + /** + * Name of a MANAGED or CUSTOM warm pool in the owning project. Runtime and shape are + * derived from the pool; explicit values must match. Deleting pools cannot be used. + * Snapshot restore, credential brokerage, and nested resource principals are not supported + * with named pools. An empty pool may cold-create using its same template, including when + * desired capacity is zero. Zero capacity stops idle prewarming; it does not prevent + * creation from an available applied template. When warmpoolName is omitted, a built-in + * runtime can automatically select an eligible named MANAGED pool in the same project + * matching its runtime and shape. Omitted runtime defaults to python-3.11 and omitted shape + * defaults to SMALL for automatic matching. A digest-pinned customer image can + * automatically select an eligible CUSTOM pool in the same project matching its canonical + * registry host, repository, digest and shape. Tag-based customer images are not + * automatically matched. Matching pools are considered in name order; the first with a + * valid applied template is selected without reading ready counts. Empty pools and zero + * desired or applied capacity still allow cold creation through the selected template. If + * no eligible pool is found or automatic lookup is unavailable, built-in runtimes use the + * existing managed runtime path, and customer images use the ordinary direct customer-image + * path with its existing validation. Automatic matching does not apply when source is + * supplied, including snapshot restore, or when credential brokerage or nested resource + * principals are used. Explicit names retain strict validation and do not fall back to + * automatic matching or another creation path. Retries preserve the original persisted pool + * binding or the original managed or direct customer-image route, even when matching pools + * change. Sandbox and SandboxSummary report an automatically selected pool in warmpoolName. + * + * @param warmpoolName the value to set + * @return this builder + */ + public Builder warmpoolName(String warmpoolName) { + this.warmpoolName = warmpoolName; + this.__explicitlySet__.add("warmpoolName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("source") + private SandboxSource source; + + public Builder source(SandboxSource source) { + this.source = source; + this.__explicitlySet__.add("source"); + return this; + } + /** User-provided display name for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * User-provided display name for the sandbox. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** + * Runtime identifier for the sandbox, either a built-in runtime such as python-3.11 or a + * same-region Oracle Cloud Infrastructure Registry customer image reference. + */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private String runtime; + + /** + * Runtime identifier for the sandbox, either a built-in runtime such as python-3.11 or a + * same-region Oracle Cloud Infrastructure Registry customer image reference. + * + * @param runtime the value to set + * @return this builder + */ + public Builder runtime(String runtime) { + this.runtime = runtime; + this.__explicitlySet__.add("runtime"); + return this; + } + /** Compute shape for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private Sandbox.Shape shape; + + /** + * Compute shape for the sandbox. + * + * @param shape the value to set + * @return this builder + */ + public Builder shape(Sandbox.Shape shape) { + this.shape = shape; + this.__explicitlySet__.add("shape"); + return this; + } + /** + * Authorization for all published-port HTTP requests and WebSocket handshakes. OCI_IAM + * requires Sandbox use and project read permission on the owning project. Omission defaults + * to OCI_IAM for new sandboxes with published ports in enabled tenancies; elsewhere + * omission retains legacy behavior. Explicit OCI_IAM outside the rollout, null, unsupported + * values, or a mode without published ports are rejected. The effective mode is immutable + * and is preserved when restoring protected snapshots. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPortAuthMode") + private Sandbox.PublishedPortAuthMode publishedPortAuthMode; + + /** + * Authorization for all published-port HTTP requests and WebSocket handshakes. OCI_IAM + * requires Sandbox use and project read permission on the owning project. Omission defaults + * to OCI_IAM for new sandboxes with published ports in enabled tenancies; elsewhere + * omission retains legacy behavior. Explicit OCI_IAM outside the rollout, null, unsupported + * values, or a mode without published ports are rejected. The effective mode is immutable + * and is preserved when restoring protected snapshots. + * + * @param publishedPortAuthMode the value to set + * @return this builder + */ + public Builder publishedPortAuthMode(Sandbox.PublishedPortAuthMode publishedPortAuthMode) { + this.publishedPortAuthMode = publishedPortAuthMode; + this.__explicitlySet__.add("publishedPortAuthMode"); + return this; + } + /** Published ports to expose for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishPorts") + private java.util.List publishPorts; + + /** + * Published ports to expose for the sandbox. + * + * @param publishPorts the value to set + * @return this builder + */ + public Builder publishPorts(java.util.List publishPorts) { + this.publishPorts = publishPorts; + this.__explicitlySet__.add("publishPorts"); + return this; + } + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expiresInMinutes") + private Integer expiresInMinutes; + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to + * disable automatic expiration. + * + * @param expiresInMinutes the value to set + * @return this builder + */ + public Builder expiresInMinutes(Integer expiresInMinutes) { + this.expiresInMinutes = expiresInMinutes; + this.__explicitlySet__.add("expiresInMinutes"); + return this; + } + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private String expirationDuration; + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + * + * @param expirationDuration the value to set + * @return this builder + */ + public Builder expirationDuration(String expirationDuration) { + this.expirationDuration = expirationDuration; + this.__explicitlySet__.add("expirationDuration"); + return this; + } + /** Environment variables to inject into the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private java.util.List environmentVariables; + + /** + * Environment variables to inject into the sandbox runtime. + * + * @param environmentVariables the value to set + * @return this builder + */ + public Builder environmentVariables( + java.util.List environmentVariables) { + this.environmentVariables = environmentVariables; + this.__explicitlySet__.add("environmentVariables"); + return this; + } + /** + * The Project credential profile selected for this Sandbox. Omit this field to select no + * credential profile. The selection and its configuration snapshot are immutable for the + * lifetime of the Sandbox; later Project profile updates apply only to subsequently created + * Sandboxes after configuration propagation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("credentialProfileLabel") + private String credentialProfileLabel; + + /** + * The Project credential profile selected for this Sandbox. Omit this field to select no + * credential profile. The selection and its configuration snapshot are immutable for the + * lifetime of the Sandbox; later Project profile updates apply only to subsequently created + * Sandboxes after configuration propagation. + * + * @param credentialProfileLabel the value to set + * @return this builder + */ + public Builder credentialProfileLabel(String credentialProfileLabel) { + this.credentialProfileLabel = credentialProfileLabel; + this.__explicitlySet__.add("credentialProfileLabel"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSandboxDetails build() { + CreateSandboxDetails model = + new CreateSandboxDetails( + this.warmpoolName, + this.source, + this.displayName, + this.runtime, + this.shape, + this.publishedPortAuthMode, + this.publishPorts, + this.expiresInMinutes, + this.expirationDuration, + this.environmentVariables, + this.credentialProfileLabel); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSandboxDetails model) { + if (model.wasPropertyExplicitlySet("warmpoolName")) { + this.warmpoolName(model.getWarmpoolName()); + } + if (model.wasPropertyExplicitlySet("source")) { + this.source(model.getSource()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("runtime")) { + this.runtime(model.getRuntime()); + } + if (model.wasPropertyExplicitlySet("shape")) { + this.shape(model.getShape()); + } + if (model.wasPropertyExplicitlySet("publishedPortAuthMode")) { + this.publishedPortAuthMode(model.getPublishedPortAuthMode()); + } + if (model.wasPropertyExplicitlySet("publishPorts")) { + this.publishPorts(model.getPublishPorts()); + } + if (model.wasPropertyExplicitlySet("expiresInMinutes")) { + this.expiresInMinutes(model.getExpiresInMinutes()); + } + if (model.wasPropertyExplicitlySet("expirationDuration")) { + this.expirationDuration(model.getExpirationDuration()); + } + if (model.wasPropertyExplicitlySet("environmentVariables")) { + this.environmentVariables(model.getEnvironmentVariables()); + } + if (model.wasPropertyExplicitlySet("credentialProfileLabel")) { + this.credentialProfileLabel(model.getCredentialProfileLabel()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * Name of a MANAGED or CUSTOM warm pool in the owning project. Runtime and shape are derived + * from the pool; explicit values must match. Deleting pools cannot be used. Snapshot restore, + * credential brokerage, and nested resource principals are not supported with named pools. An + * empty pool may cold-create using its same template, including when desired capacity is zero. + * Zero capacity stops idle prewarming; it does not prevent creation from an available applied + * template. When warmpoolName is omitted, a built-in runtime can automatically select an + * eligible named MANAGED pool in the same project matching its runtime and shape. Omitted + * runtime defaults to python-3.11 and omitted shape defaults to SMALL for automatic matching. A + * digest-pinned customer image can automatically select an eligible CUSTOM pool in the same + * project matching its canonical registry host, repository, digest and shape. Tag-based + * customer images are not automatically matched. Matching pools are considered in name order; + * the first with a valid applied template is selected without reading ready counts. Empty pools + * and zero desired or applied capacity still allow cold creation through the selected template. + * If no eligible pool is found or automatic lookup is unavailable, built-in runtimes use the + * existing managed runtime path, and customer images use the ordinary direct customer-image + * path with its existing validation. Automatic matching does not apply when source is supplied, + * including snapshot restore, or when credential brokerage or nested resource principals are + * used. Explicit names retain strict validation and do not fall back to automatic matching or + * another creation path. Retries preserve the original persisted pool binding or the original + * managed or direct customer-image route, even when matching pools change. Sandbox and + * SandboxSummary report an automatically selected pool in warmpoolName. + */ + @com.fasterxml.jackson.annotation.JsonProperty("warmpoolName") + private final String warmpoolName; + + /** + * Name of a MANAGED or CUSTOM warm pool in the owning project. Runtime and shape are derived + * from the pool; explicit values must match. Deleting pools cannot be used. Snapshot restore, + * credential brokerage, and nested resource principals are not supported with named pools. An + * empty pool may cold-create using its same template, including when desired capacity is zero. + * Zero capacity stops idle prewarming; it does not prevent creation from an available applied + * template. When warmpoolName is omitted, a built-in runtime can automatically select an + * eligible named MANAGED pool in the same project matching its runtime and shape. Omitted + * runtime defaults to python-3.11 and omitted shape defaults to SMALL for automatic matching. A + * digest-pinned customer image can automatically select an eligible CUSTOM pool in the same + * project matching its canonical registry host, repository, digest and shape. Tag-based + * customer images are not automatically matched. Matching pools are considered in name order; + * the first with a valid applied template is selected without reading ready counts. Empty pools + * and zero desired or applied capacity still allow cold creation through the selected template. + * If no eligible pool is found or automatic lookup is unavailable, built-in runtimes use the + * existing managed runtime path, and customer images use the ordinary direct customer-image + * path with its existing validation. Automatic matching does not apply when source is supplied, + * including snapshot restore, or when credential brokerage or nested resource principals are + * used. Explicit names retain strict validation and do not fall back to automatic matching or + * another creation path. Retries preserve the original persisted pool binding or the original + * managed or direct customer-image route, even when matching pools change. Sandbox and + * SandboxSummary report an automatically selected pool in warmpoolName. + * + * @return the value + */ + public String getWarmpoolName() { + return warmpoolName; + } + + @com.fasterxml.jackson.annotation.JsonProperty("source") + private final SandboxSource source; + + public SandboxSource getSource() { + return source; + } + + /** User-provided display name for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * User-provided display name for the sandbox. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** + * Runtime identifier for the sandbox, either a built-in runtime such as python-3.11 or a + * same-region Oracle Cloud Infrastructure Registry customer image reference. + */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private final String runtime; + + /** + * Runtime identifier for the sandbox, either a built-in runtime such as python-3.11 or a + * same-region Oracle Cloud Infrastructure Registry customer image reference. + * + * @return the value + */ + public String getRuntime() { + return runtime; + } + + /** Compute shape for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private final Sandbox.Shape shape; + + /** + * Compute shape for the sandbox. + * + * @return the value + */ + public Sandbox.Shape getShape() { + return shape; + } + + /** + * Authorization for all published-port HTTP requests and WebSocket handshakes. OCI_IAM requires + * Sandbox use and project read permission on the owning project. Omission defaults to OCI_IAM + * for new sandboxes with published ports in enabled tenancies; elsewhere omission retains + * legacy behavior. Explicit OCI_IAM outside the rollout, null, unsupported values, or a mode + * without published ports are rejected. The effective mode is immutable and is preserved when + * restoring protected snapshots. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPortAuthMode") + private final Sandbox.PublishedPortAuthMode publishedPortAuthMode; + + /** + * Authorization for all published-port HTTP requests and WebSocket handshakes. OCI_IAM requires + * Sandbox use and project read permission on the owning project. Omission defaults to OCI_IAM + * for new sandboxes with published ports in enabled tenancies; elsewhere omission retains + * legacy behavior. Explicit OCI_IAM outside the rollout, null, unsupported values, or a mode + * without published ports are rejected. The effective mode is immutable and is preserved when + * restoring protected snapshots. + * + * @return the value + */ + public Sandbox.PublishedPortAuthMode getPublishedPortAuthMode() { + return publishedPortAuthMode; + } + + /** Published ports to expose for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishPorts") + private final java.util.List publishPorts; + + /** + * Published ports to expose for the sandbox. + * + * @return the value + */ + public java.util.List getPublishPorts() { + return publishPorts; + } + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to disable + * automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expiresInMinutes") + private final Integer expiresInMinutes; + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to disable + * automatic expiration. + * + * @return the value + */ + public Integer getExpiresInMinutes() { + return expiresInMinutes; + } + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private final String expirationDuration; + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + * + * @return the value + */ + public String getExpirationDuration() { + return expirationDuration; + } + + /** Environment variables to inject into the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private final java.util.List environmentVariables; + + /** + * Environment variables to inject into the sandbox runtime. + * + * @return the value + */ + public java.util.List getEnvironmentVariables() { + return environmentVariables; + } + + /** + * The Project credential profile selected for this Sandbox. Omit this field to select no + * credential profile. The selection and its configuration snapshot are immutable for the + * lifetime of the Sandbox; later Project profile updates apply only to subsequently created + * Sandboxes after configuration propagation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("credentialProfileLabel") + private final String credentialProfileLabel; + + /** + * The Project credential profile selected for this Sandbox. Omit this field to select no + * credential profile. The selection and its configuration snapshot are immutable for the + * lifetime of the Sandbox; later Project profile updates apply only to subsequently created + * Sandboxes after configuration propagation. + * + * @return the value + */ + public String getCredentialProfileLabel() { + return credentialProfileLabel; + } + + @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("CreateSandboxDetails("); + sb.append("super=").append(super.toString()); + sb.append("warmpoolName=").append(String.valueOf(this.warmpoolName)); + sb.append(", source=").append(String.valueOf(this.source)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", runtime=").append(String.valueOf(this.runtime)); + sb.append(", shape=").append(String.valueOf(this.shape)); + sb.append(", publishedPortAuthMode=").append(String.valueOf(this.publishedPortAuthMode)); + sb.append(", publishPorts=").append(String.valueOf(this.publishPorts)); + sb.append(", expiresInMinutes=").append(String.valueOf(this.expiresInMinutes)); + sb.append(", expirationDuration=").append(String.valueOf(this.expirationDuration)); + sb.append(", environmentVariables=").append(String.valueOf(this.environmentVariables)); + sb.append(", credentialProfileLabel=").append(String.valueOf(this.credentialProfileLabel)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxDetails)) { + return false; + } + + CreateSandboxDetails other = (CreateSandboxDetails) o; + return java.util.Objects.equals(this.warmpoolName, other.warmpoolName) + && java.util.Objects.equals(this.source, other.source) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.runtime, other.runtime) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.publishedPortAuthMode, other.publishedPortAuthMode) + && java.util.Objects.equals(this.publishPorts, other.publishPorts) + && java.util.Objects.equals(this.expiresInMinutes, other.expiresInMinutes) + && java.util.Objects.equals(this.expirationDuration, other.expirationDuration) + && java.util.Objects.equals(this.environmentVariables, other.environmentVariables) + && java.util.Objects.equals( + this.credentialProfileLabel, other.credentialProfileLabel) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.warmpoolName == null ? 43 : this.warmpoolName.hashCode()); + result = (result * PRIME) + (this.source == null ? 43 : this.source.hashCode()); + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.runtime == null ? 43 : this.runtime.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.hashCode()); + result = + (result * PRIME) + + (this.publishedPortAuthMode == null + ? 43 + : this.publishedPortAuthMode.hashCode()); + result = (result * PRIME) + (this.publishPorts == null ? 43 : this.publishPorts.hashCode()); + result = + (result * PRIME) + + (this.expiresInMinutes == null ? 43 : this.expiresInMinutes.hashCode()); + result = + (result * PRIME) + + (this.expirationDuration == null + ? 43 + : this.expirationDuration.hashCode()); + result = + (result * PRIME) + + (this.environmentVariables == null + ? 43 + : this.environmentVariables.hashCode()); + result = + (result * PRIME) + + (this.credentialProfileLabel == null + ? 43 + : this.credentialProfileLabel.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CreateSandboxSnapshotDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CreateSandboxSnapshotDetails.java new file mode 100644 index 00000000000..d7670bc94bc --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/CreateSandboxSnapshotDetails.java @@ -0,0 +1,182 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Request body used to create a sandbox snapshot.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSandboxSnapshotDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSandboxSnapshotDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"sandboxId", "expirationDuration"}) + public CreateSandboxSnapshotDetails(String sandboxId, String expirationDuration) { + super(); + this.sandboxId = sandboxId; + this.expirationDuration = expirationDuration; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Identifier of the sandbox to snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private String sandboxId; + + /** + * Identifier of the sandbox to snapshot. + * + * @param sandboxId the value to set + * @return this builder + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + this.__explicitlySet__.add("sandboxId"); + return this; + } + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. + * For example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private String expirationDuration; + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. + * For example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + * + * @param expirationDuration the value to set + * @return this builder + */ + public Builder expirationDuration(String expirationDuration) { + this.expirationDuration = expirationDuration; + this.__explicitlySet__.add("expirationDuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSandboxSnapshotDetails build() { + CreateSandboxSnapshotDetails model = + new CreateSandboxSnapshotDetails(this.sandboxId, this.expirationDuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSandboxSnapshotDetails model) { + if (model.wasPropertyExplicitlySet("sandboxId")) { + this.sandboxId(model.getSandboxId()); + } + if (model.wasPropertyExplicitlySet("expirationDuration")) { + this.expirationDuration(model.getExpirationDuration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Identifier of the sandbox to snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private final String sandboxId; + + /** + * Identifier of the sandbox to snapshot. + * + * @return the value + */ + public String getSandboxId() { + return sandboxId; + } + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. For + * example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private final String expirationDuration; + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. For + * example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + * + * @return the value + */ + public String getExpirationDuration() { + return expirationDuration; + } + + @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("CreateSandboxSnapshotDetails("); + sb.append("super=").append(super.toString()); + sb.append("sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(", expirationDuration=").append(String.valueOf(this.expirationDuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxSnapshotDetails)) { + return false; + } + + CreateSandboxSnapshotDetails other = (CreateSandboxSnapshotDetails) o; + return java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.expirationDuration, other.expirationDuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.expirationDuration == null + ? 43 + : this.expirationDuration.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/EnvironmentVariable.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/EnvironmentVariable.java new file mode 100644 index 00000000000..7c9b129b04d --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/EnvironmentVariable.java @@ -0,0 +1,169 @@ +/** + * 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.generativeaisandbox.model; + +/** + * The environment variables for the Sandbox
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = EnvironmentVariable.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class EnvironmentVariable + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"name", "value"}) + public EnvironmentVariable(String name, Object value) { + super(); + this.name = name; + this.value = value; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Name of the environment variable. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the environment variable. + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** Value of the environment variable. */ + @com.fasterxml.jackson.annotation.JsonProperty("value") + private Object value; + + /** + * Value of the environment variable. + * + * @param value the value to set + * @return this builder + */ + public Builder value(Object value) { + this.value = value; + this.__explicitlySet__.add("value"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public EnvironmentVariable build() { + EnvironmentVariable model = new EnvironmentVariable(this.name, this.value); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(EnvironmentVariable model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("value")) { + this.value(model.getValue()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Name of the environment variable. */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the environment variable. + * + * @return the value + */ + public String getName() { + return name; + } + + /** Value of the environment variable. */ + @com.fasterxml.jackson.annotation.JsonProperty("value") + private final Object value; + + /** + * Value of the environment variable. + * + * @return the value + */ + public Object getValue() { + return value; + } + + @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("EnvironmentVariable("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(", value=").append(String.valueOf(this.value)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof EnvironmentVariable)) { + return false; + } + + EnvironmentVariable other = (EnvironmentVariable) o; + return java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.value, other.value) + && 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.value == null ? 43 : this.value.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ErrorResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ErrorResponse.java new file mode 100644 index 00000000000..28a0202bc2b --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ErrorResponse.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.generativeaisandbox.model; + +/** + * Error information.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = ErrorResponse.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ErrorResponse extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"code", "message"}) + public ErrorResponse(String code, String message) { + super(); + this.code = code; + this.message = message; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A short error code that defines the error, meant for programmatic parsing. */ + @com.fasterxml.jackson.annotation.JsonProperty("code") + private String code; + + /** + * A short error code that defines the error, meant for programmatic parsing. + * + * @param code the value to set + * @return this builder + */ + public Builder code(String code) { + this.code = code; + this.__explicitlySet__.add("code"); + return this; + } + /** A human-readable error message. */ + @com.fasterxml.jackson.annotation.JsonProperty("message") + private String message; + + /** + * A human-readable error message. + * + * @param message the value to set + * @return this builder + */ + public Builder message(String message) { + this.message = message; + this.__explicitlySet__.add("message"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ErrorResponse build() { + ErrorResponse model = new ErrorResponse(this.code, this.message); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ErrorResponse model) { + if (model.wasPropertyExplicitlySet("code")) { + this.code(model.getCode()); + } + if (model.wasPropertyExplicitlySet("message")) { + this.message(model.getMessage()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** A short error code that defines the error, meant for programmatic parsing. */ + @com.fasterxml.jackson.annotation.JsonProperty("code") + private final String code; + + /** + * A short error code that defines the error, meant for programmatic parsing. + * + * @return the value + */ + public String getCode() { + return code; + } + + /** A human-readable error message. */ + @com.fasterxml.jackson.annotation.JsonProperty("message") + private final String message; + + /** + * A human-readable error message. + * + * @return the value + */ + public String getMessage() { + return message; + } + + @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("ErrorResponse("); + sb.append("super=").append(super.toString()); + sb.append("code=").append(String.valueOf(this.code)); + sb.append(", message=").append(String.valueOf(this.message)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ErrorResponse)) { + return false; + } + + ErrorResponse other = (ErrorResponse) o; + return java.util.Objects.equals(this.code, other.code) + && java.util.Objects.equals(this.message, other.message) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.code == null ? 43 : this.code.hashCode()); + result = (result * PRIME) + (this.message == null ? 43 : this.message.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ExtendSandboxDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ExtendSandboxDetails.java new file mode 100644 index 00000000000..05250bac9a6 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ExtendSandboxDetails.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.generativeaisandbox.model; + +/** + * Request body used to extend a sandbox's duration.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ExtendSandboxDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ExtendSandboxDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"additionalDuration"}) + public ExtendSandboxDetails(String additionalDuration) { + super(); + this.additionalDuration = additionalDuration; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Additional duration to extend the sandbox lifetime, in ISO 8601 duration format. */ + @com.fasterxml.jackson.annotation.JsonProperty("additionalDuration") + private String additionalDuration; + + /** + * Additional duration to extend the sandbox lifetime, in ISO 8601 duration format. + * + * @param additionalDuration the value to set + * @return this builder + */ + public Builder additionalDuration(String additionalDuration) { + this.additionalDuration = additionalDuration; + this.__explicitlySet__.add("additionalDuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ExtendSandboxDetails build() { + ExtendSandboxDetails model = new ExtendSandboxDetails(this.additionalDuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ExtendSandboxDetails model) { + if (model.wasPropertyExplicitlySet("additionalDuration")) { + this.additionalDuration(model.getAdditionalDuration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Additional duration to extend the sandbox lifetime, in ISO 8601 duration format. */ + @com.fasterxml.jackson.annotation.JsonProperty("additionalDuration") + private final String additionalDuration; + + /** + * Additional duration to extend the sandbox lifetime, in ISO 8601 duration format. + * + * @return the value + */ + public String getAdditionalDuration() { + return additionalDuration; + } + + @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("ExtendSandboxDetails("); + sb.append("super=").append(super.toString()); + sb.append("additionalDuration=").append(String.valueOf(this.additionalDuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ExtendSandboxDetails)) { + return false; + } + + ExtendSandboxDetails other = (ExtendSandboxDetails) o; + return java.util.Objects.equals(this.additionalDuration, other.additionalDuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.additionalDuration == null + ? 43 + : this.additionalDuration.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/PublishedPort.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/PublishedPort.java new file mode 100644 index 00000000000..73a20746063 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/PublishedPort.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.generativeaisandbox.model; + +/** + * Published port key/value pair. Requests to the published URL may supply X-App-Token with the raw + * application token, without a Bearer prefix. After the sandbox's access policy succeeds, the proxy + * builds the upstream Authorization header as Bearer followed by the unchanged token and removes + * X-App-Token. This applies to HTTP, SSE, and WebSocket opening handshakes, and does not replace + * required OCI authentication. Exactly one nonempty printable ASCII token of at most 8192 bytes is + * accepted; whitespace, commas, control characters, and duplicate values are rejected with HTTP + * 400. Both header names must be treated as sensitive credentials.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = PublishedPort.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class PublishedPort extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"key", "value"}) + public PublishedPort(String key, String value) { + super(); + this.key = key; + this.value = value; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Key string. */ + @com.fasterxml.jackson.annotation.JsonProperty("key") + private String key; + + /** + * Key string. + * + * @param key the value to set + * @return this builder + */ + public Builder key(String key) { + this.key = key; + this.__explicitlySet__.add("key"); + return this; + } + /** Value string. */ + @com.fasterxml.jackson.annotation.JsonProperty("value") + private String value; + + /** + * Value string. + * + * @param value the value to set + * @return this builder + */ + public Builder value(String value) { + this.value = value; + this.__explicitlySet__.add("value"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public PublishedPort build() { + PublishedPort model = new PublishedPort(this.key, this.value); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(PublishedPort model) { + if (model.wasPropertyExplicitlySet("key")) { + this.key(model.getKey()); + } + if (model.wasPropertyExplicitlySet("value")) { + this.value(model.getValue()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Key string. */ + @com.fasterxml.jackson.annotation.JsonProperty("key") + private final String key; + + /** + * Key string. + * + * @return the value + */ + public String getKey() { + return key; + } + + /** Value string. */ + @com.fasterxml.jackson.annotation.JsonProperty("value") + private final String value; + + /** + * Value string. + * + * @return the value + */ + public String getValue() { + return value; + } + + @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("PublishedPort("); + sb.append("super=").append(super.toString()); + sb.append("key=").append(String.valueOf(this.key)); + sb.append(", value=").append(String.valueOf(this.value)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof PublishedPort)) { + return false; + } + + PublishedPort other = (PublishedPort) o; + return java.util.Objects.equals(this.key, other.key) + && java.util.Objects.equals(this.value, other.value) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.key == null ? 43 : this.key.hashCode()); + result = (result * PRIME) + (this.value == null ? 43 : this.value.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ResumeSandboxDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ResumeSandboxDetails.java new file mode 100644 index 00000000000..e09108938f8 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/ResumeSandboxDetails.java @@ -0,0 +1,99 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Empty request body used to resume a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ResumeSandboxDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ResumeSandboxDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + public ResumeSandboxDetails() { + super(); + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ResumeSandboxDetails build() { + ResumeSandboxDetails model = new ResumeSandboxDetails(); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ResumeSandboxDetails model) { + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @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("ResumeSandboxDetails("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ResumeSandboxDetails)) { + return false; + } + + ResumeSandboxDetails other = (ResumeSandboxDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/RunSandboxCommandDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/RunSandboxCommandDetails.java new file mode 100644 index 00000000000..ccbdc3f52f5 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/RunSandboxCommandDetails.java @@ -0,0 +1,296 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Request body used to run a command in a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = RunSandboxCommandDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class RunSandboxCommandDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"command", "cwd", "args", "environmentVariables", "timeout"}) + public RunSandboxCommandDetails( + String command, + String cwd, + java.util.List args, + java.util.List environmentVariables, + String timeout) { + super(); + this.command = command; + this.cwd = cwd; + this.args = args; + this.environmentVariables = environmentVariables; + this.timeout = timeout; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The command to execute in the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("command") + private String command; + + /** + * The command to execute in the sandbox runtime. + * + * @param command the value to set + * @return this builder + */ + public Builder command(String command) { + this.command = command; + this.__explicitlySet__.add("command"); + return this; + } + /** + * Absolute directory path to use as the working directory for command execution in the + * sandbox. + */ + @com.fasterxml.jackson.annotation.JsonProperty("cwd") + private String cwd; + + /** + * Absolute directory path to use as the working directory for command execution in the + * sandbox. + * + * @param cwd the value to set + * @return this builder + */ + public Builder cwd(String cwd) { + this.cwd = cwd; + this.__explicitlySet__.add("cwd"); + return this; + } + /** Command arguments. */ + @com.fasterxml.jackson.annotation.JsonProperty("args") + private java.util.List args; + + /** + * Command arguments. + * + * @param args the value to set + * @return this builder + */ + public Builder args(java.util.List args) { + this.args = args; + this.__explicitlySet__.add("args"); + return this; + } + /** Environment variables to inject into the command execution. */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private java.util.List environmentVariables; + + /** + * Environment variables to inject into the command execution. + * + * @param environmentVariables the value to set + * @return this builder + */ + public Builder environmentVariables( + java.util.List environmentVariables) { + this.environmentVariables = environmentVariables; + this.__explicitlySet__.add("environmentVariables"); + return this; + } + /** Maximum execution time for the command, in ISO 8601 duration format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeout") + private String timeout; + + /** + * Maximum execution time for the command, in ISO 8601 duration format. + * + * @param timeout the value to set + * @return this builder + */ + public Builder timeout(String timeout) { + this.timeout = timeout; + this.__explicitlySet__.add("timeout"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public RunSandboxCommandDetails build() { + RunSandboxCommandDetails model = + new RunSandboxCommandDetails( + this.command, + this.cwd, + this.args, + this.environmentVariables, + this.timeout); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(RunSandboxCommandDetails model) { + if (model.wasPropertyExplicitlySet("command")) { + this.command(model.getCommand()); + } + if (model.wasPropertyExplicitlySet("cwd")) { + this.cwd(model.getCwd()); + } + if (model.wasPropertyExplicitlySet("args")) { + this.args(model.getArgs()); + } + if (model.wasPropertyExplicitlySet("environmentVariables")) { + this.environmentVariables(model.getEnvironmentVariables()); + } + if (model.wasPropertyExplicitlySet("timeout")) { + this.timeout(model.getTimeout()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The command to execute in the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("command") + private final String command; + + /** + * The command to execute in the sandbox runtime. + * + * @return the value + */ + public String getCommand() { + return command; + } + + /** + * Absolute directory path to use as the working directory for command execution in the sandbox. + */ + @com.fasterxml.jackson.annotation.JsonProperty("cwd") + private final String cwd; + + /** + * Absolute directory path to use as the working directory for command execution in the sandbox. + * + * @return the value + */ + public String getCwd() { + return cwd; + } + + /** Command arguments. */ + @com.fasterxml.jackson.annotation.JsonProperty("args") + private final java.util.List args; + + /** + * Command arguments. + * + * @return the value + */ + public java.util.List getArgs() { + return args; + } + + /** Environment variables to inject into the command execution. */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private final java.util.List environmentVariables; + + /** + * Environment variables to inject into the command execution. + * + * @return the value + */ + public java.util.List getEnvironmentVariables() { + return environmentVariables; + } + + /** Maximum execution time for the command, in ISO 8601 duration format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeout") + private final String timeout; + + /** + * Maximum execution time for the command, in ISO 8601 duration format. + * + * @return the value + */ + public String getTimeout() { + return timeout; + } + + @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("RunSandboxCommandDetails("); + sb.append("super=").append(super.toString()); + sb.append("command=").append(String.valueOf(this.command)); + sb.append(", cwd=").append(String.valueOf(this.cwd)); + sb.append(", args=").append(String.valueOf(this.args)); + sb.append(", environmentVariables=").append(String.valueOf(this.environmentVariables)); + sb.append(", timeout=").append(String.valueOf(this.timeout)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandDetails)) { + return false; + } + + RunSandboxCommandDetails other = (RunSandboxCommandDetails) o; + return java.util.Objects.equals(this.command, other.command) + && java.util.Objects.equals(this.cwd, other.cwd) + && java.util.Objects.equals(this.args, other.args) + && java.util.Objects.equals(this.environmentVariables, other.environmentVariables) + && java.util.Objects.equals(this.timeout, other.timeout) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.command == null ? 43 : this.command.hashCode()); + result = (result * PRIME) + (this.cwd == null ? 43 : this.cwd.hashCode()); + result = (result * PRIME) + (this.args == null ? 43 : this.args.hashCode()); + result = + (result * PRIME) + + (this.environmentVariables == null + ? 43 + : this.environmentVariables.hashCode()); + result = (result * PRIME) + (this.timeout == null ? 43 : this.timeout.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/Sandbox.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/Sandbox.java new file mode 100644 index 00000000000..8ca31cec342 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/Sandbox.java @@ -0,0 +1,914 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Sandbox resource representation.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Sandbox.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class Sandbox extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "displayName", + "projectId", + "lifecycleState", + "warmpoolName", + "runtime", + "publishedPortAuthMode", + "publishedPorts", + "environmentVariables", + "expiresInMinutes", + "expirationDuration", + "shape", + "timeCreated", + "timeUpdated", + "timeExpires", + "timeStopped" + }) + public Sandbox( + String id, + String displayName, + String projectId, + LifecycleState lifecycleState, + String warmpoolName, + String runtime, + PublishedPortAuthMode publishedPortAuthMode, + java.util.List publishedPorts, + java.util.List environmentVariables, + Integer expiresInMinutes, + String expirationDuration, + Shape shape, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeExpires, + java.util.Date timeStopped) { + super(); + this.id = id; + this.displayName = displayName; + this.projectId = projectId; + this.lifecycleState = lifecycleState; + this.warmpoolName = warmpoolName; + this.runtime = runtime; + this.publishedPortAuthMode = publishedPortAuthMode; + this.publishedPorts = publishedPorts; + this.environmentVariables = environmentVariables; + this.expiresInMinutes = expiresInMinutes; + this.expirationDuration = expirationDuration; + this.shape = shape; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeExpires = timeExpires; + this.timeStopped = timeStopped; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Display name for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * Display name for sandbox + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** GenerativeAiProject ID that sandbox belongs to */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private String projectId; + + /** + * GenerativeAiProject ID that sandbox belongs to + * + * @param projectId the value to set + * @return this builder + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + this.__explicitlySet__.add("projectId"); + return this; + } + /** The current state of the Sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The current state of the Sandbox. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + */ + @com.fasterxml.jackson.annotation.JsonProperty("warmpoolName") + private String warmpoolName; + + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + * + * @param warmpoolName the value to set + * @return this builder + */ + public Builder warmpoolName(String warmpoolName) { + this.warmpoolName = warmpoolName; + this.__explicitlySet__.add("warmpoolName"); + return this; + } + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle + * Cloud Infrastructure Registry image reference. + */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private String runtime; + + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle + * Cloud Infrastructure Registry image reference. + * + * @param runtime the value to set + * @return this builder + */ + public Builder runtime(String runtime) { + this.runtime = runtime; + this.__explicitlySet__.add("runtime"); + return this; + } + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. Immutable after + * creation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPortAuthMode") + private PublishedPortAuthMode publishedPortAuthMode; + + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. Immutable after + * creation. + * + * @param publishedPortAuthMode the value to set + * @return this builder + */ + public Builder publishedPortAuthMode(PublishedPortAuthMode publishedPortAuthMode) { + this.publishedPortAuthMode = publishedPortAuthMode; + this.__explicitlySet__.add("publishedPortAuthMode"); + return this; + } + /** Published ports for the sandbox proxy endpoint. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPorts") + private java.util.List publishedPorts; + + /** + * Published ports for the sandbox proxy endpoint. + * + * @param publishedPorts the value to set + * @return this builder + */ + public Builder publishedPorts(java.util.List publishedPorts) { + this.publishedPorts = publishedPorts; + this.__explicitlySet__.add("publishedPorts"); + return this; + } + /** list of environments for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private java.util.List environmentVariables; + + /** + * list of environments for sandbox + * + * @param environmentVariables the value to set + * @return this builder + */ + public Builder environmentVariables( + java.util.List environmentVariables) { + this.environmentVariables = environmentVariables; + this.__explicitlySet__.add("environmentVariables"); + return this; + } + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expiresInMinutes") + private Integer expiresInMinutes; + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to + * disable automatic expiration. + * + * @param expiresInMinutes the value to set + * @return this builder + */ + public Builder expiresInMinutes(Integer expiresInMinutes) { + this.expiresInMinutes = expiresInMinutes; + this.__explicitlySet__.add("expiresInMinutes"); + return this; + } + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private String expirationDuration; + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + * + * @param expirationDuration the value to set + * @return this builder + */ + public Builder expirationDuration(String expirationDuration) { + this.expirationDuration = expirationDuration; + this.__explicitlySet__.add("expirationDuration"); + return this; + } + /** shape for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private Shape shape; + + /** + * shape for sandbox + * + * @param shape the value to set + * @return this builder + */ + public Builder shape(Shape shape) { + this.shape = shape; + this.__explicitlySet__.add("shape"); + return this; + } + /** The date and time the sandbox was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the sandbox was created, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox was updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the sandbox was updated, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private java.util.Date timeExpires; + + /** + * The date and time the sandbox expires, in RFC 3339 format. + * + * @param timeExpires the value to set + * @return this builder + */ + public Builder timeExpires(java.util.Date timeExpires) { + this.timeExpires = timeExpires; + this.__explicitlySet__.add("timeExpires"); + return this; + } + /** The date and time the sandbox was stopped or expired, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStopped") + private java.util.Date timeStopped; + + /** + * The date and time the sandbox was stopped or expired, in RFC 3339 format. + * + * @param timeStopped the value to set + * @return this builder + */ + public Builder timeStopped(java.util.Date timeStopped) { + this.timeStopped = timeStopped; + this.__explicitlySet__.add("timeStopped"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public Sandbox build() { + Sandbox model = + new Sandbox( + this.id, + this.displayName, + this.projectId, + this.lifecycleState, + this.warmpoolName, + this.runtime, + this.publishedPortAuthMode, + this.publishedPorts, + this.environmentVariables, + this.expiresInMinutes, + this.expirationDuration, + this.shape, + this.timeCreated, + this.timeUpdated, + this.timeExpires, + this.timeStopped); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(Sandbox model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("projectId")) { + this.projectId(model.getProjectId()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("warmpoolName")) { + this.warmpoolName(model.getWarmpoolName()); + } + if (model.wasPropertyExplicitlySet("runtime")) { + this.runtime(model.getRuntime()); + } + if (model.wasPropertyExplicitlySet("publishedPortAuthMode")) { + this.publishedPortAuthMode(model.getPublishedPortAuthMode()); + } + if (model.wasPropertyExplicitlySet("publishedPorts")) { + this.publishedPorts(model.getPublishedPorts()); + } + if (model.wasPropertyExplicitlySet("environmentVariables")) { + this.environmentVariables(model.getEnvironmentVariables()); + } + if (model.wasPropertyExplicitlySet("expiresInMinutes")) { + this.expiresInMinutes(model.getExpiresInMinutes()); + } + if (model.wasPropertyExplicitlySet("expirationDuration")) { + this.expirationDuration(model.getExpirationDuration()); + } + if (model.wasPropertyExplicitlySet("shape")) { + this.shape(model.getShape()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeExpires")) { + this.timeExpires(model.getTimeExpires()); + } + if (model.wasPropertyExplicitlySet("timeStopped")) { + this.timeStopped(model.getTimeStopped()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + /** Display name for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * Display name for sandbox + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** GenerativeAiProject ID that sandbox belongs to */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private final String projectId; + + /** + * GenerativeAiProject ID that sandbox belongs to + * + * @return the value + */ + public String getProjectId() { + return projectId; + } + + /** The current state of the Sandbox. */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Running("RUNNING"), + Creating("CREATING"), + Updating("UPDATING"), + Deleted("DELETED"), + Failed("FAILED"), + Suspending("SUSPENDING"), + Suspended("SUSPENDED"), + Resuming("RESUMING"), + Stopping("STOPPING"), + Stopped("STOPPED"), + + /** + * 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 current state of the Sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The current state of the Sandbox. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + */ + @com.fasterxml.jackson.annotation.JsonProperty("warmpoolName") + private final String warmpoolName; + + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + * + * @return the value + */ + public String getWarmpoolName() { + return warmpoolName; + } + + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle Cloud + * Infrastructure Registry image reference. + */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private final String runtime; + + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle Cloud + * Infrastructure Registry image reference. + * + * @return the value + */ + public String getRuntime() { + return runtime; + } + + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. Immutable after + * creation. + */ + public enum PublishedPortAuthMode implements com.oracle.bmc.http.internal.BmcEnum { + OciIam("OCI_IAM"), + + /** + * 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(PublishedPortAuthMode.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (PublishedPortAuthMode v : PublishedPortAuthMode.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + PublishedPortAuthMode(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static PublishedPortAuthMode create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'PublishedPortAuthMode', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. Immutable after + * creation. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPortAuthMode") + private final PublishedPortAuthMode publishedPortAuthMode; + + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. Immutable after + * creation. + * + * @return the value + */ + public PublishedPortAuthMode getPublishedPortAuthMode() { + return publishedPortAuthMode; + } + + /** Published ports for the sandbox proxy endpoint. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPorts") + private final java.util.List publishedPorts; + + /** + * Published ports for the sandbox proxy endpoint. + * + * @return the value + */ + public java.util.List getPublishedPorts() { + return publishedPorts; + } + + /** list of environments for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private final java.util.List environmentVariables; + + /** + * list of environments for sandbox + * + * @return the value + */ + public java.util.List getEnvironmentVariables() { + return environmentVariables; + } + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to disable + * automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expiresInMinutes") + private final Integer expiresInMinutes; + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to disable + * automatic expiration. + * + * @return the value + */ + public Integer getExpiresInMinutes() { + return expiresInMinutes; + } + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private final String expirationDuration; + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + * + * @return the value + */ + public String getExpirationDuration() { + return expirationDuration; + } + + /** shape for sandbox */ + public enum Shape implements com.oracle.bmc.http.internal.BmcEnum { + Small("SMALL"), + Medium("MEDIUM"), + Large("LARGE"), + + /** + * 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(Shape.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Shape v : Shape.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Shape(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Shape create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Shape', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** shape for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private final Shape shape; + + /** + * shape for sandbox + * + * @return the value + */ + public Shape getShape() { + return shape; + } + + /** The date and time the sandbox was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the sandbox was created, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** The date and time the sandbox was updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the sandbox was updated, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The date and time the sandbox expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private final java.util.Date timeExpires; + + /** + * The date and time the sandbox expires, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeExpires() { + return timeExpires; + } + + /** The date and time the sandbox was stopped or expired, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStopped") + private final java.util.Date timeStopped; + + /** + * The date and time the sandbox was stopped or expired, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeStopped() { + return timeStopped; + } + + @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("Sandbox("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", projectId=").append(String.valueOf(this.projectId)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", warmpoolName=").append(String.valueOf(this.warmpoolName)); + sb.append(", runtime=").append(String.valueOf(this.runtime)); + sb.append(", publishedPortAuthMode=").append(String.valueOf(this.publishedPortAuthMode)); + sb.append(", publishedPorts=").append(String.valueOf(this.publishedPorts)); + sb.append(", environmentVariables=").append(String.valueOf(this.environmentVariables)); + sb.append(", expiresInMinutes=").append(String.valueOf(this.expiresInMinutes)); + sb.append(", expirationDuration=").append(String.valueOf(this.expirationDuration)); + sb.append(", shape=").append(String.valueOf(this.shape)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeExpires=").append(String.valueOf(this.timeExpires)); + sb.append(", timeStopped=").append(String.valueOf(this.timeStopped)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof Sandbox)) { + return false; + } + + Sandbox other = (Sandbox) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.warmpoolName, other.warmpoolName) + && java.util.Objects.equals(this.runtime, other.runtime) + && java.util.Objects.equals(this.publishedPortAuthMode, other.publishedPortAuthMode) + && java.util.Objects.equals(this.publishedPorts, other.publishedPorts) + && java.util.Objects.equals(this.environmentVariables, other.environmentVariables) + && java.util.Objects.equals(this.expiresInMinutes, other.expiresInMinutes) + && java.util.Objects.equals(this.expirationDuration, other.expirationDuration) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeExpires, other.timeExpires) + && java.util.Objects.equals(this.timeStopped, other.timeStopped) + && 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.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.warmpoolName == null ? 43 : this.warmpoolName.hashCode()); + result = (result * PRIME) + (this.runtime == null ? 43 : this.runtime.hashCode()); + result = + (result * PRIME) + + (this.publishedPortAuthMode == null + ? 43 + : this.publishedPortAuthMode.hashCode()); + result = + (result * PRIME) + + (this.publishedPorts == null ? 43 : this.publishedPorts.hashCode()); + result = + (result * PRIME) + + (this.environmentVariables == null + ? 43 + : this.environmentVariables.hashCode()); + result = + (result * PRIME) + + (this.expiresInMinutes == null ? 43 : this.expiresInMinutes.hashCode()); + result = + (result * PRIME) + + (this.expirationDuration == null + ? 43 + : this.expirationDuration.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.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.timeExpires == null ? 43 : this.timeExpires.hashCode()); + result = (result * PRIME) + (this.timeStopped == null ? 43 : this.timeStopped.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCollection.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCollection.java new file mode 100644 index 00000000000..acffe9a6d21 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCollection.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.generativeaisandbox.model; + +/** + * Paginated collection of sandbox resources.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public SandboxCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** List of sandbox resources. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * List of sandbox resources. + * + * @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 SandboxCollection build() { + SandboxCollection model = new SandboxCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCollection 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 sandbox resources. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * List of sandbox resources. + * + * @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("SandboxCollection("); + 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 SandboxCollection)) { + return false; + } + + SandboxCollection other = (SandboxCollection) 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommand.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommand.java new file mode 100644 index 00000000000..903ca8ccc33 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommand.java @@ -0,0 +1,555 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Sandbox command resource representation.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SandboxCommand.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommand + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "sandboxId", + "cwd", + "command", + "args", + "environmentVariables", + "exitCode", + "output", + "timeCreated", + "timeUpdated", + "timeStarted", + "timeFinished" + }) + public SandboxCommand( + String id, + String sandboxId, + String cwd, + String command, + java.util.List args, + java.util.List environmentVariables, + Integer exitCode, + SandboxCommandOutput output, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeStarted, + java.util.Date timeFinished) { + super(); + this.id = id; + this.sandboxId = sandboxId; + this.cwd = cwd; + this.command = command; + this.args = args; + this.environmentVariables = environmentVariables; + this.exitCode = exitCode; + this.output = output; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeStarted = timeStarted; + this.timeFinished = timeFinished; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox command identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Sandbox identifier that this command runs against. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private String sandboxId; + + /** + * Sandbox identifier that this command runs against. + * + * @param sandboxId the value to set + * @return this builder + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + this.__explicitlySet__.add("sandboxId"); + return this; + } + /** + * Absolute directory path used as the working directory for command execution in the + * sandbox. + */ + @com.fasterxml.jackson.annotation.JsonProperty("cwd") + private String cwd; + + /** + * Absolute directory path used as the working directory for command execution in the + * sandbox. + * + * @param cwd the value to set + * @return this builder + */ + public Builder cwd(String cwd) { + this.cwd = cwd; + this.__explicitlySet__.add("cwd"); + return this; + } + /** The command executed in the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("command") + private String command; + + /** + * The command executed in the sandbox runtime. + * + * @param command the value to set + * @return this builder + */ + public Builder command(String command) { + this.command = command; + this.__explicitlySet__.add("command"); + return this; + } + /** Command arguments. */ + @com.fasterxml.jackson.annotation.JsonProperty("args") + private java.util.List args; + + /** + * Command arguments. + * + * @param args the value to set + * @return this builder + */ + public Builder args(java.util.List args) { + this.args = args; + this.__explicitlySet__.add("args"); + return this; + } + /** Environment variables injected into the command execution. */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private java.util.List environmentVariables; + + /** + * Environment variables injected into the command execution. + * + * @param environmentVariables the value to set + * @return this builder + */ + public Builder environmentVariables( + java.util.List environmentVariables) { + this.environmentVariables = environmentVariables; + this.__explicitlySet__.add("environmentVariables"); + return this; + } + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private Integer exitCode; + + /** + * Process exit code when available. + * + * @param exitCode the value to set + * @return this builder + */ + public Builder exitCode(Integer exitCode) { + this.exitCode = exitCode; + this.__explicitlySet__.add("exitCode"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("output") + private SandboxCommandOutput output; + + public Builder output(SandboxCommandOutput output) { + this.output = output; + this.__explicitlySet__.add("output"); + return this; + } + /** The date and time the command was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the command was created, in RFC 3339 format. + * + * @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; + } + /** The date and time the command was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the command was last updated, in RFC 3339 format. + * + * @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; + } + /** The date and time command execution started, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private java.util.Date timeStarted; + + /** + * The date and time command execution started, in RFC 3339 format. + * + * @param timeStarted the value to set + * @return this builder + */ + public Builder timeStarted(java.util.Date timeStarted) { + this.timeStarted = timeStarted; + this.__explicitlySet__.add("timeStarted"); + return this; + } + /** The date and time command execution finished, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private java.util.Date timeFinished; + + /** + * The date and time command execution finished, in RFC 3339 format. + * + * @param timeFinished the value to set + * @return this builder + */ + public Builder timeFinished(java.util.Date timeFinished) { + this.timeFinished = timeFinished; + this.__explicitlySet__.add("timeFinished"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommand build() { + SandboxCommand model = + new SandboxCommand( + this.id, + this.sandboxId, + this.cwd, + this.command, + this.args, + this.environmentVariables, + this.exitCode, + this.output, + this.timeCreated, + this.timeUpdated, + this.timeStarted, + this.timeFinished); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommand model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("sandboxId")) { + this.sandboxId(model.getSandboxId()); + } + if (model.wasPropertyExplicitlySet("cwd")) { + this.cwd(model.getCwd()); + } + if (model.wasPropertyExplicitlySet("command")) { + this.command(model.getCommand()); + } + if (model.wasPropertyExplicitlySet("args")) { + this.args(model.getArgs()); + } + if (model.wasPropertyExplicitlySet("environmentVariables")) { + this.environmentVariables(model.getEnvironmentVariables()); + } + if (model.wasPropertyExplicitlySet("exitCode")) { + this.exitCode(model.getExitCode()); + } + if (model.wasPropertyExplicitlySet("output")) { + this.output(model.getOutput()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeStarted")) { + this.timeStarted(model.getTimeStarted()); + } + if (model.wasPropertyExplicitlySet("timeFinished")) { + this.timeFinished(model.getTimeFinished()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox command identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + /** Sandbox identifier that this command runs against. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private final String sandboxId; + + /** + * Sandbox identifier that this command runs against. + * + * @return the value + */ + public String getSandboxId() { + return sandboxId; + } + + /** + * Absolute directory path used as the working directory for command execution in the sandbox. + */ + @com.fasterxml.jackson.annotation.JsonProperty("cwd") + private final String cwd; + + /** + * Absolute directory path used as the working directory for command execution in the sandbox. + * + * @return the value + */ + public String getCwd() { + return cwd; + } + + /** The command executed in the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("command") + private final String command; + + /** + * The command executed in the sandbox runtime. + * + * @return the value + */ + public String getCommand() { + return command; + } + + /** Command arguments. */ + @com.fasterxml.jackson.annotation.JsonProperty("args") + private final java.util.List args; + + /** + * Command arguments. + * + * @return the value + */ + public java.util.List getArgs() { + return args; + } + + /** Environment variables injected into the command execution. */ + @com.fasterxml.jackson.annotation.JsonProperty("environmentVariables") + private final java.util.List environmentVariables; + + /** + * Environment variables injected into the command execution. + * + * @return the value + */ + public java.util.List getEnvironmentVariables() { + return environmentVariables; + } + + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private final Integer exitCode; + + /** + * Process exit code when available. + * + * @return the value + */ + public Integer getExitCode() { + return exitCode; + } + + @com.fasterxml.jackson.annotation.JsonProperty("output") + private final SandboxCommandOutput output; + + public SandboxCommandOutput getOutput() { + return output; + } + + /** The date and time the command was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the command was created, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** The date and time the command was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the command was last updated, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The date and time command execution started, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private final java.util.Date timeStarted; + + /** + * The date and time command execution started, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeStarted() { + return timeStarted; + } + + /** The date and time command execution finished, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private final java.util.Date timeFinished; + + /** + * The date and time command execution finished, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeFinished() { + return timeFinished; + } + + @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("SandboxCommand("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(", cwd=").append(String.valueOf(this.cwd)); + sb.append(", command=").append(String.valueOf(this.command)); + sb.append(", args=").append(String.valueOf(this.args)); + sb.append(", environmentVariables=").append(String.valueOf(this.environmentVariables)); + sb.append(", exitCode=").append(String.valueOf(this.exitCode)); + sb.append(", output=").append(String.valueOf(this.output)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeStarted=").append(String.valueOf(this.timeStarted)); + sb.append(", timeFinished=").append(String.valueOf(this.timeFinished)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCommand)) { + return false; + } + + SandboxCommand other = (SandboxCommand) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.cwd, other.cwd) + && java.util.Objects.equals(this.command, other.command) + && java.util.Objects.equals(this.args, other.args) + && java.util.Objects.equals(this.environmentVariables, other.environmentVariables) + && java.util.Objects.equals(this.exitCode, other.exitCode) + && java.util.Objects.equals(this.output, other.output) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeStarted, other.timeStarted) + && java.util.Objects.equals(this.timeFinished, other.timeFinished) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.cwd == null ? 43 : this.cwd.hashCode()); + result = (result * PRIME) + (this.command == null ? 43 : this.command.hashCode()); + result = (result * PRIME) + (this.args == null ? 43 : this.args.hashCode()); + result = + (result * PRIME) + + (this.environmentVariables == null + ? 43 + : this.environmentVariables.hashCode()); + result = (result * PRIME) + (this.exitCode == null ? 43 : this.exitCode.hashCode()); + result = (result * PRIME) + (this.output == null ? 43 : this.output.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.timeStarted == null ? 43 : this.timeStarted.hashCode()); + result = (result * PRIME) + (this.timeFinished == null ? 43 : this.timeFinished.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandCollection.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandCollection.java new file mode 100644 index 00000000000..56c24e8f73b --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandCollection.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.generativeaisandbox.model; + +/** + * Paginated collection of sandbox command resources.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public SandboxCommandCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** List of sandbox command resources. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * List of sandbox command resources. + * + * @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 SandboxCommandCollection build() { + SandboxCommandCollection model = new SandboxCommandCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandCollection 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 sandbox command resources. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * List of sandbox command resources. + * + * @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("SandboxCommandCollection("); + 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 SandboxCommandCollection)) { + return false; + } + + SandboxCommandCollection other = (SandboxCommandCollection) 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandEvent.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandEvent.java new file mode 100644 index 00000000000..81445371bfe --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandEvent.java @@ -0,0 +1,191 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Base command event emitted while a sandbox command runs.
+ * 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: 1.0") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "event", + defaultImpl = SandboxCommandEvent.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxCommandStderrEvent.class, + name = "STDERR"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxCommandFinishedEvent.class, + name = "FINISHED"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxCommandStartedEvent.class, + name = "STARTED"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxCommandStdoutEvent.class, + name = "STDOUT") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SandboxCommandEvent extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"seq", "timestamp", "commandId", "data"}) + protected SandboxCommandEvent( + Long seq, java.util.Date timestamp, String commandId, String data) { + super(); + this.seq = seq; + this.timestamp = timestamp; + this.commandId = commandId; + this.data = data; + } + + /** Monotonically increasing command event sequence number. */ + @com.fasterxml.jackson.annotation.JsonProperty("seq") + private final Long seq; + + /** + * Monotonically increasing command event sequence number. + * + * @return the value + */ + public Long getSeq() { + return seq; + } + + /** The date and time the command event was emitted, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private final java.util.Date timestamp; + + /** + * The date and time the command event was emitted, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimestamp() { + return timestamp; + } + + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private final String commandId; + + /** + * Sandbox command identifier. + * + * @return the value + */ + public String getCommandId() { + return commandId; + } + + /** Event payload. */ + @com.fasterxml.jackson.annotation.JsonProperty("data") + private final String data; + + /** + * Event payload. + * + * @return the value + */ + public String getData() { + return data; + } + + @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("SandboxCommandEvent("); + sb.append("super=").append(super.toString()); + sb.append("seq=").append(String.valueOf(this.seq)); + sb.append(", timestamp=").append(String.valueOf(this.timestamp)); + sb.append(", commandId=").append(String.valueOf(this.commandId)); + sb.append(", data=").append(String.valueOf(this.data)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCommandEvent)) { + return false; + } + + SandboxCommandEvent other = (SandboxCommandEvent) o; + return java.util.Objects.equals(this.seq, other.seq) + && java.util.Objects.equals(this.timestamp, other.timestamp) + && java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals(this.data, other.data) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.seq == null ? 43 : this.seq.hashCode()); + result = (result * PRIME) + (this.timestamp == null ? 43 : this.timestamp.hashCode()); + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = (result * PRIME) + (this.data == null ? 43 : this.data.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** Command event type. */ + public enum Event implements com.oracle.bmc.http.internal.BmcEnum { + Started("STARTED"), + Stdout("STDOUT"), + Stderr("STDERR"), + Finished("FINISHED"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Event v : Event.values()) { + map.put(v.getValue(), v); + } + } + + Event(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Event create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Event: " + key); + } + }; +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandFinishedEvent.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandFinishedEvent.java new file mode 100644 index 00000000000..30a6095b74f --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandFinishedEvent.java @@ -0,0 +1,184 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Event emitted when command execution finishes.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandFinishedEvent.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "event") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandFinishedEvent extends SandboxCommandEvent { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("seq") + private Long seq; + + public Builder seq(Long seq) { + this.seq = seq; + this.__explicitlySet__.add("seq"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private java.util.Date timestamp; + + public Builder timestamp(java.util.Date timestamp) { + this.timestamp = timestamp; + this.__explicitlySet__.add("timestamp"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private String commandId; + + public Builder commandId(String commandId) { + this.commandId = commandId; + this.__explicitlySet__.add("commandId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("data") + private String data; + + public Builder data(String data) { + this.data = data; + this.__explicitlySet__.add("data"); + return this; + } + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private Integer exitCode; + + /** + * Process exit code when available. + * + * @param exitCode the value to set + * @return this builder + */ + public Builder exitCode(Integer exitCode) { + this.exitCode = exitCode; + this.__explicitlySet__.add("exitCode"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandFinishedEvent build() { + SandboxCommandFinishedEvent model = + new SandboxCommandFinishedEvent( + this.seq, this.timestamp, this.commandId, this.data, this.exitCode); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandFinishedEvent model) { + if (model.wasPropertyExplicitlySet("seq")) { + this.seq(model.getSeq()); + } + if (model.wasPropertyExplicitlySet("timestamp")) { + this.timestamp(model.getTimestamp()); + } + if (model.wasPropertyExplicitlySet("commandId")) { + this.commandId(model.getCommandId()); + } + if (model.wasPropertyExplicitlySet("data")) { + this.data(model.getData()); + } + if (model.wasPropertyExplicitlySet("exitCode")) { + this.exitCode(model.getExitCode()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxCommandFinishedEvent( + Long seq, java.util.Date timestamp, String commandId, String data, Integer exitCode) { + super(seq, timestamp, commandId, data); + this.exitCode = exitCode; + } + + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private final Integer exitCode; + + /** + * Process exit code when available. + * + * @return the value + */ + public Integer getExitCode() { + return exitCode; + } + + @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("SandboxCommandFinishedEvent("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", exitCode=").append(String.valueOf(this.exitCode)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCommandFinishedEvent)) { + return false; + } + + SandboxCommandFinishedEvent other = (SandboxCommandFinishedEvent) o; + return java.util.Objects.equals(this.exitCode, other.exitCode) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.exitCode == null ? 43 : this.exitCode.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandIdentifier.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandIdentifier.java new file mode 100644 index 00000000000..17d652f80cb --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandIdentifier.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.generativeaisandbox.model; + +/** + * Sandbox command identifier response.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandIdentifier.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandIdentifier + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"id"}) + public SandboxCommandIdentifier(String id) { + super(); + this.id = id; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox command identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandIdentifier build() { + SandboxCommandIdentifier model = new SandboxCommandIdentifier(this.id); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandIdentifier model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox command identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + @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("SandboxCommandIdentifier("); + sb.append("super=").append(super.toString()); + 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 SandboxCommandIdentifier)) { + return false; + } + + SandboxCommandIdentifier other = (SandboxCommandIdentifier) o; + return java.util.Objects.equals(this.id, other.id) && 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) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandOutput.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandOutput.java new file mode 100644 index 00000000000..bdd39ca77c8 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandOutput.java @@ -0,0 +1,277 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Captured command output details.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandOutput.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandOutput + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"commandId", "exitCode", "stdout", "stderr", "lastSeq"}) + public SandboxCommandOutput( + String commandId, Integer exitCode, String stdout, String stderr, Long lastSeq) { + super(); + this.commandId = commandId; + this.exitCode = exitCode; + this.stdout = stdout; + this.stderr = stderr; + this.lastSeq = lastSeq; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private String commandId; + + /** + * Sandbox command identifier. + * + * @param commandId the value to set + * @return this builder + */ + public Builder commandId(String commandId) { + this.commandId = commandId; + this.__explicitlySet__.add("commandId"); + return this; + } + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private Integer exitCode; + + /** + * Process exit code when available. + * + * @param exitCode the value to set + * @return this builder + */ + public Builder exitCode(Integer exitCode) { + this.exitCode = exitCode; + this.__explicitlySet__.add("exitCode"); + return this; + } + /** Standard output captured from the requested event sequence. */ + @com.fasterxml.jackson.annotation.JsonProperty("stdout") + private String stdout; + + /** + * Standard output captured from the requested event sequence. + * + * @param stdout the value to set + * @return this builder + */ + public Builder stdout(String stdout) { + this.stdout = stdout; + this.__explicitlySet__.add("stdout"); + return this; + } + /** Standard error captured from the requested event sequence. */ + @com.fasterxml.jackson.annotation.JsonProperty("stderr") + private String stderr; + + /** + * Standard error captured from the requested event sequence. + * + * @param stderr the value to set + * @return this builder + */ + public Builder stderr(String stderr) { + this.stderr = stderr; + this.__explicitlySet__.add("stderr"); + return this; + } + /** Last command event sequence number included in the output. */ + @com.fasterxml.jackson.annotation.JsonProperty("lastSeq") + private Long lastSeq; + + /** + * Last command event sequence number included in the output. + * + * @param lastSeq the value to set + * @return this builder + */ + public Builder lastSeq(Long lastSeq) { + this.lastSeq = lastSeq; + this.__explicitlySet__.add("lastSeq"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandOutput build() { + SandboxCommandOutput model = + new SandboxCommandOutput( + this.commandId, this.exitCode, this.stdout, this.stderr, this.lastSeq); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandOutput model) { + if (model.wasPropertyExplicitlySet("commandId")) { + this.commandId(model.getCommandId()); + } + if (model.wasPropertyExplicitlySet("exitCode")) { + this.exitCode(model.getExitCode()); + } + if (model.wasPropertyExplicitlySet("stdout")) { + this.stdout(model.getStdout()); + } + if (model.wasPropertyExplicitlySet("stderr")) { + this.stderr(model.getStderr()); + } + if (model.wasPropertyExplicitlySet("lastSeq")) { + this.lastSeq(model.getLastSeq()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private final String commandId; + + /** + * Sandbox command identifier. + * + * @return the value + */ + public String getCommandId() { + return commandId; + } + + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private final Integer exitCode; + + /** + * Process exit code when available. + * + * @return the value + */ + public Integer getExitCode() { + return exitCode; + } + + /** Standard output captured from the requested event sequence. */ + @com.fasterxml.jackson.annotation.JsonProperty("stdout") + private final String stdout; + + /** + * Standard output captured from the requested event sequence. + * + * @return the value + */ + public String getStdout() { + return stdout; + } + + /** Standard error captured from the requested event sequence. */ + @com.fasterxml.jackson.annotation.JsonProperty("stderr") + private final String stderr; + + /** + * Standard error captured from the requested event sequence. + * + * @return the value + */ + public String getStderr() { + return stderr; + } + + /** Last command event sequence number included in the output. */ + @com.fasterxml.jackson.annotation.JsonProperty("lastSeq") + private final Long lastSeq; + + /** + * Last command event sequence number included in the output. + * + * @return the value + */ + public Long getLastSeq() { + return lastSeq; + } + + @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("SandboxCommandOutput("); + sb.append("super=").append(super.toString()); + sb.append("commandId=").append(String.valueOf(this.commandId)); + sb.append(", exitCode=").append(String.valueOf(this.exitCode)); + sb.append(", stdout=").append(String.valueOf(this.stdout)); + sb.append(", stderr=").append(String.valueOf(this.stderr)); + sb.append(", lastSeq=").append(String.valueOf(this.lastSeq)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCommandOutput)) { + return false; + } + + SandboxCommandOutput other = (SandboxCommandOutput) o; + return java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals(this.exitCode, other.exitCode) + && java.util.Objects.equals(this.stdout, other.stdout) + && java.util.Objects.equals(this.stderr, other.stderr) + && java.util.Objects.equals(this.lastSeq, other.lastSeq) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = (result * PRIME) + (this.exitCode == null ? 43 : this.exitCode.hashCode()); + result = (result * PRIME) + (this.stdout == null ? 43 : this.stdout.hashCode()); + result = (result * PRIME) + (this.stderr == null ? 43 : this.stderr.hashCode()); + result = (result * PRIME) + (this.lastSeq == null ? 43 : this.lastSeq.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStartedEvent.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStartedEvent.java new file mode 100644 index 00000000000..8c4b06cb387 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStartedEvent.java @@ -0,0 +1,150 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Event emitted when command execution starts.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandStartedEvent.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "event") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandStartedEvent extends SandboxCommandEvent { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("seq") + private Long seq; + + public Builder seq(Long seq) { + this.seq = seq; + this.__explicitlySet__.add("seq"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private java.util.Date timestamp; + + public Builder timestamp(java.util.Date timestamp) { + this.timestamp = timestamp; + this.__explicitlySet__.add("timestamp"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private String commandId; + + public Builder commandId(String commandId) { + this.commandId = commandId; + this.__explicitlySet__.add("commandId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("data") + private String data; + + public Builder data(String data) { + this.data = data; + this.__explicitlySet__.add("data"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandStartedEvent build() { + SandboxCommandStartedEvent model = + new SandboxCommandStartedEvent( + this.seq, this.timestamp, this.commandId, this.data); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandStartedEvent model) { + if (model.wasPropertyExplicitlySet("seq")) { + this.seq(model.getSeq()); + } + if (model.wasPropertyExplicitlySet("timestamp")) { + this.timestamp(model.getTimestamp()); + } + if (model.wasPropertyExplicitlySet("commandId")) { + this.commandId(model.getCommandId()); + } + if (model.wasPropertyExplicitlySet("data")) { + this.data(model.getData()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxCommandStartedEvent( + Long seq, java.util.Date timestamp, String commandId, String data) { + super(seq, timestamp, commandId, data); + } + + @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("SandboxCommandStartedEvent("); + 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 SandboxCommandStartedEvent)) { + return false; + } + + SandboxCommandStartedEvent other = (SandboxCommandStartedEvent) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStderrEvent.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStderrEvent.java new file mode 100644 index 00000000000..edd18862bd9 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStderrEvent.java @@ -0,0 +1,150 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Event containing a standard error chunk.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandStderrEvent.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "event") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandStderrEvent extends SandboxCommandEvent { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("seq") + private Long seq; + + public Builder seq(Long seq) { + this.seq = seq; + this.__explicitlySet__.add("seq"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private java.util.Date timestamp; + + public Builder timestamp(java.util.Date timestamp) { + this.timestamp = timestamp; + this.__explicitlySet__.add("timestamp"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private String commandId; + + public Builder commandId(String commandId) { + this.commandId = commandId; + this.__explicitlySet__.add("commandId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("data") + private String data; + + public Builder data(String data) { + this.data = data; + this.__explicitlySet__.add("data"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandStderrEvent build() { + SandboxCommandStderrEvent model = + new SandboxCommandStderrEvent( + this.seq, this.timestamp, this.commandId, this.data); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandStderrEvent model) { + if (model.wasPropertyExplicitlySet("seq")) { + this.seq(model.getSeq()); + } + if (model.wasPropertyExplicitlySet("timestamp")) { + this.timestamp(model.getTimestamp()); + } + if (model.wasPropertyExplicitlySet("commandId")) { + this.commandId(model.getCommandId()); + } + if (model.wasPropertyExplicitlySet("data")) { + this.data(model.getData()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxCommandStderrEvent( + Long seq, java.util.Date timestamp, String commandId, String data) { + super(seq, timestamp, commandId, data); + } + + @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("SandboxCommandStderrEvent("); + 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 SandboxCommandStderrEvent)) { + return false; + } + + SandboxCommandStderrEvent other = (SandboxCommandStderrEvent) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStdoutEvent.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStdoutEvent.java new file mode 100644 index 00000000000..574880eae26 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandStdoutEvent.java @@ -0,0 +1,150 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Event containing a standard output chunk.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandStdoutEvent.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "event") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandStdoutEvent extends SandboxCommandEvent { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("seq") + private Long seq; + + public Builder seq(Long seq) { + this.seq = seq; + this.__explicitlySet__.add("seq"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private java.util.Date timestamp; + + public Builder timestamp(java.util.Date timestamp) { + this.timestamp = timestamp; + this.__explicitlySet__.add("timestamp"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("commandId") + private String commandId; + + public Builder commandId(String commandId) { + this.commandId = commandId; + this.__explicitlySet__.add("commandId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("data") + private String data; + + public Builder data(String data) { + this.data = data; + this.__explicitlySet__.add("data"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandStdoutEvent build() { + SandboxCommandStdoutEvent model = + new SandboxCommandStdoutEvent( + this.seq, this.timestamp, this.commandId, this.data); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandStdoutEvent model) { + if (model.wasPropertyExplicitlySet("seq")) { + this.seq(model.getSeq()); + } + if (model.wasPropertyExplicitlySet("timestamp")) { + this.timestamp(model.getTimestamp()); + } + if (model.wasPropertyExplicitlySet("commandId")) { + this.commandId(model.getCommandId()); + } + if (model.wasPropertyExplicitlySet("data")) { + this.data(model.getData()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxCommandStdoutEvent( + Long seq, java.util.Date timestamp, String commandId, String data) { + super(seq, timestamp, commandId, data); + } + + @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("SandboxCommandStdoutEvent("); + 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 SandboxCommandStdoutEvent)) { + return false; + } + + SandboxCommandStdoutEvent other = (SandboxCommandStdoutEvent) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandSummary.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandSummary.java new file mode 100644 index 00000000000..d6f9d64c9fb --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxCommandSummary.java @@ -0,0 +1,487 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Sandbox command resource summary.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxCommandSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxCommandSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "sandboxId", + "cwd", + "command", + "args", + "exitCode", + "timeCreated", + "timeUpdated", + "timeStarted", + "timeFinished" + }) + public SandboxCommandSummary( + String id, + String sandboxId, + String cwd, + String command, + java.util.List args, + Integer exitCode, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeStarted, + java.util.Date timeFinished) { + super(); + this.id = id; + this.sandboxId = sandboxId; + this.cwd = cwd; + this.command = command; + this.args = args; + this.exitCode = exitCode; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeStarted = timeStarted; + this.timeFinished = timeFinished; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox command identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Sandbox identifier that this command runs against. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private String sandboxId; + + /** + * Sandbox identifier that this command runs against. + * + * @param sandboxId the value to set + * @return this builder + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + this.__explicitlySet__.add("sandboxId"); + return this; + } + /** + * Absolute directory path used as the working directory for command execution in the + * sandbox. + */ + @com.fasterxml.jackson.annotation.JsonProperty("cwd") + private String cwd; + + /** + * Absolute directory path used as the working directory for command execution in the + * sandbox. + * + * @param cwd the value to set + * @return this builder + */ + public Builder cwd(String cwd) { + this.cwd = cwd; + this.__explicitlySet__.add("cwd"); + return this; + } + /** The command executed in the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("command") + private String command; + + /** + * The command executed in the sandbox runtime. + * + * @param command the value to set + * @return this builder + */ + public Builder command(String command) { + this.command = command; + this.__explicitlySet__.add("command"); + return this; + } + /** Command arguments. */ + @com.fasterxml.jackson.annotation.JsonProperty("args") + private java.util.List args; + + /** + * Command arguments. + * + * @param args the value to set + * @return this builder + */ + public Builder args(java.util.List args) { + this.args = args; + this.__explicitlySet__.add("args"); + return this; + } + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private Integer exitCode; + + /** + * Process exit code when available. + * + * @param exitCode the value to set + * @return this builder + */ + public Builder exitCode(Integer exitCode) { + this.exitCode = exitCode; + this.__explicitlySet__.add("exitCode"); + return this; + } + /** The date and time the command was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the command was created, in RFC 3339 format. + * + * @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; + } + /** The date and time the command was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the command was last updated, in RFC 3339 format. + * + * @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; + } + /** The date and time command execution started, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private java.util.Date timeStarted; + + /** + * The date and time command execution started, in RFC 3339 format. + * + * @param timeStarted the value to set + * @return this builder + */ + public Builder timeStarted(java.util.Date timeStarted) { + this.timeStarted = timeStarted; + this.__explicitlySet__.add("timeStarted"); + return this; + } + /** The date and time command execution finished, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private java.util.Date timeFinished; + + /** + * The date and time command execution finished, in RFC 3339 format. + * + * @param timeFinished the value to set + * @return this builder + */ + public Builder timeFinished(java.util.Date timeFinished) { + this.timeFinished = timeFinished; + this.__explicitlySet__.add("timeFinished"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxCommandSummary build() { + SandboxCommandSummary model = + new SandboxCommandSummary( + this.id, + this.sandboxId, + this.cwd, + this.command, + this.args, + this.exitCode, + this.timeCreated, + this.timeUpdated, + this.timeStarted, + this.timeFinished); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxCommandSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("sandboxId")) { + this.sandboxId(model.getSandboxId()); + } + if (model.wasPropertyExplicitlySet("cwd")) { + this.cwd(model.getCwd()); + } + if (model.wasPropertyExplicitlySet("command")) { + this.command(model.getCommand()); + } + if (model.wasPropertyExplicitlySet("args")) { + this.args(model.getArgs()); + } + if (model.wasPropertyExplicitlySet("exitCode")) { + this.exitCode(model.getExitCode()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeStarted")) { + this.timeStarted(model.getTimeStarted()); + } + if (model.wasPropertyExplicitlySet("timeFinished")) { + this.timeFinished(model.getTimeFinished()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox command identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox command identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + /** Sandbox identifier that this command runs against. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private final String sandboxId; + + /** + * Sandbox identifier that this command runs against. + * + * @return the value + */ + public String getSandboxId() { + return sandboxId; + } + + /** + * Absolute directory path used as the working directory for command execution in the sandbox. + */ + @com.fasterxml.jackson.annotation.JsonProperty("cwd") + private final String cwd; + + /** + * Absolute directory path used as the working directory for command execution in the sandbox. + * + * @return the value + */ + public String getCwd() { + return cwd; + } + + /** The command executed in the sandbox runtime. */ + @com.fasterxml.jackson.annotation.JsonProperty("command") + private final String command; + + /** + * The command executed in the sandbox runtime. + * + * @return the value + */ + public String getCommand() { + return command; + } + + /** Command arguments. */ + @com.fasterxml.jackson.annotation.JsonProperty("args") + private final java.util.List args; + + /** + * Command arguments. + * + * @return the value + */ + public java.util.List getArgs() { + return args; + } + + /** Process exit code when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("exitCode") + private final Integer exitCode; + + /** + * Process exit code when available. + * + * @return the value + */ + public Integer getExitCode() { + return exitCode; + } + + /** The date and time the command was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the command was created, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** The date and time the command was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the command was last updated, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The date and time command execution started, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private final java.util.Date timeStarted; + + /** + * The date and time command execution started, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeStarted() { + return timeStarted; + } + + /** The date and time command execution finished, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private final java.util.Date timeFinished; + + /** + * The date and time command execution finished, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeFinished() { + return timeFinished; + } + + @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("SandboxCommandSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(", cwd=").append(String.valueOf(this.cwd)); + sb.append(", command=").append(String.valueOf(this.command)); + sb.append(", args=").append(String.valueOf(this.args)); + sb.append(", exitCode=").append(String.valueOf(this.exitCode)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeStarted=").append(String.valueOf(this.timeStarted)); + sb.append(", timeFinished=").append(String.valueOf(this.timeFinished)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxCommandSummary)) { + return false; + } + + SandboxCommandSummary other = (SandboxCommandSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.cwd, other.cwd) + && java.util.Objects.equals(this.command, other.command) + && java.util.Objects.equals(this.args, other.args) + && java.util.Objects.equals(this.exitCode, other.exitCode) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeStarted, other.timeStarted) + && java.util.Objects.equals(this.timeFinished, other.timeFinished) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.cwd == null ? 43 : this.cwd.hashCode()); + result = (result * PRIME) + (this.command == null ? 43 : this.command.hashCode()); + result = (result * PRIME) + (this.args == null ? 43 : this.args.hashCode()); + result = (result * PRIME) + (this.exitCode == null ? 43 : this.exitCode.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.timeStarted == null ? 43 : this.timeStarted.hashCode()); + result = (result * PRIME) + (this.timeFinished == null ? 43 : this.timeFinished.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxFile.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxFile.java new file mode 100644 index 00000000000..cea7497ab8c --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxFile.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.generativeaisandbox.model; + +/** + * Sandbox file resource representation.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SandboxFile.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxFile extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"sandboxId", "filePath", "contentSha256"}) + public SandboxFile(String sandboxId, String filePath, String contentSha256) { + super(); + this.sandboxId = sandboxId; + this.filePath = filePath; + this.contentSha256 = contentSha256; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox identifier that this file belongs to. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private String sandboxId; + + /** + * Sandbox identifier that this file belongs to. + * + * @param sandboxId the value to set + * @return this builder + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + this.__explicitlySet__.add("sandboxId"); + return this; + } + /** Absolute path of the file in the sandbox, under /workspace. */ + @com.fasterxml.jackson.annotation.JsonProperty("filePath") + private String filePath; + + /** + * Absolute path of the file in the sandbox, under /workspace. + * + * @param filePath the value to set + * @return this builder + */ + public Builder filePath(String filePath) { + this.filePath = filePath; + this.__explicitlySet__.add("filePath"); + return this; + } + /** Base64-encoded SHA-256 checksum of the file content when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("contentSha256") + private String contentSha256; + + /** + * Base64-encoded SHA-256 checksum of the file content when available. + * + * @param contentSha256 the value to set + * @return this builder + */ + public Builder contentSha256(String contentSha256) { + this.contentSha256 = contentSha256; + this.__explicitlySet__.add("contentSha256"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxFile build() { + SandboxFile model = new SandboxFile(this.sandboxId, this.filePath, this.contentSha256); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxFile model) { + if (model.wasPropertyExplicitlySet("sandboxId")) { + this.sandboxId(model.getSandboxId()); + } + if (model.wasPropertyExplicitlySet("filePath")) { + this.filePath(model.getFilePath()); + } + if (model.wasPropertyExplicitlySet("contentSha256")) { + this.contentSha256(model.getContentSha256()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox identifier that this file belongs to. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private final String sandboxId; + + /** + * Sandbox identifier that this file belongs to. + * + * @return the value + */ + public String getSandboxId() { + return sandboxId; + } + + /** Absolute path of the file in the sandbox, under /workspace. */ + @com.fasterxml.jackson.annotation.JsonProperty("filePath") + private final String filePath; + + /** + * Absolute path of the file in the sandbox, under /workspace. + * + * @return the value + */ + public String getFilePath() { + return filePath; + } + + /** Base64-encoded SHA-256 checksum of the file content when available. */ + @com.fasterxml.jackson.annotation.JsonProperty("contentSha256") + private final String contentSha256; + + /** + * Base64-encoded SHA-256 checksum of the file content when available. + * + * @return the value + */ + public String getContentSha256() { + return contentSha256; + } + + @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("SandboxFile("); + sb.append("super=").append(super.toString()); + sb.append("sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(", filePath=").append(String.valueOf(this.filePath)); + sb.append(", contentSha256=").append(String.valueOf(this.contentSha256)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxFile)) { + return false; + } + + SandboxFile other = (SandboxFile) o; + return java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.filePath, other.filePath) + && java.util.Objects.equals(this.contentSha256, other.contentSha256) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.filePath == null ? 43 : this.filePath.hashCode()); + result = + (result * PRIME) + + (this.contentSha256 == null ? 43 : this.contentSha256.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshot.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshot.java new file mode 100644 index 00000000000..08e8fe6aed0 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshot.java @@ -0,0 +1,581 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Sandbox snapshot resource representation.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SandboxSnapshot.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxSnapshot + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "displayName", + "projectId", + "sandboxId", + "runtime", + "expirationDuration", + "sizeBytes", + "lifecycleState", + "timeCreated", + "timeUpdated", + "timeExpires" + }) + public SandboxSnapshot( + String id, + String displayName, + String projectId, + String sandboxId, + String runtime, + String expirationDuration, + Long sizeBytes, + LifecycleState lifecycleState, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeExpires) { + super(); + this.id = id; + this.displayName = displayName; + this.projectId = projectId; + this.sandboxId = sandboxId; + this.runtime = runtime; + this.expirationDuration = expirationDuration; + this.sizeBytes = sizeBytes; + this.lifecycleState = lifecycleState; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeExpires = timeExpires; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox snapshot identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox snapshot identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Display name for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * Display name for the sandbox snapshot. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** Project identifier that the sandbox snapshot belongs to. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private String projectId; + + /** + * Project identifier that the sandbox snapshot belongs to. + * + * @param projectId the value to set + * @return this builder + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + this.__explicitlySet__.add("projectId"); + return this; + } + /** Identifier of the sandbox used to create the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private String sandboxId; + + /** + * Identifier of the sandbox used to create the sandbox snapshot. + * + * @param sandboxId the value to set + * @return this builder + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + this.__explicitlySet__.add("sandboxId"); + return this; + } + /** Runtime identifier for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private String runtime; + + /** + * Runtime identifier for the sandbox snapshot. + * + * @param runtime the value to set + * @return this builder + */ + public Builder runtime(String runtime) { + this.runtime = runtime; + this.__explicitlySet__.add("runtime"); + return this; + } + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. + * For example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private String expirationDuration; + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. + * For example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + * + * @param expirationDuration the value to set + * @return this builder + */ + public Builder expirationDuration(String expirationDuration) { + this.expirationDuration = expirationDuration; + this.__explicitlySet__.add("expirationDuration"); + return this; + } + /** Size of the sandbox snapshot archive in bytes. */ + @com.fasterxml.jackson.annotation.JsonProperty("sizeBytes") + private Long sizeBytes; + + /** + * Size of the sandbox snapshot archive in bytes. + * + * @param sizeBytes the value to set + * @return this builder + */ + public Builder sizeBytes(Long sizeBytes) { + this.sizeBytes = sizeBytes; + this.__explicitlySet__.add("sizeBytes"); + return this; + } + /** The current state of the SandboxSnapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The current state of the SandboxSnapshot. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** The date and time the sandbox snapshot was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the sandbox snapshot was created, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox snapshot was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the sandbox snapshot was last updated, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox snapshot expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private java.util.Date timeExpires; + + /** + * The date and time the sandbox snapshot expires, in RFC 3339 format. + * + * @param timeExpires the value to set + * @return this builder + */ + public Builder timeExpires(java.util.Date timeExpires) { + this.timeExpires = timeExpires; + this.__explicitlySet__.add("timeExpires"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxSnapshot build() { + SandboxSnapshot model = + new SandboxSnapshot( + this.id, + this.displayName, + this.projectId, + this.sandboxId, + this.runtime, + this.expirationDuration, + this.sizeBytes, + this.lifecycleState, + this.timeCreated, + this.timeUpdated, + this.timeExpires); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxSnapshot model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("projectId")) { + this.projectId(model.getProjectId()); + } + if (model.wasPropertyExplicitlySet("sandboxId")) { + this.sandboxId(model.getSandboxId()); + } + if (model.wasPropertyExplicitlySet("runtime")) { + this.runtime(model.getRuntime()); + } + if (model.wasPropertyExplicitlySet("expirationDuration")) { + this.expirationDuration(model.getExpirationDuration()); + } + if (model.wasPropertyExplicitlySet("sizeBytes")) { + this.sizeBytes(model.getSizeBytes()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeExpires")) { + this.timeExpires(model.getTimeExpires()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox snapshot identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox snapshot identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + /** Display name for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * Display name for the sandbox snapshot. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** Project identifier that the sandbox snapshot belongs to. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private final String projectId; + + /** + * Project identifier that the sandbox snapshot belongs to. + * + * @return the value + */ + public String getProjectId() { + return projectId; + } + + /** Identifier of the sandbox used to create the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private final String sandboxId; + + /** + * Identifier of the sandbox used to create the sandbox snapshot. + * + * @return the value + */ + public String getSandboxId() { + return sandboxId; + } + + /** Runtime identifier for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private final String runtime; + + /** + * Runtime identifier for the sandbox snapshot. + * + * @return the value + */ + public String getRuntime() { + return runtime; + } + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. For + * example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private final String expirationDuration; + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. For + * example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + * + * @return the value + */ + public String getExpirationDuration() { + return expirationDuration; + } + + /** Size of the sandbox snapshot archive in bytes. */ + @com.fasterxml.jackson.annotation.JsonProperty("sizeBytes") + private final Long sizeBytes; + + /** + * Size of the sandbox snapshot archive in bytes. + * + * @return the value + */ + public Long getSizeBytes() { + return sizeBytes; + } + + /** The current state of the SandboxSnapshot. */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Creating("CREATING"), + Active("ACTIVE"), + Failed("FAILED"), + Deleting("DELETING"), + Deleted("DELETED"), + + /** + * 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 current state of the SandboxSnapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The current state of the SandboxSnapshot. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** The date and time the sandbox snapshot was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the sandbox snapshot was created, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** The date and time the sandbox snapshot was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the sandbox snapshot was last updated, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The date and time the sandbox snapshot expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private final java.util.Date timeExpires; + + /** + * The date and time the sandbox snapshot expires, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeExpires() { + return timeExpires; + } + + @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("SandboxSnapshot("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", projectId=").append(String.valueOf(this.projectId)); + sb.append(", sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(", runtime=").append(String.valueOf(this.runtime)); + sb.append(", expirationDuration=").append(String.valueOf(this.expirationDuration)); + sb.append(", sizeBytes=").append(String.valueOf(this.sizeBytes)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeExpires=").append(String.valueOf(this.timeExpires)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxSnapshot)) { + return false; + } + + SandboxSnapshot other = (SandboxSnapshot) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.runtime, other.runtime) + && java.util.Objects.equals(this.expirationDuration, other.expirationDuration) + && java.util.Objects.equals(this.sizeBytes, other.sizeBytes) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeExpires, other.timeExpires) + && 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.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.runtime == null ? 43 : this.runtime.hashCode()); + result = + (result * PRIME) + + (this.expirationDuration == null + ? 43 + : this.expirationDuration.hashCode()); + result = (result * PRIME) + (this.sizeBytes == null ? 43 : this.sizeBytes.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.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.timeExpires == null ? 43 : this.timeExpires.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotCollection.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotCollection.java new file mode 100644 index 00000000000..7d72506583a --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotCollection.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.generativeaisandbox.model; + +/** + * Paginated collection of sandbox snapshot resources.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxSnapshotCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxSnapshotCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public SandboxSnapshotCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** List of sandbox snapshot resources. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * List of sandbox snapshot resources. + * + * @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 SandboxSnapshotCollection build() { + SandboxSnapshotCollection model = new SandboxSnapshotCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxSnapshotCollection 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 sandbox snapshot resources. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * List of sandbox snapshot resources. + * + * @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("SandboxSnapshotCollection("); + 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 SandboxSnapshotCollection)) { + return false; + } + + SandboxSnapshotCollection other = (SandboxSnapshotCollection) 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotSource.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotSource.java new file mode 100644 index 00000000000..350f8618dbe --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotSource.java @@ -0,0 +1,134 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Source configuration for initializing a sandbox from a sandbox snapshot.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxSnapshotSource.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "sourceType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxSnapshotSource extends SandboxSource { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Identifier of the sandbox snapshot to restore during sandbox creation. */ + @com.fasterxml.jackson.annotation.JsonProperty("snapshotId") + private String snapshotId; + + /** + * Identifier of the sandbox snapshot to restore during sandbox creation. + * + * @param snapshotId the value to set + * @return this builder + */ + public Builder snapshotId(String snapshotId) { + this.snapshotId = snapshotId; + this.__explicitlySet__.add("snapshotId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxSnapshotSource build() { + SandboxSnapshotSource model = new SandboxSnapshotSource(this.snapshotId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxSnapshotSource model) { + if (model.wasPropertyExplicitlySet("snapshotId")) { + this.snapshotId(model.getSnapshotId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SandboxSnapshotSource(String snapshotId) { + super(); + this.snapshotId = snapshotId; + } + + /** Identifier of the sandbox snapshot to restore during sandbox creation. */ + @com.fasterxml.jackson.annotation.JsonProperty("snapshotId") + private final String snapshotId; + + /** + * Identifier of the sandbox snapshot to restore during sandbox creation. + * + * @return the value + */ + public String getSnapshotId() { + return snapshotId; + } + + @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("SandboxSnapshotSource("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", snapshotId=").append(String.valueOf(this.snapshotId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxSnapshotSource)) { + return false; + } + + SandboxSnapshotSource other = (SandboxSnapshotSource) o; + return java.util.Objects.equals(this.snapshotId, other.snapshotId) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.snapshotId == null ? 43 : this.snapshotId.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotSummary.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotSummary.java new file mode 100644 index 00000000000..dae4c10005f --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSnapshotSummary.java @@ -0,0 +1,541 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Sandbox snapshot resource summary.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SandboxSnapshotSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxSnapshotSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "displayName", + "projectId", + "sandboxId", + "runtime", + "expirationDuration", + "sizeBytes", + "lifecycleState", + "timeCreated", + "timeUpdated", + "timeExpires" + }) + public SandboxSnapshotSummary( + String id, + String displayName, + String projectId, + String sandboxId, + String runtime, + String expirationDuration, + Long sizeBytes, + SandboxSnapshot.LifecycleState lifecycleState, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeExpires) { + super(); + this.id = id; + this.displayName = displayName; + this.projectId = projectId; + this.sandboxId = sandboxId; + this.runtime = runtime; + this.expirationDuration = expirationDuration; + this.sizeBytes = sizeBytes; + this.lifecycleState = lifecycleState; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeExpires = timeExpires; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox snapshot identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox snapshot identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Display name for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * Display name for the sandbox snapshot. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** Project identifier that the sandbox snapshot belongs to. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private String projectId; + + /** + * Project identifier that the sandbox snapshot belongs to. + * + * @param projectId the value to set + * @return this builder + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + this.__explicitlySet__.add("projectId"); + return this; + } + /** Identifier of the sandbox used to create the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private String sandboxId; + + /** + * Identifier of the sandbox used to create the sandbox snapshot. + * + * @param sandboxId the value to set + * @return this builder + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + this.__explicitlySet__.add("sandboxId"); + return this; + } + /** Runtime identifier for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private String runtime; + + /** + * Runtime identifier for the sandbox snapshot. + * + * @param runtime the value to set + * @return this builder + */ + public Builder runtime(String runtime) { + this.runtime = runtime; + this.__explicitlySet__.add("runtime"); + return this; + } + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. + * For example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private String expirationDuration; + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. + * For example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + * + * @param expirationDuration the value to set + * @return this builder + */ + public Builder expirationDuration(String expirationDuration) { + this.expirationDuration = expirationDuration; + this.__explicitlySet__.add("expirationDuration"); + return this; + } + /** Size of the sandbox snapshot archive in bytes. */ + @com.fasterxml.jackson.annotation.JsonProperty("sizeBytes") + private Long sizeBytes; + + /** + * Size of the sandbox snapshot archive in bytes. + * + * @param sizeBytes the value to set + * @return this builder + */ + public Builder sizeBytes(Long sizeBytes) { + this.sizeBytes = sizeBytes; + this.__explicitlySet__.add("sizeBytes"); + return this; + } + /** + * The current state of the SandboxSnapshot. Allowed values are: - CREATING - ACTIVE - + * FAILED - DELETING - DELETED + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private SandboxSnapshot.LifecycleState lifecycleState; + + /** + * The current state of the SandboxSnapshot. Allowed values are: - CREATING - ACTIVE - + * FAILED - DELETING - DELETED + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(SandboxSnapshot.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** The date and time the sandbox snapshot was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the sandbox snapshot was created, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox snapshot was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the sandbox snapshot was last updated, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox snapshot expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private java.util.Date timeExpires; + + /** + * The date and time the sandbox snapshot expires, in RFC 3339 format. + * + * @param timeExpires the value to set + * @return this builder + */ + public Builder timeExpires(java.util.Date timeExpires) { + this.timeExpires = timeExpires; + this.__explicitlySet__.add("timeExpires"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxSnapshotSummary build() { + SandboxSnapshotSummary model = + new SandboxSnapshotSummary( + this.id, + this.displayName, + this.projectId, + this.sandboxId, + this.runtime, + this.expirationDuration, + this.sizeBytes, + this.lifecycleState, + this.timeCreated, + this.timeUpdated, + this.timeExpires); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxSnapshotSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("projectId")) { + this.projectId(model.getProjectId()); + } + if (model.wasPropertyExplicitlySet("sandboxId")) { + this.sandboxId(model.getSandboxId()); + } + if (model.wasPropertyExplicitlySet("runtime")) { + this.runtime(model.getRuntime()); + } + if (model.wasPropertyExplicitlySet("expirationDuration")) { + this.expirationDuration(model.getExpirationDuration()); + } + if (model.wasPropertyExplicitlySet("sizeBytes")) { + this.sizeBytes(model.getSizeBytes()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeExpires")) { + this.timeExpires(model.getTimeExpires()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox snapshot identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox snapshot identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + /** Display name for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * Display name for the sandbox snapshot. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** Project identifier that the sandbox snapshot belongs to. */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private final String projectId; + + /** + * Project identifier that the sandbox snapshot belongs to. + * + * @return the value + */ + public String getProjectId() { + return projectId; + } + + /** Identifier of the sandbox used to create the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("sandboxId") + private final String sandboxId; + + /** + * Identifier of the sandbox used to create the sandbox snapshot. + * + * @return the value + */ + public String getSandboxId() { + return sandboxId; + } + + /** Runtime identifier for the sandbox snapshot. */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private final String runtime; + + /** + * Runtime identifier for the sandbox snapshot. + * + * @return the value + */ + public String getRuntime() { + return runtime; + } + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. For + * example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private final String expirationDuration; + + /** + * Duration after creation before the sandbox snapshot expires, in ISO 8601 duration format. For + * example, {@code P7D} for 7 days or {@code PT24H} for 24 hours. + * + * @return the value + */ + public String getExpirationDuration() { + return expirationDuration; + } + + /** Size of the sandbox snapshot archive in bytes. */ + @com.fasterxml.jackson.annotation.JsonProperty("sizeBytes") + private final Long sizeBytes; + + /** + * Size of the sandbox snapshot archive in bytes. + * + * @return the value + */ + public Long getSizeBytes() { + return sizeBytes; + } + + /** + * The current state of the SandboxSnapshot. Allowed values are: - CREATING - ACTIVE - FAILED - + * DELETING - DELETED + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final SandboxSnapshot.LifecycleState lifecycleState; + + /** + * The current state of the SandboxSnapshot. Allowed values are: - CREATING - ACTIVE - FAILED - + * DELETING - DELETED + * + * @return the value + */ + public SandboxSnapshot.LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** The date and time the sandbox snapshot was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the sandbox snapshot was created, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** The date and time the sandbox snapshot was last updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the sandbox snapshot was last updated, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The date and time the sandbox snapshot expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private final java.util.Date timeExpires; + + /** + * The date and time the sandbox snapshot expires, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeExpires() { + return timeExpires; + } + + @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("SandboxSnapshotSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", projectId=").append(String.valueOf(this.projectId)); + sb.append(", sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(", runtime=").append(String.valueOf(this.runtime)); + sb.append(", expirationDuration=").append(String.valueOf(this.expirationDuration)); + sb.append(", sizeBytes=").append(String.valueOf(this.sizeBytes)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeExpires=").append(String.valueOf(this.timeExpires)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxSnapshotSummary)) { + return false; + } + + SandboxSnapshotSummary other = (SandboxSnapshotSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.runtime, other.runtime) + && java.util.Objects.equals(this.expirationDuration, other.expirationDuration) + && java.util.Objects.equals(this.sizeBytes, other.sizeBytes) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeExpires, other.timeExpires) + && 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.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.runtime == null ? 43 : this.runtime.hashCode()); + result = + (result * PRIME) + + (this.expirationDuration == null + ? 43 + : this.expirationDuration.hashCode()); + result = (result * PRIME) + (this.sizeBytes == null ? 43 : this.sizeBytes.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.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.timeExpires == null ? 43 : this.timeExpires.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSource.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSource.java new file mode 100644 index 00000000000..3ad41bb6528 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSource.java @@ -0,0 +1,110 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Base source configuration used to initialize a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "sourceType", + defaultImpl = SandboxSource.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SandboxSnapshotSource.class, + name = "SNAPSHOT") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SandboxSource extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected SandboxSource() { + super(); + } + + @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("SandboxSource("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxSource)) { + return false; + } + + SandboxSource other = (SandboxSource) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** The source type used to initialize the sandbox. */ + public enum SourceType implements com.oracle.bmc.http.internal.BmcEnum { + Snapshot("SNAPSHOT"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SourceType v : SourceType.values()) { + map.put(v.getValue(), v); + } + } + + SourceType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SourceType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SourceType: " + key); + } + }; +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSummary.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSummary.java new file mode 100644 index 00000000000..c5f1ebd57d5 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SandboxSummary.java @@ -0,0 +1,770 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Sandbox resource representation.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SandboxSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SandboxSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "displayName", + "projectId", + "lifecycleState", + "warmpoolName", + "runtime", + "publishedPortAuthMode", + "publishedPorts", + "expiresInMinutes", + "expirationDuration", + "shape", + "timeCreated", + "timeUpdated", + "timeExpires", + "timeStopped" + }) + public SandboxSummary( + String id, + String displayName, + String projectId, + Sandbox.LifecycleState lifecycleState, + String warmpoolName, + String runtime, + Sandbox.PublishedPortAuthMode publishedPortAuthMode, + java.util.List publishedPorts, + Integer expiresInMinutes, + String expirationDuration, + Shape shape, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeExpires, + java.util.Date timeStopped) { + super(); + this.id = id; + this.displayName = displayName; + this.projectId = projectId; + this.lifecycleState = lifecycleState; + this.warmpoolName = warmpoolName; + this.runtime = runtime; + this.publishedPortAuthMode = publishedPortAuthMode; + this.publishedPorts = publishedPorts; + this.expiresInMinutes = expiresInMinutes; + this.expirationDuration = expirationDuration; + this.shape = shape; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeExpires = timeExpires; + this.timeStopped = timeStopped; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Sandbox identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * Sandbox identifier. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Display name for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * Display name for sandbox + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** GenerativeAiProject ID that sandbox belongs to */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private String projectId; + + /** + * GenerativeAiProject ID that sandbox belongs to + * + * @param projectId the value to set + * @return this builder + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + this.__explicitlySet__.add("projectId"); + return this; + } + /** + * The current state of the Sandbox. Allowed values are: - RUNNING - CREATING - UPDATING - + * DELETED - FAILED - SUSPENDING - SUSPENDED - RESUMING - STOPPING - STOPPED + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private Sandbox.LifecycleState lifecycleState; + + /** + * The current state of the Sandbox. Allowed values are: - RUNNING - CREATING - UPDATING - + * DELETED - FAILED - SUSPENDING - SUSPENDED - RESUMING - STOPPING - STOPPED + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(Sandbox.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + */ + @com.fasterxml.jackson.annotation.JsonProperty("warmpoolName") + private String warmpoolName; + + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + * + * @param warmpoolName the value to set + * @return this builder + */ + public Builder warmpoolName(String warmpoolName) { + this.warmpoolName = warmpoolName; + this.__explicitlySet__.add("warmpoolName"); + return this; + } + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle + * Cloud Infrastructure Registry image reference. + */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private String runtime; + + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle + * Cloud Infrastructure Registry image reference. + * + * @param runtime the value to set + * @return this builder + */ + public Builder runtime(String runtime) { + this.runtime = runtime; + this.__explicitlySet__.add("runtime"); + return this; + } + /** Persisted published-port authorization mode. Absent for legacy sandboxes. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPortAuthMode") + private Sandbox.PublishedPortAuthMode publishedPortAuthMode; + + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. + * + * @param publishedPortAuthMode the value to set + * @return this builder + */ + public Builder publishedPortAuthMode(Sandbox.PublishedPortAuthMode publishedPortAuthMode) { + this.publishedPortAuthMode = publishedPortAuthMode; + this.__explicitlySet__.add("publishedPortAuthMode"); + return this; + } + /** Published ports for the sandbox proxy endpoint. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPorts") + private java.util.List publishedPorts; + + /** + * Published ports for the sandbox proxy endpoint. + * + * @param publishedPorts the value to set + * @return this builder + */ + public Builder publishedPorts(java.util.List publishedPorts) { + this.publishedPorts = publishedPorts; + this.__explicitlySet__.add("publishedPorts"); + return this; + } + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expiresInMinutes") + private Integer expiresInMinutes; + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to + * disable automatic expiration. + * + * @param expiresInMinutes the value to set + * @return this builder + */ + public Builder expiresInMinutes(Integer expiresInMinutes) { + this.expiresInMinutes = expiresInMinutes; + this.__explicitlySet__.add("expiresInMinutes"); + return this; + } + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private String expirationDuration; + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + * + * @param expirationDuration the value to set + * @return this builder + */ + public Builder expirationDuration(String expirationDuration) { + this.expirationDuration = expirationDuration; + this.__explicitlySet__.add("expirationDuration"); + return this; + } + /** shape for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private Shape shape; + + /** + * shape for sandbox + * + * @param shape the value to set + * @return this builder + */ + public Builder shape(Shape shape) { + this.shape = shape; + this.__explicitlySet__.add("shape"); + return this; + } + /** The date and time the sandbox was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the sandbox was created, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox was updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the sandbox was updated, in RFC 3339 format. + * + * @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; + } + /** The date and time the sandbox expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private java.util.Date timeExpires; + + /** + * The date and time the sandbox expires, in RFC 3339 format. + * + * @param timeExpires the value to set + * @return this builder + */ + public Builder timeExpires(java.util.Date timeExpires) { + this.timeExpires = timeExpires; + this.__explicitlySet__.add("timeExpires"); + return this; + } + /** The date and time the sandbox was stopped or expired, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStopped") + private java.util.Date timeStopped; + + /** + * The date and time the sandbox was stopped or expired, in RFC 3339 format. + * + * @param timeStopped the value to set + * @return this builder + */ + public Builder timeStopped(java.util.Date timeStopped) { + this.timeStopped = timeStopped; + this.__explicitlySet__.add("timeStopped"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SandboxSummary build() { + SandboxSummary model = + new SandboxSummary( + this.id, + this.displayName, + this.projectId, + this.lifecycleState, + this.warmpoolName, + this.runtime, + this.publishedPortAuthMode, + this.publishedPorts, + this.expiresInMinutes, + this.expirationDuration, + this.shape, + this.timeCreated, + this.timeUpdated, + this.timeExpires, + this.timeStopped); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SandboxSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("projectId")) { + this.projectId(model.getProjectId()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("warmpoolName")) { + this.warmpoolName(model.getWarmpoolName()); + } + if (model.wasPropertyExplicitlySet("runtime")) { + this.runtime(model.getRuntime()); + } + if (model.wasPropertyExplicitlySet("publishedPortAuthMode")) { + this.publishedPortAuthMode(model.getPublishedPortAuthMode()); + } + if (model.wasPropertyExplicitlySet("publishedPorts")) { + this.publishedPorts(model.getPublishedPorts()); + } + if (model.wasPropertyExplicitlySet("expiresInMinutes")) { + this.expiresInMinutes(model.getExpiresInMinutes()); + } + if (model.wasPropertyExplicitlySet("expirationDuration")) { + this.expirationDuration(model.getExpirationDuration()); + } + if (model.wasPropertyExplicitlySet("shape")) { + this.shape(model.getShape()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeExpires")) { + this.timeExpires(model.getTimeExpires()); + } + if (model.wasPropertyExplicitlySet("timeStopped")) { + this.timeStopped(model.getTimeStopped()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Sandbox identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * Sandbox identifier. + * + * @return the value + */ + public String getId() { + return id; + } + + /** Display name for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * Display name for sandbox + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** GenerativeAiProject ID that sandbox belongs to */ + @com.fasterxml.jackson.annotation.JsonProperty("projectId") + private final String projectId; + + /** + * GenerativeAiProject ID that sandbox belongs to + * + * @return the value + */ + public String getProjectId() { + return projectId; + } + + /** + * The current state of the Sandbox. Allowed values are: - RUNNING - CREATING - UPDATING - + * DELETED - FAILED - SUSPENDING - SUSPENDED - RESUMING - STOPPING - STOPPED + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final Sandbox.LifecycleState lifecycleState; + + /** + * The current state of the Sandbox. Allowed values are: - RUNNING - CREATING - UPDATING - + * DELETED - FAILED - SUSPENDING - SUSPENDED - RESUMING - STOPPING - STOPPED + * + * @return the value + */ + public Sandbox.LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + */ + @com.fasterxml.jackson.annotation.JsonProperty("warmpoolName") + private final String warmpoolName; + + /** + * Name of the source warm pool, when selected explicitly or automatically at creation. The + * persisted association is retained on retries. + * + * @return the value + */ + public String getWarmpoolName() { + return warmpoolName; + } + + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle Cloud + * Infrastructure Registry image reference. + */ + @com.fasterxml.jackson.annotation.JsonProperty("runtime") + private final String runtime; + + /** + * The sandbox runtime type. For customer-provided containers, use a same-region Oracle Cloud + * Infrastructure Registry image reference. + * + * @return the value + */ + public String getRuntime() { + return runtime; + } + + /** Persisted published-port authorization mode. Absent for legacy sandboxes. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPortAuthMode") + private final Sandbox.PublishedPortAuthMode publishedPortAuthMode; + + /** + * Persisted published-port authorization mode. Absent for legacy sandboxes. + * + * @return the value + */ + public Sandbox.PublishedPortAuthMode getPublishedPortAuthMode() { + return publishedPortAuthMode; + } + + /** Published ports for the sandbox proxy endpoint. */ + @com.fasterxml.jackson.annotation.JsonProperty("publishedPorts") + private final java.util.List publishedPorts; + + /** + * Published ports for the sandbox proxy endpoint. + * + * @return the value + */ + public java.util.List getPublishedPorts() { + return publishedPorts; + } + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to disable + * automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expiresInMinutes") + private final Integer expiresInMinutes; + + /** + * Number of minutes from creation until automatic sandbox expiration. Use {@code -1} to disable + * automatic expiration. + * + * @return the value + */ + public Integer getExpiresInMinutes() { + return expiresInMinutes; + } + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + */ + @com.fasterxml.jackson.annotation.JsonProperty("expirationDuration") + private final String expirationDuration; + + /** + * Deprecated. Use {@code expiresInMinutes} instead. Existing clients may pass {@code -1} to + * disable automatic expiration. + * + * @return the value + */ + public String getExpirationDuration() { + return expirationDuration; + } + + /** shape for sandbox */ + public enum Shape implements com.oracle.bmc.http.internal.BmcEnum { + Small("SMALL"), + Medium("MEDIUM"), + Large("LARGE"), + + /** + * 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(Shape.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Shape v : Shape.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + Shape(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Shape create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'Shape', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** shape for sandbox */ + @com.fasterxml.jackson.annotation.JsonProperty("shape") + private final Shape shape; + + /** + * shape for sandbox + * + * @return the value + */ + public Shape getShape() { + return shape; + } + + /** The date and time the sandbox was created, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the sandbox was created, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** The date and time the sandbox was updated, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the sandbox was updated, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The date and time the sandbox expires, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExpires") + private final java.util.Date timeExpires; + + /** + * The date and time the sandbox expires, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeExpires() { + return timeExpires; + } + + /** The date and time the sandbox was stopped or expired, in RFC 3339 format. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStopped") + private final java.util.Date timeStopped; + + /** + * The date and time the sandbox was stopped or expired, in RFC 3339 format. + * + * @return the value + */ + public java.util.Date getTimeStopped() { + return timeStopped; + } + + @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("SandboxSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", projectId=").append(String.valueOf(this.projectId)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", warmpoolName=").append(String.valueOf(this.warmpoolName)); + sb.append(", runtime=").append(String.valueOf(this.runtime)); + sb.append(", publishedPortAuthMode=").append(String.valueOf(this.publishedPortAuthMode)); + sb.append(", publishedPorts=").append(String.valueOf(this.publishedPorts)); + sb.append(", expiresInMinutes=").append(String.valueOf(this.expiresInMinutes)); + sb.append(", expirationDuration=").append(String.valueOf(this.expirationDuration)); + sb.append(", shape=").append(String.valueOf(this.shape)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeExpires=").append(String.valueOf(this.timeExpires)); + sb.append(", timeStopped=").append(String.valueOf(this.timeStopped)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SandboxSummary)) { + return false; + } + + SandboxSummary other = (SandboxSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.warmpoolName, other.warmpoolName) + && java.util.Objects.equals(this.runtime, other.runtime) + && java.util.Objects.equals(this.publishedPortAuthMode, other.publishedPortAuthMode) + && java.util.Objects.equals(this.publishedPorts, other.publishedPorts) + && java.util.Objects.equals(this.expiresInMinutes, other.expiresInMinutes) + && java.util.Objects.equals(this.expirationDuration, other.expirationDuration) + && java.util.Objects.equals(this.shape, other.shape) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeExpires, other.timeExpires) + && java.util.Objects.equals(this.timeStopped, other.timeStopped) + && 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.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.warmpoolName == null ? 43 : this.warmpoolName.hashCode()); + result = (result * PRIME) + (this.runtime == null ? 43 : this.runtime.hashCode()); + result = + (result * PRIME) + + (this.publishedPortAuthMode == null + ? 43 + : this.publishedPortAuthMode.hashCode()); + result = + (result * PRIME) + + (this.publishedPorts == null ? 43 : this.publishedPorts.hashCode()); + result = + (result * PRIME) + + (this.expiresInMinutes == null ? 43 : this.expiresInMinutes.hashCode()); + result = + (result * PRIME) + + (this.expirationDuration == null + ? 43 + : this.expirationDuration.hashCode()); + result = (result * PRIME) + (this.shape == null ? 43 : this.shape.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.timeExpires == null ? 43 : this.timeExpires.hashCode()); + result = (result * PRIME) + (this.timeStopped == null ? 43 : this.timeStopped.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SortOrder.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SortOrder.java new file mode 100644 index 00000000000..c8a04e5bcac --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SortOrder.java @@ -0,0 +1,43 @@ +/** + * 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.generativeaisandbox.model; + +/** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). The {@code + * displayName} sort order is case sensitive. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public enum SortOrder implements com.oracle.bmc.http.internal.BmcEnum { + Asc("ASC"), + Desc("DESC"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortOrder v : SortOrder.values()) { + map.put(v.getValue(), v); + } + } + + SortOrder(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortOrder create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortOrder: " + key); + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/StopSandboxDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/StopSandboxDetails.java new file mode 100644 index 00000000000..ee3007f79ec --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/StopSandboxDetails.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.generativeaisandbox.model; + +/** + * Request body used to stop a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = StopSandboxDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class StopSandboxDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"isForce"}) + public StopSandboxDetails(Boolean isForce) { + super(); + this.isForce = isForce; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Whether to send SIGKILL immediately instead of attempting graceful shutdown. */ + @com.fasterxml.jackson.annotation.JsonProperty("isForce") + private Boolean isForce; + + /** + * Whether to send SIGKILL immediately instead of attempting graceful shutdown. + * + * @param isForce the value to set + * @return this builder + */ + public Builder isForce(Boolean isForce) { + this.isForce = isForce; + this.__explicitlySet__.add("isForce"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public StopSandboxDetails build() { + StopSandboxDetails model = new StopSandboxDetails(this.isForce); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(StopSandboxDetails model) { + if (model.wasPropertyExplicitlySet("isForce")) { + this.isForce(model.getIsForce()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Whether to send SIGKILL immediately instead of attempting graceful shutdown. */ + @com.fasterxml.jackson.annotation.JsonProperty("isForce") + private final Boolean isForce; + + /** + * Whether to send SIGKILL immediately instead of attempting graceful shutdown. + * + * @return the value + */ + public Boolean getIsForce() { + return isForce; + } + + @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("StopSandboxDetails("); + sb.append("super=").append(super.toString()); + sb.append("isForce=").append(String.valueOf(this.isForce)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof StopSandboxDetails)) { + return false; + } + + StopSandboxDetails other = (StopSandboxDetails) o; + return java.util.Objects.equals(this.isForce, other.isForce) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.isForce == null ? 43 : this.isForce.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SuspendSandboxDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SuspendSandboxDetails.java new file mode 100644 index 00000000000..aefe62bd13f --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/SuspendSandboxDetails.java @@ -0,0 +1,99 @@ +/** + * 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.generativeaisandbox.model; + +/** + * Empty request body used to suspend a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SuspendSandboxDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SuspendSandboxDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + public SuspendSandboxDetails() { + super(); + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SuspendSandboxDetails build() { + SuspendSandboxDetails model = new SuspendSandboxDetails(); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SuspendSandboxDetails model) { + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @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("SuspendSandboxDetails("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SuspendSandboxDetails)) { + return false; + } + + SuspendSandboxDetails other = (SuspendSandboxDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/UpdateSandboxDetails.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/UpdateSandboxDetails.java new file mode 100644 index 00000000000..b1b861ae353 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/model/UpdateSandboxDetails.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.generativeaisandbox.model; + +/** + * Request body used to update a sandbox.
+ * 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: 1.0") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSandboxDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSandboxDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"displayName"}) + public UpdateSandboxDetails(String displayName) { + super(); + this.displayName = displayName; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** User-provided display name for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * User-provided display name for the sandbox. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSandboxDetails build() { + UpdateSandboxDetails model = new UpdateSandboxDetails(this.displayName); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSandboxDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** User-provided display name for the sandbox. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * User-provided display name for the sandbox. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + @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("UpdateSandboxDetails("); + sb.append("super=").append(super.toString()); + sb.append("displayName=").append(String.valueOf(this.displayName)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSandboxDetails)) { + return false; + } + + UpdateSandboxDetails other = (UpdateSandboxDetails) o; + return java.util.Objects.equals(this.displayName, other.displayName) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CancelSandboxCommandRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CancelSandboxCommandRequest.java new file mode 100644 index 00000000000..df93e078ac9 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CancelSandboxCommandRequest.java @@ -0,0 +1,360 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use CancelSandboxCommandRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class CancelSandboxCommandRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Sandbox command identifier. */ + private String commandId; + + /** Sandbox command identifier. */ + public String getCommandId() { + return commandId; + } + /** Request payload for canceling a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails + cancelSandboxCommandDetails; + + /** Request payload for canceling a sandbox command. */ + public com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails + getCancelSandboxCommandDetails() { + return cancelSandboxCommandDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails getBody$() { + return cancelSandboxCommandDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CancelSandboxCommandRequest, + com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Sandbox command identifier. */ + private String commandId = null; + + /** + * Sandbox command identifier. + * + * @param commandId the value to set + * @return this builder instance + */ + public Builder commandId(String commandId) { + this.commandId = commandId; + return this; + } + + /** Request payload for canceling a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails + cancelSandboxCommandDetails = null; + + /** + * Request payload for canceling a sandbox command. + * + * @param cancelSandboxCommandDetails the value to set + * @return this builder instance + */ + public Builder cancelSandboxCommandDetails( + com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails + cancelSandboxCommandDetails) { + this.cancelSandboxCommandDetails = cancelSandboxCommandDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(CancelSandboxCommandRequest o) { + sandboxId(o.getSandboxId()); + commandId(o.getCommandId()); + cancelSandboxCommandDetails(o.getCancelSandboxCommandDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CancelSandboxCommandRequest 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 CancelSandboxCommandRequest + */ + public CancelSandboxCommandRequest build() { + CancelSandboxCommandRequest 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.generativeaisandbox.model.CancelSandboxCommandDetails body) { + cancelSandboxCommandDetails(body); + return this; + } + + /** + * Build the instance of CancelSandboxCommandRequest 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 CancelSandboxCommandRequest + */ + public CancelSandboxCommandRequest buildWithoutInvocationCallback() { + CancelSandboxCommandRequest request = new CancelSandboxCommandRequest(); + request.sandboxId = sandboxId; + request.commandId = commandId; + request.cancelSandboxCommandDetails = cancelSandboxCommandDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new CancelSandboxCommandRequest(sandboxId, commandId, cancelSandboxCommandDetails, + // opcRequestId, opcRetryToken); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .commandId(commandId) + .cancelSandboxCommandDetails(cancelSandboxCommandDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",commandId=").append(String.valueOf(this.commandId)); + sb.append(",cancelSandboxCommandDetails=") + .append(String.valueOf(this.cancelSandboxCommandDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CancelSandboxCommandRequest)) { + return false; + } + + CancelSandboxCommandRequest other = (CancelSandboxCommandRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals( + this.cancelSandboxCommandDetails, other.cancelSandboxCommandDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = + (result * PRIME) + + (this.cancelSandboxCommandDetails == null + ? 43 + : this.cancelSandboxCommandDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CreateSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CreateSandboxRequest.java new file mode 100644 index 00000000000..cca02fef109 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CreateSandboxRequest.java @@ -0,0 +1,318 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use CreateSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class CreateSandboxRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails> { + + /** Required project identifier used to scope sandbox creation. */ + private String projectId; + + /** Required project identifier used to scope sandbox creation. */ + public String getProjectId() { + return projectId; + } + /** Request payload for sandbox creation. */ + private com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails createSandboxDetails; + + /** Request payload for sandbox creation. */ + public com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails getCreateSandboxDetails() { + return createSandboxDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails getBody$() { + return createSandboxDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateSandboxRequest, + com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Required project identifier used to scope sandbox creation. */ + private String projectId = null; + + /** + * Required project identifier used to scope sandbox creation. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** Request payload for sandbox creation. */ + private com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails createSandboxDetails = + null; + + /** + * Request payload for sandbox creation. + * + * @param createSandboxDetails the value to set + * @return this builder instance + */ + public Builder createSandboxDetails( + com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails + createSandboxDetails) { + this.createSandboxDetails = createSandboxDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(CreateSandboxRequest o) { + projectId(o.getProjectId()); + createSandboxDetails(o.getCreateSandboxDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateSandboxRequest 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 CreateSandboxRequest + */ + public CreateSandboxRequest build() { + CreateSandboxRequest 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.generativeaisandbox.model.CreateSandboxDetails body) { + createSandboxDetails(body); + return this; + } + + /** + * Build the instance of CreateSandboxRequest 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 CreateSandboxRequest + */ + public CreateSandboxRequest buildWithoutInvocationCallback() { + CreateSandboxRequest request = new CreateSandboxRequest(); + request.projectId = projectId; + request.createSandboxDetails = createSandboxDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new CreateSandboxRequest(projectId, createSandboxDetails, opcRequestId, + // opcRetryToken); + } + } + + /** + * 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() + .projectId(projectId) + .createSandboxDetails(createSandboxDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",createSandboxDetails=").append(String.valueOf(this.createSandboxDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxRequest)) { + return false; + } + + CreateSandboxRequest other = (CreateSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.createSandboxDetails, other.createSandboxDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.projectId == null ? 43 : this.projectId.hashCode()); + result = + (result * PRIME) + + (this.createSandboxDetails == null + ? 43 + : this.createSandboxDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CreateSandboxSnapshotRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CreateSandboxSnapshotRequest.java new file mode 100644 index 00000000000..5addc677381 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/CreateSandboxSnapshotRequest.java @@ -0,0 +1,297 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use + * CreateSandboxSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class CreateSandboxSnapshotRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails> { + + /** Request payload for sandbox snapshot creation. */ + private com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails + createSandboxSnapshotDetails; + + /** Request payload for sandbox snapshot creation. */ + public com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails + getCreateSandboxSnapshotDetails() { + return createSandboxSnapshotDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails getBody$() { + return createSandboxSnapshotDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateSandboxSnapshotRequest, + com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Request payload for sandbox snapshot creation. */ + private com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails + createSandboxSnapshotDetails = null; + + /** + * Request payload for sandbox snapshot creation. + * + * @param createSandboxSnapshotDetails the value to set + * @return this builder instance + */ + public Builder createSandboxSnapshotDetails( + com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails + createSandboxSnapshotDetails) { + this.createSandboxSnapshotDetails = createSandboxSnapshotDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(CreateSandboxSnapshotRequest o) { + createSandboxSnapshotDetails(o.getCreateSandboxSnapshotDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateSandboxSnapshotRequest 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 CreateSandboxSnapshotRequest + */ + public CreateSandboxSnapshotRequest build() { + CreateSandboxSnapshotRequest 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.generativeaisandbox.model.CreateSandboxSnapshotDetails body) { + createSandboxSnapshotDetails(body); + return this; + } + + /** + * Build the instance of CreateSandboxSnapshotRequest 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 CreateSandboxSnapshotRequest + */ + public CreateSandboxSnapshotRequest buildWithoutInvocationCallback() { + CreateSandboxSnapshotRequest request = new CreateSandboxSnapshotRequest(); + request.createSandboxSnapshotDetails = createSandboxSnapshotDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new CreateSandboxSnapshotRequest(createSandboxSnapshotDetails, opcRequestId, + // opcRetryToken); + } + } + + /** + * 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() + .createSandboxSnapshotDetails(createSandboxSnapshotDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",createSandboxSnapshotDetails=") + .append(String.valueOf(this.createSandboxSnapshotDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxSnapshotRequest)) { + return false; + } + + CreateSandboxSnapshotRequest other = (CreateSandboxSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals( + this.createSandboxSnapshotDetails, other.createSandboxSnapshotDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.createSandboxSnapshotDetails == null + ? 43 + : this.createSandboxSnapshotDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/DeleteSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/DeleteSandboxRequest.java new file mode 100644 index 00000000000..c5559466bb2 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/DeleteSandboxRequest.java @@ -0,0 +1,258 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use DeleteSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class DeleteSandboxRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 provided 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 provided matches the resource's + * current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + DeleteSandboxRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 provided 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 provided 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(DeleteSandboxRequest o) { + sandboxId(o.getSandboxId()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteSandboxRequest 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 DeleteSandboxRequest + */ + public DeleteSandboxRequest build() { + DeleteSandboxRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteSandboxRequest 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 DeleteSandboxRequest + */ + public DeleteSandboxRequest buildWithoutInvocationCallback() { + DeleteSandboxRequest request = new DeleteSandboxRequest(); + request.sandboxId = sandboxId; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new DeleteSandboxRequest(sandboxId, 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().sandboxId(sandboxId).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(",sandboxId=").append(String.valueOf(this.sandboxId)); + 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 DeleteSandboxRequest)) { + return false; + } + + DeleteSandboxRequest other = (DeleteSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && 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.sandboxId == null ? 43 : this.sandboxId.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/DeleteSandboxSnapshotRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/DeleteSandboxSnapshotRequest.java new file mode 100644 index 00000000000..bd084160336 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/DeleteSandboxSnapshotRequest.java @@ -0,0 +1,250 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use + * DeleteSandboxSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class DeleteSandboxSnapshotRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** Sandbox snapshot identifier. */ + private String snapshotId; + + /** Sandbox snapshot identifier. */ + public String getSnapshotId() { + return snapshotId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 provided 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 provided matches the resource's + * current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + DeleteSandboxSnapshotRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Sandbox snapshot identifier. */ + private String snapshotId = null; + + /** + * Sandbox snapshot identifier. + * + * @param snapshotId the value to set + * @return this builder instance + */ + public Builder snapshotId(String snapshotId) { + this.snapshotId = snapshotId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 provided 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 provided 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(DeleteSandboxSnapshotRequest o) { + snapshotId(o.getSnapshotId()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteSandboxSnapshotRequest 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 DeleteSandboxSnapshotRequest + */ + public DeleteSandboxSnapshotRequest build() { + DeleteSandboxSnapshotRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteSandboxSnapshotRequest 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 DeleteSandboxSnapshotRequest + */ + public DeleteSandboxSnapshotRequest buildWithoutInvocationCallback() { + DeleteSandboxSnapshotRequest request = new DeleteSandboxSnapshotRequest(); + request.snapshotId = snapshotId; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new DeleteSandboxSnapshotRequest(snapshotId, 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().snapshotId(snapshotId).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(",snapshotId=").append(String.valueOf(this.snapshotId)); + 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 DeleteSandboxSnapshotRequest)) { + return false; + } + + DeleteSandboxSnapshotRequest other = (DeleteSandboxSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.snapshotId, other.snapshotId) + && 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.snapshotId == null ? 43 : this.snapshotId.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ExtendSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ExtendSandboxRequest.java new file mode 100644 index 00000000000..d79b8443166 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ExtendSandboxRequest.java @@ -0,0 +1,373 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use ExtendSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ExtendSandboxRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for extending a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails extendSandboxDetails; + + /** Request payload for extending a sandbox. */ + public com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails getExtendSandboxDetails() { + return extendSandboxDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 provided 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 provided 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.generativeaisandbox.model.ExtendSandboxDetails getBody$() { + return extendSandboxDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ExtendSandboxRequest, + com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for extending a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails extendSandboxDetails = + null; + + /** + * Request payload for extending a sandbox. + * + * @param extendSandboxDetails the value to set + * @return this builder instance + */ + public Builder extendSandboxDetails( + com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails + extendSandboxDetails) { + this.extendSandboxDetails = extendSandboxDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @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 provided 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 provided 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(ExtendSandboxRequest o) { + sandboxId(o.getSandboxId()); + extendSandboxDetails(o.getExtendSandboxDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ExtendSandboxRequest 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 ExtendSandboxRequest + */ + public ExtendSandboxRequest build() { + ExtendSandboxRequest 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.generativeaisandbox.model.ExtendSandboxDetails body) { + extendSandboxDetails(body); + return this; + } + + /** + * Build the instance of ExtendSandboxRequest 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 ExtendSandboxRequest + */ + public ExtendSandboxRequest buildWithoutInvocationCallback() { + ExtendSandboxRequest request = new ExtendSandboxRequest(); + request.sandboxId = sandboxId; + request.extendSandboxDetails = extendSandboxDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new ExtendSandboxRequest(sandboxId, extendSandboxDetails, 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() + .sandboxId(sandboxId) + .extendSandboxDetails(extendSandboxDetails) + .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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",extendSandboxDetails=").append(String.valueOf(this.extendSandboxDetails)); + 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 ExtendSandboxRequest)) { + return false; + } + + ExtendSandboxRequest other = (ExtendSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.extendSandboxDetails, other.extendSandboxDetails) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.extendSandboxDetails == null + ? 43 + : this.extendSandboxDetails.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxCommandOutputRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxCommandOutputRequest.java new file mode 100644 index 00000000000..fae750094b7 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxCommandOutputRequest.java @@ -0,0 +1,272 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use + * GetSandboxCommandOutputRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxCommandOutputRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Sandbox command identifier. */ + private String commandId; + + /** Sandbox command identifier. */ + public String getCommandId() { + return commandId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** The first command event sequence number to include. */ + private Long fromSeq; + + /** The first command event sequence number to include. */ + public Long getFromSeq() { + return fromSeq; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetSandboxCommandOutputRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Sandbox command identifier. */ + private String commandId = null; + + /** + * Sandbox command identifier. + * + * @param commandId the value to set + * @return this builder instance + */ + public Builder commandId(String commandId) { + this.commandId = commandId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The first command event sequence number to include. */ + private Long fromSeq = null; + + /** + * The first command event sequence number to include. + * + * @param fromSeq the value to set + * @return this builder instance + */ + public Builder fromSeq(Long fromSeq) { + this.fromSeq = fromSeq; + 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(GetSandboxCommandOutputRequest o) { + sandboxId(o.getSandboxId()); + commandId(o.getCommandId()); + opcRequestId(o.getOpcRequestId()); + fromSeq(o.getFromSeq()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetSandboxCommandOutputRequest 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 GetSandboxCommandOutputRequest + */ + public GetSandboxCommandOutputRequest build() { + GetSandboxCommandOutputRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetSandboxCommandOutputRequest 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 GetSandboxCommandOutputRequest + */ + public GetSandboxCommandOutputRequest buildWithoutInvocationCallback() { + GetSandboxCommandOutputRequest request = new GetSandboxCommandOutputRequest(); + request.sandboxId = sandboxId; + request.commandId = commandId; + request.opcRequestId = opcRequestId; + request.fromSeq = fromSeq; + return request; + // new GetSandboxCommandOutputRequest(sandboxId, commandId, opcRequestId, fromSeq); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .commandId(commandId) + .opcRequestId(opcRequestId) + .fromSeq(fromSeq); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",commandId=").append(String.valueOf(this.commandId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",fromSeq=").append(String.valueOf(this.fromSeq)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSandboxCommandOutputRequest)) { + return false; + } + + GetSandboxCommandOutputRequest other = (GetSandboxCommandOutputRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.fromSeq, other.fromSeq); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.fromSeq == null ? 43 : this.fromSeq.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxCommandRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxCommandRequest.java new file mode 100644 index 00000000000..eca05da4b71 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxCommandRequest.java @@ -0,0 +1,240 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use GetSandboxCommandRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxCommandRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Sandbox command identifier. */ + private String commandId; + + /** Sandbox command identifier. */ + public String getCommandId() { + return commandId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetSandboxCommandRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Sandbox command identifier. */ + private String commandId = null; + + /** + * Sandbox command identifier. + * + * @param commandId the value to set + * @return this builder instance + */ + public Builder commandId(String commandId) { + this.commandId = commandId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(GetSandboxCommandRequest o) { + sandboxId(o.getSandboxId()); + commandId(o.getCommandId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetSandboxCommandRequest 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 GetSandboxCommandRequest + */ + public GetSandboxCommandRequest build() { + GetSandboxCommandRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetSandboxCommandRequest 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 GetSandboxCommandRequest + */ + public GetSandboxCommandRequest buildWithoutInvocationCallback() { + GetSandboxCommandRequest request = new GetSandboxCommandRequest(); + request.sandboxId = sandboxId; + request.commandId = commandId; + request.opcRequestId = opcRequestId; + return request; + // new GetSandboxCommandRequest(sandboxId, commandId, 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().sandboxId(sandboxId).commandId(commandId).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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",commandId=").append(String.valueOf(this.commandId)); + 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 GetSandboxCommandRequest)) { + return false; + } + + GetSandboxCommandRequest other = (GetSandboxCommandRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxRequest.java new file mode 100644 index 00000000000..2ca0b7d4e18 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxRequest.java @@ -0,0 +1,214 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use GetSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetSandboxRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(GetSandboxRequest o) { + sandboxId(o.getSandboxId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetSandboxRequest 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 GetSandboxRequest + */ + public GetSandboxRequest build() { + GetSandboxRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetSandboxRequest 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 GetSandboxRequest + */ + public GetSandboxRequest buildWithoutInvocationCallback() { + GetSandboxRequest request = new GetSandboxRequest(); + request.sandboxId = sandboxId; + request.opcRequestId = opcRequestId; + return request; + // new GetSandboxRequest(sandboxId, 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().sandboxId(sandboxId).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(",sandboxId=").append(String.valueOf(this.sandboxId)); + 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 GetSandboxRequest)) { + return false; + } + + GetSandboxRequest other = (GetSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxSnapshotRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxSnapshotRequest.java new file mode 100644 index 00000000000..883397d76ca --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/GetSandboxSnapshotRequest.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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use GetSandboxSnapshotRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxSnapshotRequest extends com.oracle.bmc.requests.BmcRequest { + + /** Sandbox snapshot identifier. */ + private String snapshotId; + + /** Sandbox snapshot identifier. */ + public String getSnapshotId() { + return snapshotId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetSandboxSnapshotRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Sandbox snapshot identifier. */ + private String snapshotId = null; + + /** + * Sandbox snapshot identifier. + * + * @param snapshotId the value to set + * @return this builder instance + */ + public Builder snapshotId(String snapshotId) { + this.snapshotId = snapshotId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(GetSandboxSnapshotRequest o) { + snapshotId(o.getSnapshotId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetSandboxSnapshotRequest 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 GetSandboxSnapshotRequest + */ + public GetSandboxSnapshotRequest build() { + GetSandboxSnapshotRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetSandboxSnapshotRequest 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 GetSandboxSnapshotRequest + */ + public GetSandboxSnapshotRequest buildWithoutInvocationCallback() { + GetSandboxSnapshotRequest request = new GetSandboxSnapshotRequest(); + request.snapshotId = snapshotId; + request.opcRequestId = opcRequestId; + return request; + // new GetSandboxSnapshotRequest(snapshotId, 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().snapshotId(snapshotId).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(",snapshotId=").append(String.valueOf(this.snapshotId)); + 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 GetSandboxSnapshotRequest)) { + return false; + } + + GetSandboxSnapshotRequest other = (GetSandboxSnapshotRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.snapshotId, other.snapshotId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.snapshotId == null ? 43 : this.snapshotId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxCommandRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxCommandRequest.java new file mode 100644 index 00000000000..6b42af030b3 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxCommandRequest.java @@ -0,0 +1,400 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use ListSandboxCommandRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ListSandboxCommandRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** Sandbox command identifier used to filter listed command resources. */ + private String commandId; + + /** Sandbox command identifier used to filter listed command resources. */ + public String getCommandId() { + return commandId; + } + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + private SortBy sortBy; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeCreated("timeCreated"), + TimeStarted("timeStarted"), + TimeFinished("timeFinished"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + public SortBy getSortBy() { + return sortBy; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.generativeaisandbox.model.SortOrder getSortOrder() { + return sortOrder; + } + /** The maximum number of items to return. */ + private Integer limit; + + /** The maximum number of items to return. */ + public Integer getLimit() { + return limit; + } + /** A token representing the position at which to start retrieving results. */ + private String page; + + /** A token representing the position at which to start retrieving results. */ + public String getPage() { + return page; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListSandboxCommandRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** Sandbox command identifier used to filter listed command resources. */ + private String commandId = null; + + /** + * Sandbox command identifier used to filter listed command resources. + * + * @param commandId the value to set + * @return this builder instance + */ + public Builder commandId(String commandId) { + this.commandId = commandId; + return this; + } + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** The maximum number of items to return. */ + private Integer limit = null; + + /** + * The maximum number of items to return. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** A token representing the position at which to start retrieving results. */ + private String page = null; + + /** + * A token representing the position at which to start retrieving results. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + 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(ListSandboxCommandRequest o) { + sandboxId(o.getSandboxId()); + opcRequestId(o.getOpcRequestId()); + commandId(o.getCommandId()); + sortBy(o.getSortBy()); + sortOrder(o.getSortOrder()); + limit(o.getLimit()); + page(o.getPage()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListSandboxCommandRequest 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 ListSandboxCommandRequest + */ + public ListSandboxCommandRequest build() { + ListSandboxCommandRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListSandboxCommandRequest 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 ListSandboxCommandRequest + */ + public ListSandboxCommandRequest buildWithoutInvocationCallback() { + ListSandboxCommandRequest request = new ListSandboxCommandRequest(); + request.sandboxId = sandboxId; + request.opcRequestId = opcRequestId; + request.commandId = commandId; + request.sortBy = sortBy; + request.sortOrder = sortOrder; + request.limit = limit; + request.page = page; + return request; + // new ListSandboxCommandRequest(sandboxId, opcRequestId, commandId, sortBy, sortOrder, + // limit, page); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .opcRequestId(opcRequestId) + .commandId(commandId) + .sortBy(sortBy) + .sortOrder(sortOrder) + .limit(limit) + .page(page); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",commandId=").append(String.valueOf(this.commandId)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxCommandRequest)) { + return false; + } + + ListSandboxCommandRequest other = (ListSandboxCommandRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxSnapshotsRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxSnapshotsRequest.java new file mode 100644 index 00000000000..ad5dbb48b96 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxSnapshotsRequest.java @@ -0,0 +1,493 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use ListSandboxSnapshotsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ListSandboxSnapshotsRequest + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** The project identifier used to filter listed sandbox snapshot resources. */ + private String projectId; + + /** The project identifier used to filter listed sandbox snapshot resources. */ + public String getProjectId() { + return projectId; + } + /** Sandbox snapshot display name used to filter listed sandbox snapshot resources. */ + private String displayName; + + /** Sandbox snapshot display name used to filter listed sandbox snapshot resources. */ + public String getDisplayName() { + return displayName; + } + /** + * Sandbox identifier used to filter listed sandbox snapshot resources. Newly generated Sandbox + * IDs use {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); existing + * legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier used to filter listed sandbox snapshot resources. Newly generated Sandbox + * IDs use {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); existing + * legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Sandbox snapshot identifier used to filter listed sandbox snapshot resources. */ + private String snapshotId; + + /** Sandbox snapshot identifier used to filter listed sandbox snapshot resources. */ + public String getSnapshotId() { + return snapshotId; + } + /** A filter to return only sandbox snapshot resources whose state matches the given state. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.LifecycleState lifecycleState; + + /** A filter to return only sandbox snapshot resources whose state matches the given state. */ + public com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.LifecycleState + getLifecycleState() { + return lifecycleState; + } + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + private SortBy sortBy; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeCreated("timeCreated"), + DisplayName("displayName"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + public SortBy getSortBy() { + return sortBy; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.generativeaisandbox.model.SortOrder getSortOrder() { + return sortOrder; + } + /** The maximum number of items to return. */ + private Integer limit; + + /** The maximum number of items to return. */ + public Integer getLimit() { + return limit; + } + /** A token representing the position at which to start retrieving results. */ + private String page; + + /** A token representing the position at which to start retrieving results. */ + public String getPage() { + return page; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListSandboxSnapshotsRequest, 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The project identifier used to filter listed sandbox snapshot resources. */ + private String projectId = null; + + /** + * The project identifier used to filter listed sandbox snapshot resources. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** Sandbox snapshot display name used to filter listed sandbox snapshot resources. */ + private String displayName = null; + + /** + * Sandbox snapshot display name used to filter listed sandbox snapshot resources. + * + * @param displayName the value to set + * @return this builder instance + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** + * Sandbox identifier used to filter listed sandbox snapshot resources. Newly generated + * Sandbox IDs use {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); + * existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier used to filter listed sandbox snapshot resources. Newly generated + * Sandbox IDs use {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); + * existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Sandbox snapshot identifier used to filter listed sandbox snapshot resources. */ + private String snapshotId = null; + + /** + * Sandbox snapshot identifier used to filter listed sandbox snapshot resources. + * + * @param snapshotId the value to set + * @return this builder instance + */ + public Builder snapshotId(String snapshotId) { + this.snapshotId = snapshotId; + return this; + } + + /** + * A filter to return only sandbox snapshot resources whose state matches the given state. + */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.LifecycleState + lifecycleState = null; + + /** + * A filter to return only sandbox snapshot resources whose state matches the given state. + * + * @param lifecycleState the value to set + * @return this builder instance + */ + public Builder lifecycleState( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot.LifecycleState + lifecycleState) { + this.lifecycleState = lifecycleState; + return this; + } + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** The maximum number of items to return. */ + private Integer limit = null; + + /** + * The maximum number of items to return. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** A token representing the position at which to start retrieving results. */ + private String page = null; + + /** + * A token representing the position at which to start retrieving results. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + 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(ListSandboxSnapshotsRequest o) { + opcRequestId(o.getOpcRequestId()); + projectId(o.getProjectId()); + displayName(o.getDisplayName()); + sandboxId(o.getSandboxId()); + snapshotId(o.getSnapshotId()); + lifecycleState(o.getLifecycleState()); + sortBy(o.getSortBy()); + sortOrder(o.getSortOrder()); + limit(o.getLimit()); + page(o.getPage()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListSandboxSnapshotsRequest 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 ListSandboxSnapshotsRequest + */ + public ListSandboxSnapshotsRequest build() { + ListSandboxSnapshotsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListSandboxSnapshotsRequest 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 ListSandboxSnapshotsRequest + */ + public ListSandboxSnapshotsRequest buildWithoutInvocationCallback() { + ListSandboxSnapshotsRequest request = new ListSandboxSnapshotsRequest(); + request.opcRequestId = opcRequestId; + request.projectId = projectId; + request.displayName = displayName; + request.sandboxId = sandboxId; + request.snapshotId = snapshotId; + request.lifecycleState = lifecycleState; + request.sortBy = sortBy; + request.sortOrder = sortOrder; + request.limit = limit; + request.page = page; + return request; + // new ListSandboxSnapshotsRequest(opcRequestId, projectId, displayName, sandboxId, + // snapshotId, lifecycleState, sortBy, sortOrder, limit, page); + } + } + + /** + * 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) + .projectId(projectId) + .displayName(displayName) + .sandboxId(sandboxId) + .snapshotId(snapshotId) + .lifecycleState(lifecycleState) + .sortBy(sortBy) + .sortOrder(sortOrder) + .limit(limit) + .page(page); + } + + /** + * 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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",displayName=").append(String.valueOf(this.displayName)); + sb.append(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",snapshotId=").append(String.valueOf(this.snapshotId)); + sb.append(",lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxSnapshotsRequest)) { + return false; + } + + ListSandboxSnapshotsRequest other = (ListSandboxSnapshotsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.snapshotId, other.snapshotId) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page); + } + + @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.projectId == null ? 43 : this.projectId.hashCode()); + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.snapshotId == null ? 43 : this.snapshotId.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxesRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxesRequest.java new file mode 100644 index 00000000000..bad31069360 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ListSandboxesRequest.java @@ -0,0 +1,500 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use ListSandboxesRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ListSandboxesRequest 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** The project identifier used to filter listed sandbox resources. */ + private String projectId; + + /** The project identifier used to filter listed sandbox resources. */ + public String getProjectId() { + return projectId; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + public String getCompartmentId() { + return compartmentId; + } + /** + * Sandbox identifier used to filter listed sandbox resources. Newly generated Sandbox IDs use + * {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); existing legacy IDs + * remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier used to filter listed sandbox resources. Newly generated Sandbox IDs use + * {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); existing legacy IDs + * remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Sandbox display name used to filter listed sandbox resources. */ + private String displayName; + + /** Sandbox display name used to filter listed sandbox resources. */ + public String getDisplayName() { + return displayName; + } + /** A filter to return only resources whose state matches the given state. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox.LifecycleState lifecycleState; + + /** A filter to return only resources whose state matches the given state. */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox.LifecycleState getLifecycleState() { + return lifecycleState; + } + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + private SortBy sortBy; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeCreated("timeCreated"), + DisplayName("displayName"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + public SortBy getSortBy() { + return sortBy; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.generativeaisandbox.model.SortOrder getSortOrder() { + return sortOrder; + } + /** The maximum number of items to return. */ + private Integer limit; + + /** The maximum number of items to return. */ + public Integer getLimit() { + return limit; + } + /** A token representing the position at which to start retrieving results. */ + private String page; + + /** A token representing the position at which to start retrieving results. */ + public String getPage() { + return page; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListSandboxesRequest, 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The project identifier used to filter listed sandbox resources. */ + private String projectId = null; + + /** + * The project identifier used to filter listed sandbox resources. + * + * @param projectId the value to set + * @return this builder instance + */ + public Builder projectId(String projectId) { + this.projectId = projectId; + return this; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * Sandbox identifier used to filter listed sandbox resources. Newly generated Sandbox IDs + * use {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); existing + * legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier used to filter listed sandbox resources. Newly generated Sandbox IDs + * use {@code sbx-} followed by 16 lowercase base32 characters ({@code a-z2-7}); existing + * legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Sandbox display name used to filter listed sandbox resources. */ + private String displayName = null; + + /** + * Sandbox display name used to filter listed sandbox resources. + * + * @param displayName the value to set + * @return this builder instance + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** A filter to return only resources whose state matches the given state. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox.LifecycleState lifecycleState = + null; + + /** + * A filter to return only resources whose state matches the given state. + * + * @param lifecycleState the value to set + * @return this builder instance + */ + public Builder lifecycleState( + com.oracle.bmc.generativeaisandbox.model.Sandbox.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + return this; + } + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeCreated} is ascending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.generativeaisandbox.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** The maximum number of items to return. */ + private Integer limit = null; + + /** + * The maximum number of items to return. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** A token representing the position at which to start retrieving results. */ + private String page = null; + + /** + * A token representing the position at which to start retrieving results. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + 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(ListSandboxesRequest o) { + opcRequestId(o.getOpcRequestId()); + projectId(o.getProjectId()); + compartmentId(o.getCompartmentId()); + sandboxId(o.getSandboxId()); + displayName(o.getDisplayName()); + lifecycleState(o.getLifecycleState()); + sortBy(o.getSortBy()); + sortOrder(o.getSortOrder()); + limit(o.getLimit()); + page(o.getPage()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListSandboxesRequest 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 ListSandboxesRequest + */ + public ListSandboxesRequest build() { + ListSandboxesRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListSandboxesRequest 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 ListSandboxesRequest + */ + public ListSandboxesRequest buildWithoutInvocationCallback() { + ListSandboxesRequest request = new ListSandboxesRequest(); + request.opcRequestId = opcRequestId; + request.projectId = projectId; + request.compartmentId = compartmentId; + request.sandboxId = sandboxId; + request.displayName = displayName; + request.lifecycleState = lifecycleState; + request.sortBy = sortBy; + request.sortOrder = sortOrder; + request.limit = limit; + request.page = page; + return request; + // new ListSandboxesRequest(opcRequestId, projectId, compartmentId, sandboxId, + // displayName, lifecycleState, sortBy, sortOrder, limit, page); + } + } + + /** + * 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) + .projectId(projectId) + .compartmentId(compartmentId) + .sandboxId(sandboxId) + .displayName(displayName) + .lifecycleState(lifecycleState) + .sortBy(sortBy) + .sortOrder(sortOrder) + .limit(limit) + .page(page); + } + + /** + * 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(",projectId=").append(String.valueOf(this.projectId)); + sb.append(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",displayName=").append(String.valueOf(this.displayName)); + sb.append(",lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxesRequest)) { + return false; + } + + ListSandboxesRequest other = (ListSandboxesRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.projectId, other.projectId) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page); + } + + @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.projectId == null ? 43 : this.projectId.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ReadSandboxFileRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ReadSandboxFileRequest.java new file mode 100644 index 00000000000..5f64b6c78d2 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ReadSandboxFileRequest.java @@ -0,0 +1,240 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use ReadSandboxFileRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ReadSandboxFileRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Absolute path under /workspace of the file to read. */ + private String filePath; + + /** Absolute path under /workspace of the file to read. */ + public String getFilePath() { + return filePath; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ReadSandboxFileRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Absolute path under /workspace of the file to read. */ + private String filePath = null; + + /** + * Absolute path under /workspace of the file to read. + * + * @param filePath the value to set + * @return this builder instance + */ + public Builder filePath(String filePath) { + this.filePath = filePath; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(ReadSandboxFileRequest o) { + sandboxId(o.getSandboxId()); + filePath(o.getFilePath()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ReadSandboxFileRequest 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 ReadSandboxFileRequest + */ + public ReadSandboxFileRequest build() { + ReadSandboxFileRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ReadSandboxFileRequest 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 ReadSandboxFileRequest + */ + public ReadSandboxFileRequest buildWithoutInvocationCallback() { + ReadSandboxFileRequest request = new ReadSandboxFileRequest(); + request.sandboxId = sandboxId; + request.filePath = filePath; + request.opcRequestId = opcRequestId; + return request; + // new ReadSandboxFileRequest(sandboxId, filePath, 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().sandboxId(sandboxId).filePath(filePath).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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",filePath=").append(String.valueOf(this.filePath)); + 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 ReadSandboxFileRequest)) { + return false; + } + + ReadSandboxFileRequest other = (ReadSandboxFileRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.filePath, other.filePath) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.filePath == null ? 43 : this.filePath.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ResumeSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ResumeSandboxRequest.java new file mode 100644 index 00000000000..6dabd40725e --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/ResumeSandboxRequest.java @@ -0,0 +1,373 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use ResumeSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ResumeSandboxRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for resuming a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails resumeSandboxDetails; + + /** Request payload for resuming a sandbox. */ + public com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails getResumeSandboxDetails() { + return resumeSandboxDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 provided 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 provided 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.generativeaisandbox.model.ResumeSandboxDetails getBody$() { + return resumeSandboxDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ResumeSandboxRequest, + com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for resuming a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails resumeSandboxDetails = + null; + + /** + * Request payload for resuming a sandbox. + * + * @param resumeSandboxDetails the value to set + * @return this builder instance + */ + public Builder resumeSandboxDetails( + com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails + resumeSandboxDetails) { + this.resumeSandboxDetails = resumeSandboxDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @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 provided 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 provided 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(ResumeSandboxRequest o) { + sandboxId(o.getSandboxId()); + resumeSandboxDetails(o.getResumeSandboxDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ResumeSandboxRequest 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 ResumeSandboxRequest + */ + public ResumeSandboxRequest build() { + ResumeSandboxRequest 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.generativeaisandbox.model.ResumeSandboxDetails body) { + resumeSandboxDetails(body); + return this; + } + + /** + * Build the instance of ResumeSandboxRequest 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 ResumeSandboxRequest + */ + public ResumeSandboxRequest buildWithoutInvocationCallback() { + ResumeSandboxRequest request = new ResumeSandboxRequest(); + request.sandboxId = sandboxId; + request.resumeSandboxDetails = resumeSandboxDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new ResumeSandboxRequest(sandboxId, resumeSandboxDetails, 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() + .sandboxId(sandboxId) + .resumeSandboxDetails(resumeSandboxDetails) + .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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",resumeSandboxDetails=").append(String.valueOf(this.resumeSandboxDetails)); + 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 ResumeSandboxRequest)) { + return false; + } + + ResumeSandboxRequest other = (ResumeSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.resumeSandboxDetails, other.resumeSandboxDetails) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.resumeSandboxDetails == null + ? 43 + : this.resumeSandboxDetails.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandAndStreamRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandAndStreamRequest.java new file mode 100644 index 00000000000..0a9f5967a4a --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandAndStreamRequest.java @@ -0,0 +1,334 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use + * RunSandboxCommandAndStreamRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class RunSandboxCommandAndStreamRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for running a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails; + + /** Request payload for running a sandbox command. */ + public com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + getRunSandboxCommandDetails() { + return runSandboxCommandDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails getBody$() { + return runSandboxCommandDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + RunSandboxCommandAndStreamRequest, + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for running a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails = null; + + /** + * Request payload for running a sandbox command. + * + * @param runSandboxCommandDetails the value to set + * @return this builder instance + */ + public Builder runSandboxCommandDetails( + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails) { + this.runSandboxCommandDetails = runSandboxCommandDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(RunSandboxCommandAndStreamRequest o) { + sandboxId(o.getSandboxId()); + runSandboxCommandDetails(o.getRunSandboxCommandDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of RunSandboxCommandAndStreamRequest 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 RunSandboxCommandAndStreamRequest + */ + public RunSandboxCommandAndStreamRequest build() { + RunSandboxCommandAndStreamRequest 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.generativeaisandbox.model.RunSandboxCommandDetails body) { + runSandboxCommandDetails(body); + return this; + } + + /** + * Build the instance of RunSandboxCommandAndStreamRequest 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 RunSandboxCommandAndStreamRequest + */ + public RunSandboxCommandAndStreamRequest buildWithoutInvocationCallback() { + RunSandboxCommandAndStreamRequest request = new RunSandboxCommandAndStreamRequest(); + request.sandboxId = sandboxId; + request.runSandboxCommandDetails = runSandboxCommandDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new RunSandboxCommandAndStreamRequest(sandboxId, runSandboxCommandDetails, + // opcRequestId, opcRetryToken); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .runSandboxCommandDetails(runSandboxCommandDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",runSandboxCommandDetails=") + .append(String.valueOf(this.runSandboxCommandDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandAndStreamRequest)) { + return false; + } + + RunSandboxCommandAndStreamRequest other = (RunSandboxCommandAndStreamRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals( + this.runSandboxCommandDetails, other.runSandboxCommandDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.runSandboxCommandDetails == null + ? 43 + : this.runSandboxCommandDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandAndWaitRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandAndWaitRequest.java new file mode 100644 index 00000000000..0317f8d2a3c --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandAndWaitRequest.java @@ -0,0 +1,334 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use + * RunSandboxCommandAndWaitRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class RunSandboxCommandAndWaitRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for running a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails; + + /** Request payload for running a sandbox command. */ + public com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + getRunSandboxCommandDetails() { + return runSandboxCommandDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails getBody$() { + return runSandboxCommandDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + RunSandboxCommandAndWaitRequest, + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for running a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails = null; + + /** + * Request payload for running a sandbox command. + * + * @param runSandboxCommandDetails the value to set + * @return this builder instance + */ + public Builder runSandboxCommandDetails( + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails) { + this.runSandboxCommandDetails = runSandboxCommandDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(RunSandboxCommandAndWaitRequest o) { + sandboxId(o.getSandboxId()); + runSandboxCommandDetails(o.getRunSandboxCommandDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of RunSandboxCommandAndWaitRequest 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 RunSandboxCommandAndWaitRequest + */ + public RunSandboxCommandAndWaitRequest build() { + RunSandboxCommandAndWaitRequest 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.generativeaisandbox.model.RunSandboxCommandDetails body) { + runSandboxCommandDetails(body); + return this; + } + + /** + * Build the instance of RunSandboxCommandAndWaitRequest 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 RunSandboxCommandAndWaitRequest + */ + public RunSandboxCommandAndWaitRequest buildWithoutInvocationCallback() { + RunSandboxCommandAndWaitRequest request = new RunSandboxCommandAndWaitRequest(); + request.sandboxId = sandboxId; + request.runSandboxCommandDetails = runSandboxCommandDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new RunSandboxCommandAndWaitRequest(sandboxId, runSandboxCommandDetails, + // opcRequestId, opcRetryToken); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .runSandboxCommandDetails(runSandboxCommandDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",runSandboxCommandDetails=") + .append(String.valueOf(this.runSandboxCommandDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandAndWaitRequest)) { + return false; + } + + RunSandboxCommandAndWaitRequest other = (RunSandboxCommandAndWaitRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals( + this.runSandboxCommandDetails, other.runSandboxCommandDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.runSandboxCommandDetails == null + ? 43 + : this.runSandboxCommandDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandRequest.java new file mode 100644 index 00000000000..77111fe211a --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/RunSandboxCommandRequest.java @@ -0,0 +1,333 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use RunSandboxCommandRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class RunSandboxCommandRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for running a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails; + + /** Request payload for running a sandbox command. */ + public com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + getRunSandboxCommandDetails() { + return runSandboxCommandDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails getBody$() { + return runSandboxCommandDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + RunSandboxCommandRequest, + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for running a sandbox command. */ + private com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails = null; + + /** + * Request payload for running a sandbox command. + * + * @param runSandboxCommandDetails the value to set + * @return this builder instance + */ + public Builder runSandboxCommandDetails( + com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails + runSandboxCommandDetails) { + this.runSandboxCommandDetails = runSandboxCommandDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(RunSandboxCommandRequest o) { + sandboxId(o.getSandboxId()); + runSandboxCommandDetails(o.getRunSandboxCommandDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of RunSandboxCommandRequest 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 RunSandboxCommandRequest + */ + public RunSandboxCommandRequest build() { + RunSandboxCommandRequest 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.generativeaisandbox.model.RunSandboxCommandDetails body) { + runSandboxCommandDetails(body); + return this; + } + + /** + * Build the instance of RunSandboxCommandRequest 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 RunSandboxCommandRequest + */ + public RunSandboxCommandRequest buildWithoutInvocationCallback() { + RunSandboxCommandRequest request = new RunSandboxCommandRequest(); + request.sandboxId = sandboxId; + request.runSandboxCommandDetails = runSandboxCommandDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new RunSandboxCommandRequest(sandboxId, runSandboxCommandDetails, opcRequestId, + // opcRetryToken); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .runSandboxCommandDetails(runSandboxCommandDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",runSandboxCommandDetails=") + .append(String.valueOf(this.runSandboxCommandDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandRequest)) { + return false; + } + + RunSandboxCommandRequest other = (RunSandboxCommandRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals( + this.runSandboxCommandDetails, other.runSandboxCommandDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.runSandboxCommandDetails == null + ? 43 + : this.runSandboxCommandDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/StopSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/StopSandboxRequest.java new file mode 100644 index 00000000000..ace94a6856c --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/StopSandboxRequest.java @@ -0,0 +1,372 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use StopSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class StopSandboxRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for stopping a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails stopSandboxDetails; + + /** Request payload for stopping a sandbox. */ + public com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails getStopSandboxDetails() { + return stopSandboxDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 provided 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 provided 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.generativeaisandbox.model.StopSandboxDetails getBody$() { + return stopSandboxDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + StopSandboxRequest, + com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for stopping a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails stopSandboxDetails = + null; + + /** + * Request payload for stopping a sandbox. + * + * @param stopSandboxDetails the value to set + * @return this builder instance + */ + public Builder stopSandboxDetails( + com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails stopSandboxDetails) { + this.stopSandboxDetails = stopSandboxDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @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 provided 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 provided 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(StopSandboxRequest o) { + sandboxId(o.getSandboxId()); + stopSandboxDetails(o.getStopSandboxDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of StopSandboxRequest 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 StopSandboxRequest + */ + public StopSandboxRequest build() { + StopSandboxRequest 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.generativeaisandbox.model.StopSandboxDetails body) { + stopSandboxDetails(body); + return this; + } + + /** + * Build the instance of StopSandboxRequest 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 StopSandboxRequest + */ + public StopSandboxRequest buildWithoutInvocationCallback() { + StopSandboxRequest request = new StopSandboxRequest(); + request.sandboxId = sandboxId; + request.stopSandboxDetails = stopSandboxDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new StopSandboxRequest(sandboxId, stopSandboxDetails, 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() + .sandboxId(sandboxId) + .stopSandboxDetails(stopSandboxDetails) + .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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",stopSandboxDetails=").append(String.valueOf(this.stopSandboxDetails)); + 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 StopSandboxRequest)) { + return false; + } + + StopSandboxRequest other = (StopSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.stopSandboxDetails, other.stopSandboxDetails) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.stopSandboxDetails == null + ? 43 + : this.stopSandboxDetails.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/StreamSandboxCommandEventsRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/StreamSandboxCommandEventsRequest.java new file mode 100644 index 00000000000..2e71e35541e --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/StreamSandboxCommandEventsRequest.java @@ -0,0 +1,310 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use + * StreamSandboxCommandEventsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class StreamSandboxCommandEventsRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Sandbox command identifier. */ + private String commandId; + + /** Sandbox command identifier. */ + public String getCommandId() { + return commandId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** The first command event sequence number to include. */ + private Long fromSeq; + + /** The first command event sequence number to include. */ + public Long getFromSeq() { + return fromSeq; + } + /** + * The last command event sequence number to include. If omitted, all available events from + * {@code fromSeq} are included. + */ + private Long untilSeq; + + /** + * The last command event sequence number to include. If omitted, all available events from + * {@code fromSeq} are included. + */ + public Long getUntilSeq() { + return untilSeq; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + StreamSandboxCommandEventsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Sandbox command identifier. */ + private String commandId = null; + + /** + * Sandbox command identifier. + * + * @param commandId the value to set + * @return this builder instance + */ + public Builder commandId(String commandId) { + this.commandId = commandId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The first command event sequence number to include. */ + private Long fromSeq = null; + + /** + * The first command event sequence number to include. + * + * @param fromSeq the value to set + * @return this builder instance + */ + public Builder fromSeq(Long fromSeq) { + this.fromSeq = fromSeq; + return this; + } + + /** + * The last command event sequence number to include. If omitted, all available events from + * {@code fromSeq} are included. + */ + private Long untilSeq = null; + + /** + * The last command event sequence number to include. If omitted, all available events from + * {@code fromSeq} are included. + * + * @param untilSeq the value to set + * @return this builder instance + */ + public Builder untilSeq(Long untilSeq) { + this.untilSeq = untilSeq; + 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(StreamSandboxCommandEventsRequest o) { + sandboxId(o.getSandboxId()); + commandId(o.getCommandId()); + opcRequestId(o.getOpcRequestId()); + fromSeq(o.getFromSeq()); + untilSeq(o.getUntilSeq()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of StreamSandboxCommandEventsRequest 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 StreamSandboxCommandEventsRequest + */ + public StreamSandboxCommandEventsRequest build() { + StreamSandboxCommandEventsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of StreamSandboxCommandEventsRequest 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 StreamSandboxCommandEventsRequest + */ + public StreamSandboxCommandEventsRequest buildWithoutInvocationCallback() { + StreamSandboxCommandEventsRequest request = new StreamSandboxCommandEventsRequest(); + request.sandboxId = sandboxId; + request.commandId = commandId; + request.opcRequestId = opcRequestId; + request.fromSeq = fromSeq; + request.untilSeq = untilSeq; + return request; + // new StreamSandboxCommandEventsRequest(sandboxId, commandId, opcRequestId, fromSeq, + // untilSeq); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .commandId(commandId) + .opcRequestId(opcRequestId) + .fromSeq(fromSeq) + .untilSeq(untilSeq); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",commandId=").append(String.valueOf(this.commandId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",fromSeq=").append(String.valueOf(this.fromSeq)); + sb.append(",untilSeq=").append(String.valueOf(this.untilSeq)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof StreamSandboxCommandEventsRequest)) { + return false; + } + + StreamSandboxCommandEventsRequest other = (StreamSandboxCommandEventsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.commandId, other.commandId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.fromSeq, other.fromSeq) + && java.util.Objects.equals(this.untilSeq, other.untilSeq); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.commandId == null ? 43 : this.commandId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.fromSeq == null ? 43 : this.fromSeq.hashCode()); + result = (result * PRIME) + (this.untilSeq == null ? 43 : this.untilSeq.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/SuspendSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/SuspendSandboxRequest.java new file mode 100644 index 00000000000..af62b74f9fd --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/SuspendSandboxRequest.java @@ -0,0 +1,374 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use SuspendSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class SuspendSandboxRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for suspending a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails suspendSandboxDetails; + + /** Request payload for suspending a sandbox. */ + public com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails + getSuspendSandboxDetails() { + return suspendSandboxDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 provided 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 provided 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.generativeaisandbox.model.SuspendSandboxDetails getBody$() { + return suspendSandboxDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + SuspendSandboxRequest, + com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for suspending a sandbox. */ + private com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails + suspendSandboxDetails = null; + + /** + * Request payload for suspending a sandbox. + * + * @param suspendSandboxDetails the value to set + * @return this builder instance + */ + public Builder suspendSandboxDetails( + com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails + suspendSandboxDetails) { + this.suspendSandboxDetails = suspendSandboxDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @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 provided 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 provided 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(SuspendSandboxRequest o) { + sandboxId(o.getSandboxId()); + suspendSandboxDetails(o.getSuspendSandboxDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of SuspendSandboxRequest 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 SuspendSandboxRequest + */ + public SuspendSandboxRequest build() { + SuspendSandboxRequest 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.generativeaisandbox.model.SuspendSandboxDetails body) { + suspendSandboxDetails(body); + return this; + } + + /** + * Build the instance of SuspendSandboxRequest 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 SuspendSandboxRequest + */ + public SuspendSandboxRequest buildWithoutInvocationCallback() { + SuspendSandboxRequest request = new SuspendSandboxRequest(); + request.sandboxId = sandboxId; + request.suspendSandboxDetails = suspendSandboxDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new SuspendSandboxRequest(sandboxId, suspendSandboxDetails, 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() + .sandboxId(sandboxId) + .suspendSandboxDetails(suspendSandboxDetails) + .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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",suspendSandboxDetails=").append(String.valueOf(this.suspendSandboxDetails)); + 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 SuspendSandboxRequest)) { + return false; + } + + SuspendSandboxRequest other = (SuspendSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.suspendSandboxDetails, other.suspendSandboxDetails) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.suspendSandboxDetails == null + ? 43 + : this.suspendSandboxDetails.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/UpdateSandboxRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/UpdateSandboxRequest.java new file mode 100644 index 00000000000..cb4c6df8dfc --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/UpdateSandboxRequest.java @@ -0,0 +1,321 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use UpdateSandboxRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class UpdateSandboxRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails> { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Request payload for sandbox update. */ + private com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails updateSandboxDetails; + + /** Request payload for sandbox update. */ + public com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails getUpdateSandboxDetails() { + return updateSandboxDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 provided 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 provided 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.generativeaisandbox.model.UpdateSandboxDetails getBody$() { + return updateSandboxDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpdateSandboxRequest, + com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Request payload for sandbox update. */ + private com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails updateSandboxDetails = + null; + + /** + * Request payload for sandbox update. + * + * @param updateSandboxDetails the value to set + * @return this builder instance + */ + public Builder updateSandboxDetails( + com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails + updateSandboxDetails) { + this.updateSandboxDetails = updateSandboxDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 provided 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 provided 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(UpdateSandboxRequest o) { + sandboxId(o.getSandboxId()); + updateSandboxDetails(o.getUpdateSandboxDetails()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpdateSandboxRequest 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 UpdateSandboxRequest + */ + public UpdateSandboxRequest build() { + UpdateSandboxRequest 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.generativeaisandbox.model.UpdateSandboxDetails body) { + updateSandboxDetails(body); + return this; + } + + /** + * Build the instance of UpdateSandboxRequest 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 UpdateSandboxRequest + */ + public UpdateSandboxRequest buildWithoutInvocationCallback() { + UpdateSandboxRequest request = new UpdateSandboxRequest(); + request.sandboxId = sandboxId; + request.updateSandboxDetails = updateSandboxDetails; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new UpdateSandboxRequest(sandboxId, updateSandboxDetails, 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() + .sandboxId(sandboxId) + .updateSandboxDetails(updateSandboxDetails) + .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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",updateSandboxDetails=").append(String.valueOf(this.updateSandboxDetails)); + 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 UpdateSandboxRequest)) { + return false; + } + + UpdateSandboxRequest other = (UpdateSandboxRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.updateSandboxDetails, other.updateSandboxDetails) + && 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.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = + (result * PRIME) + + (this.updateSandboxDetails == null + ? 43 + : this.updateSandboxDetails.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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/WriteSandboxFileRequest.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/WriteSandboxFileRequest.java new file mode 100644 index 00000000000..21468d34409 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/requests/WriteSandboxFileRequest.java @@ -0,0 +1,396 @@ +/** + * 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.generativeaisandbox.requests; + +import com.oracle.bmc.generativeaisandbox.model.*; +/** + * Example: Click here to see how to use WriteSandboxFileRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class WriteSandboxFileRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + public String getSandboxId() { + return sandboxId; + } + /** Absolute path under /workspace where the file will be written. */ + private String filePath; + + /** Absolute path under /workspace where the file will be written. */ + public String getFilePath() { + return filePath; + } + /** Raw file bytes to write. */ + private java.io.InputStream writeSandboxFileContentDetails; + + /** Raw file bytes to write. */ + public java.io.InputStream getWriteSandboxFileContentDetails() { + return writeSandboxFileContentDetails; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** + * Optional base64-encoded SHA-256 checksum of the sandbox file content. When supported by the + * sandbox runtime, the runtime validates the uploaded file content against this value and + * rejects the request if the values do not match. + */ + private String opcContentSha256; + + /** + * Optional base64-encoded SHA-256 checksum of the sandbox file content. When supported by the + * sandbox runtime, the runtime validates the uploaded file content against this value and + * rejects the request if the values do not match. + */ + public String getOpcContentSha256() { + return opcContentSha256; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public java.io.InputStream getBody$() { + return writeSandboxFileContentDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + WriteSandboxFileRequest, java.io.InputStream> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + */ + private String sandboxId = null; + + /** + * Sandbox identifier. Newly generated Sandbox IDs use {@code sbx-} followed by 16 lowercase + * base32 characters ({@code a-z2-7}); existing legacy IDs remain accepted. + * + * @param sandboxId the value to set + * @return this builder instance + */ + public Builder sandboxId(String sandboxId) { + this.sandboxId = sandboxId; + return this; + } + + /** Absolute path under /workspace where the file will be written. */ + private String filePath = null; + + /** + * Absolute path under /workspace where the file will be written. + * + * @param filePath the value to set + * @return this builder instance + */ + public Builder filePath(String filePath) { + this.filePath = filePath; + return this; + } + + /** Raw file bytes to write. */ + private java.io.InputStream writeSandboxFileContentDetails = null; + + /** + * Raw file bytes to write. + * + * @param writeSandboxFileContentDetails the value to set + * @return this builder instance + */ + public Builder writeSandboxFileContentDetails( + java.io.InputStream writeSandboxFileContentDetails) { + this.writeSandboxFileContentDetails = writeSandboxFileContentDetails; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** + * Optional base64-encoded SHA-256 checksum of the sandbox file content. When supported by + * the sandbox runtime, the runtime validates the uploaded file content against this value + * and rejects the request if the values do not match. + */ + private String opcContentSha256 = null; + + /** + * Optional base64-encoded SHA-256 checksum of the sandbox file content. When supported by + * the sandbox runtime, the runtime validates the uploaded file content against this value + * and rejects the request if the values do not match. + * + * @param opcContentSha256 the value to set + * @return this builder instance + */ + public Builder opcContentSha256(String opcContentSha256) { + this.opcContentSha256 = opcContentSha256; + 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(WriteSandboxFileRequest o) { + sandboxId(o.getSandboxId()); + filePath(o.getFilePath()); + writeSandboxFileContentDetails(o.getWriteSandboxFileContentDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + opcContentSha256(o.getOpcContentSha256()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of WriteSandboxFileRequest 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 WriteSandboxFileRequest + */ + public WriteSandboxFileRequest build() { + WriteSandboxFileRequest 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$(java.io.InputStream body) { + writeSandboxFileContentDetails(body); + return this; + } + + /** + * Build the instance of WriteSandboxFileRequest 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 WriteSandboxFileRequest + */ + public WriteSandboxFileRequest buildWithoutInvocationCallback() { + WriteSandboxFileRequest request = new WriteSandboxFileRequest(); + request.sandboxId = sandboxId; + request.filePath = filePath; + request.writeSandboxFileContentDetails = writeSandboxFileContentDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.opcContentSha256 = opcContentSha256; + return request; + // new WriteSandboxFileRequest(sandboxId, filePath, writeSandboxFileContentDetails, + // opcRequestId, opcRetryToken, opcContentSha256); + } + } + + /** + * 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() + .sandboxId(sandboxId) + .filePath(filePath) + .writeSandboxFileContentDetails(writeSandboxFileContentDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken) + .opcContentSha256(opcContentSha256); + } + + /** + * 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(",sandboxId=").append(String.valueOf(this.sandboxId)); + sb.append(",filePath=").append(String.valueOf(this.filePath)); + sb.append(",writeSandboxFileContentDetails=") + .append(String.valueOf(this.writeSandboxFileContentDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(",opcContentSha256=").append(String.valueOf(this.opcContentSha256)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WriteSandboxFileRequest)) { + return false; + } + + WriteSandboxFileRequest other = (WriteSandboxFileRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.sandboxId, other.sandboxId) + && java.util.Objects.equals(this.filePath, other.filePath) + && java.util.Objects.equals( + this.writeSandboxFileContentDetails, other.writeSandboxFileContentDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken) + && java.util.Objects.equals(this.opcContentSha256, other.opcContentSha256); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.sandboxId == null ? 43 : this.sandboxId.hashCode()); + result = (result * PRIME) + (this.filePath == null ? 43 : this.filePath.hashCode()); + result = + (result * PRIME) + + (this.writeSandboxFileContentDetails == null + ? 43 + : this.writeSandboxFileContentDetails.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.opcContentSha256 == null ? 43 : this.opcContentSha256.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CancelSandboxCommandResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CancelSandboxCommandResponse.java new file mode 100644 index 00000000000..7bd228bcf4c --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CancelSandboxCommandResponse.java @@ -0,0 +1,178 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class CancelSandboxCommandResponse 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; + } + + /** The returned {@code SandboxCommand} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand; + + /** + * The returned {@code SandboxCommand} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCommand getSandboxCommand() { + return sandboxCommand; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "sandboxCommand" + }) + private CancelSandboxCommandResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.sandboxCommand = sandboxCommand; + } + + 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; + } + + /** The returned {@code SandboxCommand} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand; + + /** + * The returned {@code SandboxCommand} instance. + * + * @param sandboxCommand the value to set + * @return this builder + */ + public Builder sandboxCommand( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand) { + this.sandboxCommand = sandboxCommand; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CancelSandboxCommandResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + sandboxCommand(o.getSandboxCommand()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CancelSandboxCommandResponse build() { + return new CancelSandboxCommandResponse( + __httpStatusCode__, headers, opcRequestId, sandboxCommand); + } + } + + /** + * 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(",sandboxCommand=").append(String.valueOf(sandboxCommand)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CancelSandboxCommandResponse)) { + return false; + } + + CancelSandboxCommandResponse other = (CancelSandboxCommandResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxCommand, other.sandboxCommand); + } + + @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.sandboxCommand == null ? 43 : this.sandboxCommand.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CreateSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CreateSandboxResponse.java new file mode 100644 index 00000000000..4f755e6f256 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CreateSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class CreateSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private CreateSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateSandboxResponse build() { + return new CreateSandboxResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxResponse)) { + return false; + } + + CreateSandboxResponse other = (CreateSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CreateSandboxSnapshotResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CreateSandboxSnapshotResponse.java new file mode 100644 index 00000000000..08875331cb4 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/CreateSandboxSnapshotResponse.java @@ -0,0 +1,211 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class CreateSandboxSnapshotResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxSnapshot} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot; + + /** + * The returned {@code SandboxSnapshot} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot getSandboxSnapshot() { + return sandboxSnapshot; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandboxSnapshot" + }) + private CreateSandboxSnapshotResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandboxSnapshot = sandboxSnapshot; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxSnapshot} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot; + + /** + * The returned {@code SandboxSnapshot} instance. + * + * @param sandboxSnapshot the value to set + * @return this builder + */ + public Builder sandboxSnapshot( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot) { + this.sandboxSnapshot = sandboxSnapshot; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateSandboxSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandboxSnapshot(o.getSandboxSnapshot()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateSandboxSnapshotResponse build() { + return new CreateSandboxSnapshotResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandboxSnapshot); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandboxSnapshot=").append(String.valueOf(sandboxSnapshot)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSandboxSnapshotResponse)) { + return false; + } + + CreateSandboxSnapshotResponse other = (CreateSandboxSnapshotResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxSnapshot, other.sandboxSnapshot); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.sandboxSnapshot == null ? 43 : this.sandboxSnapshot.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/DeleteSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/DeleteSandboxResponse.java new file mode 100644 index 00000000000..62adad2862c --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/DeleteSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class DeleteSandboxResponse 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 DeleteSandboxResponse( + 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(DeleteSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteSandboxResponse build() { + return new DeleteSandboxResponse(__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 DeleteSandboxResponse)) { + return false; + } + + DeleteSandboxResponse other = (DeleteSandboxResponse) 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/DeleteSandboxSnapshotResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/DeleteSandboxSnapshotResponse.java new file mode 100644 index 00000000000..40a1eab1915 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/DeleteSandboxSnapshotResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class DeleteSandboxSnapshotResponse 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 DeleteSandboxSnapshotResponse( + 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(DeleteSandboxSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteSandboxSnapshotResponse build() { + return new DeleteSandboxSnapshotResponse(__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 DeleteSandboxSnapshotResponse)) { + return false; + } + + DeleteSandboxSnapshotResponse other = (DeleteSandboxSnapshotResponse) 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-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ExtendSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ExtendSandboxResponse.java new file mode 100644 index 00000000000..02199d20e8d --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ExtendSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ExtendSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private ExtendSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ExtendSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ExtendSandboxResponse build() { + return new ExtendSandboxResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ExtendSandboxResponse)) { + return false; + } + + ExtendSandboxResponse other = (ExtendSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxCommandOutputResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxCommandOutputResponse.java new file mode 100644 index 00000000000..0ded4347137 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxCommandOutputResponse.java @@ -0,0 +1,182 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxCommandOutputResponse 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; + } + + /** The returned {@code SandboxCommandOutput} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput sandboxCommandOutput; + + /** + * The returned {@code SandboxCommandOutput} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput getSandboxCommandOutput() { + return sandboxCommandOutput; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "sandboxCommandOutput" + }) + private GetSandboxCommandOutputResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput sandboxCommandOutput) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.sandboxCommandOutput = sandboxCommandOutput; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + GetSandboxCommandOutputResponse> { + 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; + } + + /** The returned {@code SandboxCommandOutput} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput sandboxCommandOutput; + + /** + * The returned {@code SandboxCommandOutput} instance. + * + * @param sandboxCommandOutput the value to set + * @return this builder + */ + public Builder sandboxCommandOutput( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput + sandboxCommandOutput) { + this.sandboxCommandOutput = sandboxCommandOutput; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetSandboxCommandOutputResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + sandboxCommandOutput(o.getSandboxCommandOutput()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetSandboxCommandOutputResponse build() { + return new GetSandboxCommandOutputResponse( + __httpStatusCode__, headers, opcRequestId, sandboxCommandOutput); + } + } + + /** + * 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(",sandboxCommandOutput=").append(String.valueOf(sandboxCommandOutput)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSandboxCommandOutputResponse)) { + return false; + } + + GetSandboxCommandOutputResponse other = (GetSandboxCommandOutputResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxCommandOutput, other.sandboxCommandOutput); + } + + @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.sandboxCommandOutput == null + ? 43 + : this.sandboxCommandOutput.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxCommandResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxCommandResponse.java new file mode 100644 index 00000000000..00d9f0a47e3 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxCommandResponse.java @@ -0,0 +1,178 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxCommandResponse 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; + } + + /** The returned {@code SandboxCommand} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand; + + /** + * The returned {@code SandboxCommand} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCommand getSandboxCommand() { + return sandboxCommand; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "sandboxCommand" + }) + private GetSandboxCommandResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.sandboxCommand = sandboxCommand; + } + + 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; + } + + /** The returned {@code SandboxCommand} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand; + + /** + * The returned {@code SandboxCommand} instance. + * + * @param sandboxCommand the value to set + * @return this builder + */ + public Builder sandboxCommand( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand) { + this.sandboxCommand = sandboxCommand; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetSandboxCommandResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + sandboxCommand(o.getSandboxCommand()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetSandboxCommandResponse build() { + return new GetSandboxCommandResponse( + __httpStatusCode__, headers, opcRequestId, sandboxCommand); + } + } + + /** + * 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(",sandboxCommand=").append(String.valueOf(sandboxCommand)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSandboxCommandResponse)) { + return false; + } + + GetSandboxCommandResponse other = (GetSandboxCommandResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxCommand, other.sandboxCommand); + } + + @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.sandboxCommand == null ? 43 : this.sandboxCommand.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxResponse.java new file mode 100644 index 00000000000..6fb1fc459b0 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private GetSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetSandboxResponse build() { + return new GetSandboxResponse(__httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSandboxResponse)) { + return false; + } + + GetSandboxResponse other = (GetSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxSnapshotResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxSnapshotResponse.java new file mode 100644 index 00000000000..62ce1e7a0fc --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/GetSandboxSnapshotResponse.java @@ -0,0 +1,211 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class GetSandboxSnapshotResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxSnapshot} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot; + + /** + * The returned {@code SandboxSnapshot} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot getSandboxSnapshot() { + return sandboxSnapshot; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandboxSnapshot" + }) + private GetSandboxSnapshotResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandboxSnapshot = sandboxSnapshot; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxSnapshot} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot; + + /** + * The returned {@code SandboxSnapshot} instance. + * + * @param sandboxSnapshot the value to set + * @return this builder + */ + public Builder sandboxSnapshot( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot sandboxSnapshot) { + this.sandboxSnapshot = sandboxSnapshot; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetSandboxSnapshotResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandboxSnapshot(o.getSandboxSnapshot()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetSandboxSnapshotResponse build() { + return new GetSandboxSnapshotResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandboxSnapshot); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandboxSnapshot=").append(String.valueOf(sandboxSnapshot)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSandboxSnapshotResponse)) { + return false; + } + + GetSandboxSnapshotResponse other = (GetSandboxSnapshotResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxSnapshot, other.sandboxSnapshot); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.sandboxSnapshot == null ? 43 : this.sandboxSnapshot.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxCommandResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxCommandResponse.java new file mode 100644 index 00000000000..eb79a384400 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxCommandResponse.java @@ -0,0 +1,235 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ListSandboxCommandResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxCommandCollection} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection + sandboxCommandCollection; + + /** + * The returned {@code SandboxCommandCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection + getSandboxCommandCollection() { + return sandboxCommandCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcNextPage", + "opcRequestId", + "sandboxCommandCollection" + }) + private ListSandboxCommandResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcNextPage, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection + sandboxCommandCollection) { + super(__httpStatusCode__, headers); + this.opcNextPage = opcNextPage; + this.opcRequestId = opcRequestId; + this.sandboxCommandCollection = sandboxCommandCollection; + } + + 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; + } + + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxCommandCollection} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection + sandboxCommandCollection; + + /** + * The returned {@code SandboxCommandCollection} instance. + * + * @param sandboxCommandCollection the value to set + * @return this builder + */ + public Builder sandboxCommandCollection( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection + sandboxCommandCollection) { + this.sandboxCommandCollection = sandboxCommandCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListSandboxCommandResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcNextPage(o.getOpcNextPage()); + opcRequestId(o.getOpcRequestId()); + sandboxCommandCollection(o.getSandboxCommandCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListSandboxCommandResponse build() { + return new ListSandboxCommandResponse( + __httpStatusCode__, + headers, + opcNextPage, + opcRequestId, + sandboxCommandCollection); + } + } + + /** + * 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(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandboxCommandCollection=").append(String.valueOf(sandboxCommandCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxCommandResponse)) { + return false; + } + + ListSandboxCommandResponse other = (ListSandboxCommandResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals( + this.sandboxCommandCollection, other.sandboxCommandCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.sandboxCommandCollection == null + ? 43 + : this.sandboxCommandCollection.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxSnapshotsResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxSnapshotsResponse.java new file mode 100644 index 00000000000..a9fd1e4f73e --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxSnapshotsResponse.java @@ -0,0 +1,235 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ListSandboxSnapshotsResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxSnapshotCollection} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection + sandboxSnapshotCollection; + + /** + * The returned {@code SandboxSnapshotCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection + getSandboxSnapshotCollection() { + return sandboxSnapshotCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcNextPage", + "opcRequestId", + "sandboxSnapshotCollection" + }) + private ListSandboxSnapshotsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcNextPage, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection + sandboxSnapshotCollection) { + super(__httpStatusCode__, headers); + this.opcNextPage = opcNextPage; + this.opcRequestId = opcRequestId; + this.sandboxSnapshotCollection = sandboxSnapshotCollection; + } + + 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; + } + + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxSnapshotCollection} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection + sandboxSnapshotCollection; + + /** + * The returned {@code SandboxSnapshotCollection} instance. + * + * @param sandboxSnapshotCollection the value to set + * @return this builder + */ + public Builder sandboxSnapshotCollection( + com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection + sandboxSnapshotCollection) { + this.sandboxSnapshotCollection = sandboxSnapshotCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListSandboxSnapshotsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcNextPage(o.getOpcNextPage()); + opcRequestId(o.getOpcRequestId()); + sandboxSnapshotCollection(o.getSandboxSnapshotCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListSandboxSnapshotsResponse build() { + return new ListSandboxSnapshotsResponse( + __httpStatusCode__, + headers, + opcNextPage, + opcRequestId, + sandboxSnapshotCollection); + } + } + + /** + * 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(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandboxSnapshotCollection=").append(String.valueOf(sandboxSnapshotCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxSnapshotsResponse)) { + return false; + } + + ListSandboxSnapshotsResponse other = (ListSandboxSnapshotsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals( + this.sandboxSnapshotCollection, other.sandboxSnapshotCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.sandboxSnapshotCollection == null + ? 43 + : this.sandboxSnapshotCollection.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxesResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxesResponse.java new file mode 100644 index 00000000000..d6b72328118 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ListSandboxesResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ListSandboxesResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxCollection} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCollection sandboxCollection; + + /** + * The returned {@code SandboxCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCollection getSandboxCollection() { + return sandboxCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcNextPage", + "opcRequestId", + "sandboxCollection" + }) + private ListSandboxesResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcNextPage, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCollection sandboxCollection) { + super(__httpStatusCode__, headers); + this.opcNextPage = opcNextPage; + this.opcRequestId = opcRequestId; + this.sandboxCollection = sandboxCollection; + } + + 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; + } + + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code SandboxCollection} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCollection sandboxCollection; + + /** + * The returned {@code SandboxCollection} instance. + * + * @param sandboxCollection the value to set + * @return this builder + */ + public Builder sandboxCollection( + com.oracle.bmc.generativeaisandbox.model.SandboxCollection sandboxCollection) { + this.sandboxCollection = sandboxCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListSandboxesResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcNextPage(o.getOpcNextPage()); + opcRequestId(o.getOpcRequestId()); + sandboxCollection(o.getSandboxCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListSandboxesResponse build() { + return new ListSandboxesResponse( + __httpStatusCode__, headers, opcNextPage, opcRequestId, sandboxCollection); + } + } + + /** + * 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(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandboxCollection=").append(String.valueOf(sandboxCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListSandboxesResponse)) { + return false; + } + + ListSandboxesResponse other = (ListSandboxesResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxCollection, other.sandboxCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.sandboxCollection == null ? 43 : this.sandboxCollection.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ReadSandboxFileResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ReadSandboxFileResponse.java new file mode 100644 index 00000000000..04dbcbf0f84 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ReadSandboxFileResponse.java @@ -0,0 +1,210 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ReadSandboxFileResponse 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; + } + + /** Base64-encoded SHA-256 checksum of the sandbox file content. */ + private String opcContentSha256; + + /** + * Base64-encoded SHA-256 checksum of the sandbox file content. + * + * @return the value + */ + public String getOpcContentSha256() { + return opcContentSha256; + } + + /** The returned {@code java.io.InputStream} instance. */ + private java.io.InputStream inputStream; + + /** + * The returned {@code java.io.InputStream} instance. + * + * @return the value + */ + public java.io.InputStream getInputStream() { + return inputStream; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcContentSha256", + "inputStream" + }) + private ReadSandboxFileResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcContentSha256, + java.io.InputStream inputStream) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcContentSha256 = opcContentSha256; + this.inputStream = inputStream; + } + + 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; + } + + /** Base64-encoded SHA-256 checksum of the sandbox file content. */ + private String opcContentSha256; + + /** + * Base64-encoded SHA-256 checksum of the sandbox file content. + * + * @param opcContentSha256 the value to set + * @return this builder + */ + public Builder opcContentSha256(String opcContentSha256) { + this.opcContentSha256 = opcContentSha256; + return this; + } + + /** The returned {@code java.io.InputStream} instance. */ + private java.io.InputStream inputStream; + + /** + * The returned {@code java.io.InputStream} instance. + * + * @param inputStream the value to set + * @return this builder + */ + public Builder inputStream(java.io.InputStream inputStream) { + this.inputStream = inputStream; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ReadSandboxFileResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcContentSha256(o.getOpcContentSha256()); + inputStream(o.getInputStream()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ReadSandboxFileResponse build() { + return new ReadSandboxFileResponse( + __httpStatusCode__, headers, opcRequestId, opcContentSha256, inputStream); + } + } + + /** + * 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(",opcContentSha256=").append(String.valueOf(opcContentSha256)); + sb.append(",inputStream=").append(String.valueOf(inputStream)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ReadSandboxFileResponse)) { + return false; + } + + ReadSandboxFileResponse other = (ReadSandboxFileResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcContentSha256, other.opcContentSha256) + && java.util.Objects.equals(this.inputStream, other.inputStream); + } + + @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.opcContentSha256 == null ? 43 : this.opcContentSha256.hashCode()); + result = (result * PRIME) + (this.inputStream == null ? 43 : this.inputStream.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ResumeSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ResumeSandboxResponse.java new file mode 100644 index 00000000000..52275ce0df2 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/ResumeSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class ResumeSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private ResumeSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ResumeSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ResumeSandboxResponse build() { + return new ResumeSandboxResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ResumeSandboxResponse)) { + return false; + } + + ResumeSandboxResponse other = (ResumeSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandAndStreamResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandAndStreamResponse.java new file mode 100644 index 00000000000..b689b667a10 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandAndStreamResponse.java @@ -0,0 +1,176 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class RunSandboxCommandAndStreamResponse 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; + } + + /** The returned {@code java.io.InputStream} instance. */ + private java.io.InputStream inputStream; + + /** + * The returned {@code java.io.InputStream} instance. + * + * @return the value + */ + public java.io.InputStream getInputStream() { + return inputStream; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "inputStream" + }) + private RunSandboxCommandAndStreamResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + java.io.InputStream inputStream) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.inputStream = inputStream; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + RunSandboxCommandAndStreamResponse> { + 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; + } + + /** The returned {@code java.io.InputStream} instance. */ + private java.io.InputStream inputStream; + + /** + * The returned {@code java.io.InputStream} instance. + * + * @param inputStream the value to set + * @return this builder + */ + public Builder inputStream(java.io.InputStream inputStream) { + this.inputStream = inputStream; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(RunSandboxCommandAndStreamResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + inputStream(o.getInputStream()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public RunSandboxCommandAndStreamResponse build() { + return new RunSandboxCommandAndStreamResponse( + __httpStatusCode__, headers, opcRequestId, inputStream); + } + } + + /** + * 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(",inputStream=").append(String.valueOf(inputStream)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandAndStreamResponse)) { + return false; + } + + RunSandboxCommandAndStreamResponse other = (RunSandboxCommandAndStreamResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.inputStream, other.inputStream); + } + + @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.inputStream == null ? 43 : this.inputStream.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandAndWaitResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandAndWaitResponse.java new file mode 100644 index 00000000000..12849d1e965 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandAndWaitResponse.java @@ -0,0 +1,179 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class RunSandboxCommandAndWaitResponse 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; + } + + /** The returned {@code SandboxCommand} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand; + + /** + * The returned {@code SandboxCommand} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCommand getSandboxCommand() { + return sandboxCommand; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "sandboxCommand" + }) + private RunSandboxCommandAndWaitResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.sandboxCommand = sandboxCommand; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + RunSandboxCommandAndWaitResponse> { + 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; + } + + /** The returned {@code SandboxCommand} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand; + + /** + * The returned {@code SandboxCommand} instance. + * + * @param sandboxCommand the value to set + * @return this builder + */ + public Builder sandboxCommand( + com.oracle.bmc.generativeaisandbox.model.SandboxCommand sandboxCommand) { + this.sandboxCommand = sandboxCommand; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(RunSandboxCommandAndWaitResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + sandboxCommand(o.getSandboxCommand()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public RunSandboxCommandAndWaitResponse build() { + return new RunSandboxCommandAndWaitResponse( + __httpStatusCode__, headers, opcRequestId, sandboxCommand); + } + } + + /** + * 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(",sandboxCommand=").append(String.valueOf(sandboxCommand)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandAndWaitResponse)) { + return false; + } + + RunSandboxCommandAndWaitResponse other = (RunSandboxCommandAndWaitResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandboxCommand, other.sandboxCommand); + } + + @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.sandboxCommand == null ? 43 : this.sandboxCommand.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandResponse.java new file mode 100644 index 00000000000..4b205f7b0db --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/RunSandboxCommandResponse.java @@ -0,0 +1,186 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class RunSandboxCommandResponse 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; + } + + /** The returned {@code SandboxCommandIdentifier} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier + sandboxCommandIdentifier; + + /** + * The returned {@code SandboxCommandIdentifier} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier + getSandboxCommandIdentifier() { + return sandboxCommandIdentifier; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "sandboxCommandIdentifier" + }) + private RunSandboxCommandResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier + sandboxCommandIdentifier) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.sandboxCommandIdentifier = sandboxCommandIdentifier; + } + + 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; + } + + /** The returned {@code SandboxCommandIdentifier} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier + sandboxCommandIdentifier; + + /** + * The returned {@code SandboxCommandIdentifier} instance. + * + * @param sandboxCommandIdentifier the value to set + * @return this builder + */ + public Builder sandboxCommandIdentifier( + com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier + sandboxCommandIdentifier) { + this.sandboxCommandIdentifier = sandboxCommandIdentifier; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(RunSandboxCommandResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + sandboxCommandIdentifier(o.getSandboxCommandIdentifier()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public RunSandboxCommandResponse build() { + return new RunSandboxCommandResponse( + __httpStatusCode__, headers, opcRequestId, sandboxCommandIdentifier); + } + } + + /** + * 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(",sandboxCommandIdentifier=").append(String.valueOf(sandboxCommandIdentifier)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof RunSandboxCommandResponse)) { + return false; + } + + RunSandboxCommandResponse other = (RunSandboxCommandResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals( + this.sandboxCommandIdentifier, other.sandboxCommandIdentifier); + } + + @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.sandboxCommandIdentifier == null + ? 43 + : this.sandboxCommandIdentifier.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/StopSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/StopSandboxResponse.java new file mode 100644 index 00000000000..88e6b0445a8 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/StopSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class StopSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private StopSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(StopSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public StopSandboxResponse build() { + return new StopSandboxResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof StopSandboxResponse)) { + return false; + } + + StopSandboxResponse other = (StopSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/StreamSandboxCommandEventsResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/StreamSandboxCommandEventsResponse.java new file mode 100644 index 00000000000..ebb7178dd5c --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/StreamSandboxCommandEventsResponse.java @@ -0,0 +1,231 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class StreamSandboxCommandEventsResponse 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; + } + + /** The returned {@code java.io.InputStream} instance. */ + private java.io.InputStream inputStream; + + /** + * The returned {@code java.io.InputStream} instance. + * + * @return the value + */ + public java.io.InputStream getInputStream() { + return inputStream; + } + /** + * Returns the event-stream for operations that support 'text/event-stream' media type. The + * value can be null in-case a non-streamed response is returned by the server. NOTE : Use + * try-with-resources or explicitly call eventStream.close() to close the stream. This is + * important to avoid the issue mentioned in the link below + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdktroubleshooting.htm#javasdktroubleshooting_topic_program_hangs_for_an_indefinite_time + * + * @return the event-stream + */ + private java.io.InputStream eventStream; + + /** + * Returns the event-stream for operations that support 'text/event-stream' media type. The + * value can be null in-case a non-streamed response is returned by the server. NOTE : Use + * try-with-resources or explicitly call getEventStream().close() to close the stream. This is + * important to avoid the issue mentioned in the link below + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdktroubleshooting.htm#javasdktroubleshooting_topic_program_hangs_for_an_indefinite_time + * + * @return the event-stream + */ + public java.io.InputStream getEventStream() { + return eventStream; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "inputStream", + "eventStream" + }) + private StreamSandboxCommandEventsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + java.io.InputStream inputStream, + java.io.InputStream eventStream) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.inputStream = inputStream; + + this.eventStream = eventStream; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + StreamSandboxCommandEventsResponse> { + 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; + } + + /** The returned {@code java.io.InputStream} instance. */ + private java.io.InputStream inputStream; + + /** + * The returned {@code java.io.InputStream} instance. + * + * @param inputStream the value to set + * @return this builder + */ + public Builder inputStream(java.io.InputStream inputStream) { + this.inputStream = inputStream; + return this; + } + + /** + * The event-stream for operations that support 'text/event-stream' media type. The value + * can be null in-case a non-streamed response is returned by the server. NOTE : Use + * try-with-resources or explicitly call eventStream.close() to close the stream. This is + * important to avoid the issue mentioned in the link below + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdktroubleshooting.htm#javasdktroubleshooting_topic_program_hangs_for_an_indefinite_time + * + * @return the event-stream + */ + private java.io.InputStream eventStream; + + /** + * Returns the event-stream for operations that support 'text/event-stream' media type. The + * value can be null in-case a non-streamed response is returned by the server. NOTE : Use + * try-with-resources or explicitly call eventStream.close() to close the stream. This is + * important to avoid the issue mentioned in the link below + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdktroubleshooting.htm#javasdktroubleshooting_topic_program_hangs_for_an_indefinite_time + * + * @return the event-stream + */ + public Builder eventStream(java.io.InputStream eventStream) { + this.eventStream = eventStream; + return this; + } + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(StreamSandboxCommandEventsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + inputStream(o.getInputStream()); + + eventStream(o.getEventStream()); + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public StreamSandboxCommandEventsResponse build() { + return new StreamSandboxCommandEventsResponse( + __httpStatusCode__, headers, opcRequestId, inputStream, eventStream); + } + } + + /** + * 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(",inputStream=").append(String.valueOf(inputStream)); + sb.append(",eventStream=").append(String.valueOf(eventStream)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof StreamSandboxCommandEventsResponse)) { + return false; + } + + StreamSandboxCommandEventsResponse other = (StreamSandboxCommandEventsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.inputStream, other.inputStream) + && java.util.Objects.equals(this.eventStream, other.eventStream); + } + + @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.inputStream == null ? 43 : this.inputStream.hashCode()); + result = (result * PRIME) + (this.eventStream == null ? 43 : this.eventStream.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/SuspendSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/SuspendSandboxResponse.java new file mode 100644 index 00000000000..82c5f233273 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/SuspendSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class SuspendSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private SuspendSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(SuspendSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public SuspendSandboxResponse build() { + return new SuspendSandboxResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SuspendSandboxResponse)) { + return false; + } + + SuspendSandboxResponse other = (SuspendSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/UpdateSandboxResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/UpdateSandboxResponse.java new file mode 100644 index 00000000000..b852b0c0974 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/UpdateSandboxResponse.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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class UpdateSandboxResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.Sandbox getSandbox() { + return sandbox; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "sandbox" + }) + private UpdateSandboxResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.sandbox = sandbox; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Sandbox} instance. */ + private com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox; + + /** + * The returned {@code Sandbox} instance. + * + * @param sandbox the value to set + * @return this builder + */ + public Builder sandbox(com.oracle.bmc.generativeaisandbox.model.Sandbox sandbox) { + this.sandbox = sandbox; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(UpdateSandboxResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + sandbox(o.getSandbox()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpdateSandboxResponse build() { + return new UpdateSandboxResponse( + __httpStatusCode__, headers, etag, opcRequestId, sandbox); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",sandbox=").append(String.valueOf(sandbox)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSandboxResponse)) { + return false; + } + + UpdateSandboxResponse other = (UpdateSandboxResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.sandbox, other.sandbox); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.sandbox == null ? 43 : this.sandbox.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/WriteSandboxFileResponse.java b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/WriteSandboxFileResponse.java new file mode 100644 index 00000000000..9358a3babf5 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/java/com/oracle/bmc/generativeaisandbox/responses/WriteSandboxFileResponse.java @@ -0,0 +1,211 @@ +/** + * 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.generativeaisandbox.responses; + +import com.oracle.bmc.generativeaisandbox.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 1.0") +public class WriteSandboxFileResponse 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; + } + + /** Base64-encoded SHA-256 checksum of the sandbox file content. */ + private String opcContentSha256; + + /** + * Base64-encoded SHA-256 checksum of the sandbox file content. + * + * @return the value + */ + public String getOpcContentSha256() { + return opcContentSha256; + } + + /** The returned {@code SandboxFile} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxFile sandboxFile; + + /** + * The returned {@code SandboxFile} instance. + * + * @return the value + */ + public com.oracle.bmc.generativeaisandbox.model.SandboxFile getSandboxFile() { + return sandboxFile; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcContentSha256", + "sandboxFile" + }) + private WriteSandboxFileResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcContentSha256, + com.oracle.bmc.generativeaisandbox.model.SandboxFile sandboxFile) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcContentSha256 = opcContentSha256; + this.sandboxFile = sandboxFile; + } + + 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; + } + + /** Base64-encoded SHA-256 checksum of the sandbox file content. */ + private String opcContentSha256; + + /** + * Base64-encoded SHA-256 checksum of the sandbox file content. + * + * @param opcContentSha256 the value to set + * @return this builder + */ + public Builder opcContentSha256(String opcContentSha256) { + this.opcContentSha256 = opcContentSha256; + return this; + } + + /** The returned {@code SandboxFile} instance. */ + private com.oracle.bmc.generativeaisandbox.model.SandboxFile sandboxFile; + + /** + * The returned {@code SandboxFile} instance. + * + * @param sandboxFile the value to set + * @return this builder + */ + public Builder sandboxFile( + com.oracle.bmc.generativeaisandbox.model.SandboxFile sandboxFile) { + this.sandboxFile = sandboxFile; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(WriteSandboxFileResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcContentSha256(o.getOpcContentSha256()); + sandboxFile(o.getSandboxFile()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public WriteSandboxFileResponse build() { + return new WriteSandboxFileResponse( + __httpStatusCode__, headers, opcRequestId, opcContentSha256, sandboxFile); + } + } + + /** + * 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(",opcContentSha256=").append(String.valueOf(opcContentSha256)); + sb.append(",sandboxFile=").append(String.valueOf(sandboxFile)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WriteSandboxFileResponse)) { + return false; + } + + WriteSandboxFileResponse other = (WriteSandboxFileResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcContentSha256, other.opcContentSha256) + && java.util.Objects.equals(this.sandboxFile, other.sandboxFile); + } + + @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.opcContentSha256 == null ? 43 : this.opcContentSha256.hashCode()); + result = (result * PRIME) + (this.sandboxFile == null ? 43 : this.sandboxFile.hashCode()); + return result; + } +} diff --git a/bmc-generativeaisandbox/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeaisandbox/reflect-config.json b/bmc-generativeaisandbox/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeaisandbox/reflect-config.json new file mode 100644 index 00000000000..2889bb094bb --- /dev/null +++ b/bmc-generativeaisandbox/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-generativeaisandbox/reflect-config.json @@ -0,0 +1,476 @@ +[ + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CancelSandboxCommandDetails$Signal", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CreateSandboxDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.CreateSandboxSnapshotDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.EnvironmentVariable", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.EnvironmentVariable$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.ErrorResponse", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.ErrorResponse$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.ExtendSandboxDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.PublishedPort", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.PublishedPort$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.ResumeSandboxDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.RunSandboxCommandDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.Sandbox", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.Sandbox$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.Sandbox$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.Sandbox$PublishedPortAuthMode", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.Sandbox$Shape", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommand", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommand$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandEvent", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandEvent$Event", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandFinishedEvent", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandFinishedEvent$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandIdentifier$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandOutput$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandStartedEvent", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandStartedEvent$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandStderrEvent", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandStderrEvent$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandStdoutEvent", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandStdoutEvent$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxCommandSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxFile", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxFile$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshot$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSource", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSource$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSnapshotSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSource", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSource$SourceType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SandboxSummary$Shape", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SortOrder", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.StopSandboxDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.SuspendSandboxDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.generativeaisandbox.model.UpdateSandboxDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + } +] \ No newline at end of file diff --git a/bmc-generativeaisandbox/src/main/resources/com/oracle/bmc/generativeaisandbox/client.properties b/bmc-generativeaisandbox/src/main/resources/com/oracle/bmc/generativeaisandbox/client.properties new file mode 100644 index 00000000000..13ce22b1391 --- /dev/null +++ b/bmc-generativeaisandbox/src/main/resources/com/oracle/bmc/generativeaisandbox/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: 1.0") \ No newline at end of file diff --git a/bmc-genericartifactscontent/pom.xml b/bmc-genericartifactscontent/pom.xml index 3a5fb1f0864..6e1d2eaa2a9 100644 --- a/bmc-genericartifactscontent/pom.xml +++ b/bmc-genericartifactscontent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-genericartifactscontent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-goldengate/pom.xml b/bmc-goldengate/pom.xml index 7446fd81c62..3a43bbb8c8f 100644 --- a/bmc-goldengate/pom.xml +++ b/bmc-goldengate/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-goldengate @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnection.java index 84abbedd8ca..e21ee449f7e 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnection.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnection.java @@ -256,6 +256,35 @@ public Builder providerType(ProviderType providerType) { this.__explicitlySet__.add("providerType"); return this; } + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. + * When {@code providerId} is set, {@code providerType} and {@code authDetails} must not be + * provided on the AI Model Connection, because provider metadata is resolved from the + * referenced AI Provider Connection. When {@code providerId} is not set, the AI Model + * Connection must provide inline provider metadata using {@code providerType} and {@code + * authDetails}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("providerId") + private String providerId; + + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. + * When {@code providerId} is set, {@code providerType} and {@code authDetails} must not be + * provided on the AI Model Connection, because provider metadata is resolved from the + * referenced AI Provider Connection. When {@code providerId} is not set, the AI Model + * Connection must provide inline provider metadata using {@code providerType} and {@code + * authDetails}. + * + * @param providerId the value to set + * @return this builder + */ + public Builder providerId(String providerId) { + this.providerId = providerId; + this.__explicitlySet__.add("providerId"); + return this; + } /** AI model identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("modelKey") private String modelKey; @@ -326,6 +355,7 @@ public AiModelConnection build() { this.securityAttributes, this.technologyType, this.providerType, + this.providerId, this.modelKey, this.maxInputChars, this.authDetails); @@ -409,6 +439,9 @@ public Builder copy(AiModelConnection model) { if (model.wasPropertyExplicitlySet("providerType")) { this.providerType(model.getProviderType()); } + if (model.wasPropertyExplicitlySet("providerId")) { + this.providerId(model.getProviderId()); + } if (model.wasPropertyExplicitlySet("modelKey")) { this.modelKey(model.getModelKey()); } @@ -457,6 +490,7 @@ public AiModelConnection( java.util.Map> securityAttributes, TechnologyType technologyType, ProviderType providerType, + String providerId, String modelKey, Integer maxInputChars, AiModelAuthDetails authDetails) { @@ -485,6 +519,7 @@ public AiModelConnection( securityAttributes); this.technologyType = technologyType; this.providerType = providerType; + this.providerId = providerId; this.modelKey = modelKey; this.maxInputChars = maxInputChars; this.authDetails = authDetails; @@ -609,6 +644,31 @@ public ProviderType getProviderType() { return providerType; } + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. When + * {@code providerId} is set, {@code providerType} and {@code authDetails} must not be provided + * on the AI Model Connection, because provider metadata is resolved from the referenced AI + * Provider Connection. When {@code providerId} is not set, the AI Model Connection must provide + * inline provider metadata using {@code providerType} and {@code authDetails}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("providerId") + private final String providerId; + + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. When + * {@code providerId} is set, {@code providerType} and {@code authDetails} must not be provided + * on the AI Model Connection, because provider metadata is resolved from the referenced AI + * Provider Connection. When {@code providerId} is not set, the AI Model Connection must provide + * inline provider metadata using {@code providerType} and {@code authDetails}. + * + * @return the value + */ + public String getProviderId() { + return providerId; + } + /** AI model identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("modelKey") private final String modelKey; @@ -659,6 +719,7 @@ public String toString(boolean includeByteArrayContents) { sb.append("super=").append(super.toString(includeByteArrayContents)); sb.append(", technologyType=").append(String.valueOf(this.technologyType)); sb.append(", providerType=").append(String.valueOf(this.providerType)); + sb.append(", providerId=").append(String.valueOf(this.providerId)); sb.append(", modelKey=").append(String.valueOf(this.modelKey)); sb.append(", maxInputChars=").append(String.valueOf(this.maxInputChars)); sb.append(", authDetails=").append(String.valueOf(this.authDetails)); @@ -678,6 +739,7 @@ public boolean equals(Object o) { AiModelConnection other = (AiModelConnection) o; return java.util.Objects.equals(this.technologyType, other.technologyType) && java.util.Objects.equals(this.providerType, other.providerType) + && java.util.Objects.equals(this.providerId, other.providerId) && java.util.Objects.equals(this.modelKey, other.modelKey) && java.util.Objects.equals(this.maxInputChars, other.maxInputChars) && java.util.Objects.equals(this.authDetails, other.authDetails) @@ -692,6 +754,7 @@ public int hashCode() { (result * PRIME) + (this.technologyType == null ? 43 : this.technologyType.hashCode()); result = (result * PRIME) + (this.providerType == null ? 43 : this.providerType.hashCode()); + result = (result * PRIME) + (this.providerId == null ? 43 : this.providerId.hashCode()); result = (result * PRIME) + (this.modelKey == null ? 43 : this.modelKey.hashCode()); result = (result * PRIME) diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnectionSummary.java index 1d8014e665e..2fb737a2e3d 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnectionSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiModelConnectionSummary.java @@ -256,6 +256,35 @@ public Builder providerType(ProviderType providerType) { this.__explicitlySet__.add("providerType"); return this; } + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. + * When {@code providerId} is set, {@code providerType} and {@code authDetails} must not be + * provided on the AI Model Connection, because provider metadata is resolved from the + * referenced AI Provider Connection. When {@code providerId} is not set, the AI Model + * Connection must provide inline provider metadata using {@code providerType} and {@code + * authDetails}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("providerId") + private String providerId; + + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. + * When {@code providerId} is set, {@code providerType} and {@code authDetails} must not be + * provided on the AI Model Connection, because provider metadata is resolved from the + * referenced AI Provider Connection. When {@code providerId} is not set, the AI Model + * Connection must provide inline provider metadata using {@code providerType} and {@code + * authDetails}. + * + * @param providerId the value to set + * @return this builder + */ + public Builder providerId(String providerId) { + this.providerId = providerId; + this.__explicitlySet__.add("providerId"); + return this; + } /** AI model identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("modelKey") private String modelKey; @@ -326,6 +355,7 @@ public AiModelConnectionSummary build() { this.securityAttributes, this.technologyType, this.providerType, + this.providerId, this.modelKey, this.maxInputChars, this.authDetails); @@ -409,6 +439,9 @@ public Builder copy(AiModelConnectionSummary model) { if (model.wasPropertyExplicitlySet("providerType")) { this.providerType(model.getProviderType()); } + if (model.wasPropertyExplicitlySet("providerId")) { + this.providerId(model.getProviderId()); + } if (model.wasPropertyExplicitlySet("modelKey")) { this.modelKey(model.getModelKey()); } @@ -457,6 +490,7 @@ public AiModelConnectionSummary( java.util.Map> securityAttributes, AiModelConnection.TechnologyType technologyType, ProviderType providerType, + String providerId, String modelKey, Integer maxInputChars, AiModelAuthDetailsSummary authDetails) { @@ -485,6 +519,7 @@ public AiModelConnectionSummary( securityAttributes); this.technologyType = technologyType; this.providerType = providerType; + this.providerId = providerId; this.modelKey = modelKey; this.maxInputChars = maxInputChars; this.authDetails = authDetails; @@ -564,6 +599,31 @@ public ProviderType getProviderType() { return providerType; } + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. When + * {@code providerId} is set, {@code providerType} and {@code authDetails} must not be provided + * on the AI Model Connection, because provider metadata is resolved from the referenced AI + * Provider Connection. When {@code providerId} is not set, the AI Model Connection must provide + * inline provider metadata using {@code providerType} and {@code authDetails}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("providerId") + private final String providerId; + + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. When + * {@code providerId} is set, {@code providerType} and {@code authDetails} must not be provided + * on the AI Model Connection, because provider metadata is resolved from the referenced AI + * Provider Connection. When {@code providerId} is not set, the AI Model Connection must provide + * inline provider metadata using {@code providerType} and {@code authDetails}. + * + * @return the value + */ + public String getProviderId() { + return providerId; + } + /** AI model identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("modelKey") private final String modelKey; @@ -614,6 +674,7 @@ public String toString(boolean includeByteArrayContents) { sb.append("super=").append(super.toString(includeByteArrayContents)); sb.append(", technologyType=").append(String.valueOf(this.technologyType)); sb.append(", providerType=").append(String.valueOf(this.providerType)); + sb.append(", providerId=").append(String.valueOf(this.providerId)); sb.append(", modelKey=").append(String.valueOf(this.modelKey)); sb.append(", maxInputChars=").append(String.valueOf(this.maxInputChars)); sb.append(", authDetails=").append(String.valueOf(this.authDetails)); @@ -633,6 +694,7 @@ public boolean equals(Object o) { AiModelConnectionSummary other = (AiModelConnectionSummary) o; return java.util.Objects.equals(this.technologyType, other.technologyType) && java.util.Objects.equals(this.providerType, other.providerType) + && java.util.Objects.equals(this.providerId, other.providerId) && java.util.Objects.equals(this.modelKey, other.modelKey) && java.util.Objects.equals(this.maxInputChars, other.maxInputChars) && java.util.Objects.equals(this.authDetails, other.authDetails) @@ -647,6 +709,7 @@ public int hashCode() { (result * PRIME) + (this.technologyType == null ? 43 : this.technologyType.hashCode()); result = (result * PRIME) + (this.providerType == null ? 43 : this.providerType.hashCode()); + result = (result * PRIME) + (this.providerId == null ? 43 : this.providerId.hashCode()); result = (result * PRIME) + (this.modelKey == null ? 43 : this.modelKey.hashCode()); result = (result * PRIME) diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiProviderConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiProviderConnection.java new file mode 100644 index 00000000000..8124939c3f4 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiProviderConnection.java @@ -0,0 +1,544 @@ +/** + * 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.goldengate.model; + +/** + * Represents the metadata of an AI Provider Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AiProviderConnection.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AiProviderConnection extends Connection { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + 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("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The AI Provider technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private TechnologyType technologyType; + + /** + * The AI Provider technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private AiModelAuthDetails authDetails; + + public Builder authDetails(AiModelAuthDetails authDetails) { + this.authDetails = authDetails; + this.__explicitlySet__.add("authDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AiProviderConnection build() { + AiProviderConnection model = + new AiProviderConnection( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.locks, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.authDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AiProviderConnection model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("authDetails")) { + this.authDetails(model.getAuthDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public AiProviderConnection( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.List locks, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + TechnologyType technologyType, + AiModelAuthDetails authDetails) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + locks, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authDetails = authDetails; + } + + /** The AI Provider technology type. */ + public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { + OciGenerativeAi("OCI_GENERATIVE_AI"), + Gemini("GEMINI"), + OpenAi("OPEN_AI"), + VoyageAi("VOYAGE_AI"), + + /** + * 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(TechnologyType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (TechnologyType v : TechnologyType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + TechnologyType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static TechnologyType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'TechnologyType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** The AI Provider technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final TechnologyType technologyType; + + /** + * The AI Provider technology type. + * + * @return the value + */ + public TechnologyType getTechnologyType() { + return technologyType; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private final AiModelAuthDetails authDetails; + + public AiModelAuthDetails getAuthDetails() { + return authDetails; + } + + @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("AiProviderConnection("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", authDetails=").append(String.valueOf(this.authDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AiProviderConnection)) { + return false; + } + + AiProviderConnection other = (AiProviderConnection) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.authDetails, other.authDetails) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.authDetails == null ? 43 : this.authDetails.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiProviderConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiProviderConnectionSummary.java new file mode 100644 index 00000000000..b2384cc3fab --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AiProviderConnectionSummary.java @@ -0,0 +1,496 @@ +/** + * 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.goldengate.model; + +/** + * Summary of the AI Provider Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AiProviderConnectionSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AiProviderConnectionSummary extends ConnectionSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private Connection.LifecycleState lifecycleState; + + public Builder lifecycleState(Connection.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The AI Provider technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private AiProviderConnection.TechnologyType technologyType; + + /** + * The AI Provider technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(AiProviderConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private AiModelAuthDetailsSummary authDetails; + + public Builder authDetails(AiModelAuthDetailsSummary authDetails) { + this.authDetails = authDetails; + this.__explicitlySet__.add("authDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AiProviderConnectionSummary build() { + AiProviderConnectionSummary model = + new AiProviderConnectionSummary( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.locks, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.authDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AiProviderConnectionSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("authDetails")) { + this.authDetails(model.getAuthDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public AiProviderConnectionSummary( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + Connection.LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + java.util.List locks, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + AiProviderConnection.TechnologyType technologyType, + AiModelAuthDetailsSummary authDetails) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + locks, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authDetails = authDetails; + } + + /** The AI Provider technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final AiProviderConnection.TechnologyType technologyType; + + /** + * The AI Provider technology type. + * + * @return the value + */ + public AiProviderConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private final AiModelAuthDetailsSummary authDetails; + + public AiModelAuthDetailsSummary getAuthDetails() { + return authDetails; + } + + @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("AiProviderConnectionSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", authDetails=").append(String.valueOf(this.authDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AiProviderConnectionSummary)) { + return false; + } + + AiProviderConnectionSummary other = (AiProviderConnectionSummary) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.authDetails, other.authDetails) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.authDetails == null ? 43 : this.authDetails.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AzureDataLakeStorageDatabricksEngineArtifactLocation.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AzureDataLakeStorageDatabricksEngineArtifactLocation.java new file mode 100644 index 00000000000..e8656793e96 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AzureDataLakeStorageDatabricksEngineArtifactLocation.java @@ -0,0 +1,330 @@ +/** + * 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.goldengate.model; + +/** + * Represents an Azure Data Lake Storage Gen2 location used to share Databricks application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AzureDataLakeStorageDatabricksEngineArtifactLocation.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AzureDataLakeStorageDatabricksEngineArtifactLocation + extends DatabricksEngineArtifactLocation { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @param storageAccount the value to set + * @return this builder + */ + public Builder storageAccount(String storageAccount) { + this.storageAccount = storageAccount; + this.__explicitlySet__.add("storageAccount"); + return this; + } + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @param filesystem the value to set + * @return this builder + */ + public Builder filesystem(String filesystem) { + this.filesystem = filesystem; + this.__explicitlySet__.add("filesystem"); + return this; + } + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @param endpointSuffix the value to set + * @return this builder + */ + public Builder endpointSuffix(String endpointSuffix) { + this.endpointSuffix = endpointSuffix; + this.__explicitlySet__.add("endpointSuffix"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + * + * @param accountKeySecretId the value to set + * @return this builder + */ + public Builder accountKeySecretId(String accountKeySecretId) { + this.accountKeySecretId = accountKeySecretId; + this.__explicitlySet__.add("accountKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AzureDataLakeStorageDatabricksEngineArtifactLocation build() { + AzureDataLakeStorageDatabricksEngineArtifactLocation model = + new AzureDataLakeStorageDatabricksEngineArtifactLocation( + this.shouldOverwriteExisting, + this.storageAccount, + this.filesystem, + this.path, + this.endpointSuffix, + this.accountKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AzureDataLakeStorageDatabricksEngineArtifactLocation model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("storageAccount")) { + this.storageAccount(model.getStorageAccount()); + } + if (model.wasPropertyExplicitlySet("filesystem")) { + this.filesystem(model.getFilesystem()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("endpointSuffix")) { + this.endpointSuffix(model.getEndpointSuffix()); + } + if (model.wasPropertyExplicitlySet("accountKeySecretId")) { + this.accountKeySecretId(model.getAccountKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public AzureDataLakeStorageDatabricksEngineArtifactLocation( + Boolean shouldOverwriteExisting, + String storageAccount, + String filesystem, + String path, + String endpointSuffix, + String accountKeySecretId) { + super(shouldOverwriteExisting); + this.storageAccount = storageAccount; + this.filesystem = filesystem; + this.path = path; + this.endpointSuffix = endpointSuffix; + this.accountKeySecretId = accountKeySecretId; + } + + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private final String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @return the value + */ + public String getStorageAccount() { + return storageAccount; + } + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private final String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @return the value + */ + public String getFilesystem() { + return filesystem; + } + + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private final String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @return the value + */ + public String getEndpointSuffix() { + return endpointSuffix; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private final String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + * + * @return the value + */ + public String getAccountKeySecretId() { + return accountKeySecretId; + } + + @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("AzureDataLakeStorageDatabricksEngineArtifactLocation("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", storageAccount=").append(String.valueOf(this.storageAccount)); + sb.append(", filesystem=").append(String.valueOf(this.filesystem)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", endpointSuffix=").append(String.valueOf(this.endpointSuffix)); + sb.append(", accountKeySecretId=").append(String.valueOf(this.accountKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AzureDataLakeStorageDatabricksEngineArtifactLocation)) { + return false; + } + + AzureDataLakeStorageDatabricksEngineArtifactLocation other = + (AzureDataLakeStorageDatabricksEngineArtifactLocation) o; + return java.util.Objects.equals(this.storageAccount, other.storageAccount) + && java.util.Objects.equals(this.filesystem, other.filesystem) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.endpointSuffix, other.endpointSuffix) + && java.util.Objects.equals(this.accountKeySecretId, other.accountKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.storageAccount == null ? 43 : this.storageAccount.hashCode()); + result = (result * PRIME) + (this.filesystem == null ? 43 : this.filesystem.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = + (result * PRIME) + + (this.endpointSuffix == null ? 43 : this.endpointSuffix.hashCode()); + result = + (result * PRIME) + + (this.accountKeySecretId == null + ? 43 + : this.accountKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AzureDataLakeStorageDatabricksEngineArtifactLocationSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AzureDataLakeStorageDatabricksEngineArtifactLocationSummary.java new file mode 100644 index 00000000000..8c9c725c484 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/AzureDataLakeStorageDatabricksEngineArtifactLocationSummary.java @@ -0,0 +1,330 @@ +/** + * 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.goldengate.model; + +/** + * Summary of an Azure Data Lake Storage Gen2 location used to share Databricks application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AzureDataLakeStorageDatabricksEngineArtifactLocationSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AzureDataLakeStorageDatabricksEngineArtifactLocationSummary + extends DatabricksEngineArtifactLocationSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @param storageAccount the value to set + * @return this builder + */ + public Builder storageAccount(String storageAccount) { + this.storageAccount = storageAccount; + this.__explicitlySet__.add("storageAccount"); + return this; + } + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @param filesystem the value to set + * @return this builder + */ + public Builder filesystem(String filesystem) { + this.filesystem = filesystem; + this.__explicitlySet__.add("filesystem"); + return this; + } + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @param endpointSuffix the value to set + * @return this builder + */ + public Builder endpointSuffix(String endpointSuffix) { + this.endpointSuffix = endpointSuffix; + this.__explicitlySet__.add("endpointSuffix"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + * + * @param accountKeySecretId the value to set + * @return this builder + */ + public Builder accountKeySecretId(String accountKeySecretId) { + this.accountKeySecretId = accountKeySecretId; + this.__explicitlySet__.add("accountKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AzureDataLakeStorageDatabricksEngineArtifactLocationSummary build() { + AzureDataLakeStorageDatabricksEngineArtifactLocationSummary model = + new AzureDataLakeStorageDatabricksEngineArtifactLocationSummary( + this.shouldOverwriteExisting, + this.storageAccount, + this.filesystem, + this.path, + this.endpointSuffix, + this.accountKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AzureDataLakeStorageDatabricksEngineArtifactLocationSummary model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("storageAccount")) { + this.storageAccount(model.getStorageAccount()); + } + if (model.wasPropertyExplicitlySet("filesystem")) { + this.filesystem(model.getFilesystem()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("endpointSuffix")) { + this.endpointSuffix(model.getEndpointSuffix()); + } + if (model.wasPropertyExplicitlySet("accountKeySecretId")) { + this.accountKeySecretId(model.getAccountKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public AzureDataLakeStorageDatabricksEngineArtifactLocationSummary( + Boolean shouldOverwriteExisting, + String storageAccount, + String filesystem, + String path, + String endpointSuffix, + String accountKeySecretId) { + super(shouldOverwriteExisting); + this.storageAccount = storageAccount; + this.filesystem = filesystem; + this.path = path; + this.endpointSuffix = endpointSuffix; + this.accountKeySecretId = accountKeySecretId; + } + + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private final String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @return the value + */ + public String getStorageAccount() { + return storageAccount; + } + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private final String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @return the value + */ + public String getFilesystem() { + return filesystem; + } + + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private final String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @return the value + */ + public String getEndpointSuffix() { + return endpointSuffix; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private final String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + * + * @return the value + */ + public String getAccountKeySecretId() { + return accountKeySecretId; + } + + @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("AzureDataLakeStorageDatabricksEngineArtifactLocationSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", storageAccount=").append(String.valueOf(this.storageAccount)); + sb.append(", filesystem=").append(String.valueOf(this.filesystem)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", endpointSuffix=").append(String.valueOf(this.endpointSuffix)); + sb.append(", accountKeySecretId=").append(String.valueOf(this.accountKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AzureDataLakeStorageDatabricksEngineArtifactLocationSummary)) { + return false; + } + + AzureDataLakeStorageDatabricksEngineArtifactLocationSummary other = + (AzureDataLakeStorageDatabricksEngineArtifactLocationSummary) o; + return java.util.Objects.equals(this.storageAccount, other.storageAccount) + && java.util.Objects.equals(this.filesystem, other.filesystem) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.endpointSuffix, other.endpointSuffix) + && java.util.Objects.equals(this.accountKeySecretId, other.accountKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.storageAccount == null ? 43 : this.storageAccount.hashCode()); + result = (result * PRIME) + (this.filesystem == null ? 43 : this.filesystem.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = + (result * PRIME) + + (this.endpointSuffix == null ? 43 : this.endpointSuffix.hashCode()); + result = + (result * PRIME) + + (this.accountKeySecretId == null + ? 43 + : this.accountKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/Connection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/Connection.java index 4b160c060aa..76a56d267e4 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/Connection.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/Connection.java @@ -54,6 +54,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = MicrosoftSqlserverConnection.class, name = "MICROSOFT_SQLSERVER"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = AiProviderConnection.class, + name = "AI_PROVIDER"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = IcebergConnection.class, name = "ICEBERG"), @@ -72,9 +75,15 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = JavaMessageServiceConnection.class, name = "JAVA_MESSAGE_SERVICE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SparkConnection.class, + name = "SPARK"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = SnowflakeConnection.class, name = "SNOWFLAKE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DatabricksEngineConnection.class, + name = "DATABRICKS_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = GoldenGateConnection.class, name = "GOLDENGATE"), @@ -93,6 +102,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = GoogleCloudStorageConnection.class, name = "GOOGLE_CLOUD_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = OracleAiDataPlatformEngineConnection.class, + name = "ORACLE_AI_DATA_PLATFORM_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = OracleAiDataPlatformConnection.class, name = "ORACLE_AI_DATA_PLATFORM"), diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionSummary.java index 01efd89a23e..bc37c2edc08 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionSummary.java @@ -61,6 +61,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = GooglePubSubConnectionSummary.class, name = "GOOGLE_PUBSUB"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = OracleAiDataPlatformEngineConnectionSummary.class, + name = "ORACLE_AI_DATA_PLATFORM_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = GoogleCloudStorageConnectionSummary.class, name = "GOOGLE_CLOUD_STORAGE"), @@ -79,9 +82,15 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = RedisConnectionSummary.class, name = "REDIS"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SparkConnectionSummary.class, + name = "SPARK"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = AzureDataLakeStorageConnectionSummary.class, name = "AZURE_DATA_LAKE_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = AiProviderConnectionSummary.class, + name = "AI_PROVIDER"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = GoogleBigQueryConnectionSummary.class, name = "GOOGLE_BIGQUERY"), @@ -111,7 +120,10 @@ name = "DATABRICKS"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = HdfsConnectionSummary.class, - name = "HDFS") + name = "HDFS"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DatabricksEngineConnectionSummary.class, + name = "DATABRICKS_ENGINE") }) @com.fasterxml.jackson.annotation.JsonFilter( com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionType.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionType.java index b376d97ccea..e9e7d89d275 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionType.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/ConnectionType.java @@ -22,6 +22,7 @@ public enum ConnectionType implements com.oracle.bmc.http.internal.BmcEnum { AmazonS3("AMAZON_S3"), Hdfs("HDFS"), OracleAiDataPlatform("ORACLE_AI_DATA_PLATFORM"), + OracleAiDataPlatformEngine("ORACLE_AI_DATA_PLATFORM_ENGINE"), OracleNosql("ORACLE_NOSQL"), Mongodb("MONGODB"), AmazonKinesis("AMAZON_KINESIS"), @@ -33,9 +34,12 @@ public enum ConnectionType implements com.oracle.bmc.http.internal.BmcEnum { GoogleCloudStorage("GOOGLE_CLOUD_STORAGE"), GoogleBigquery("GOOGLE_BIGQUERY"), Databricks("DATABRICKS"), + DatabricksEngine("DATABRICKS_ENGINE"), GooglePubsub("GOOGLE_PUBSUB"), MicrosoftFabric("MICROSOFT_FABRIC"), + Spark("SPARK"), Iceberg("ICEBERG"), + AiProvider("AI_PROVIDER"), AiModel("AI_MODEL"), /** diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiModelConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiModelConnectionDetails.java index 5f6929f3b6d..95ff865c15d 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiModelConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiModelConnectionDetails.java @@ -193,6 +193,35 @@ public Builder providerType(ProviderType providerType) { this.__explicitlySet__.add("providerType"); return this; } + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. + * When {@code providerId} is set, {@code providerType} and {@code authDetails} must not be + * provided on the AI Model Connection, because provider metadata is resolved from the + * referenced AI Provider Connection. When {@code providerId} is not set, the AI Model + * Connection must provide inline provider metadata using {@code providerType} and {@code + * authDetails}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("providerId") + private String providerId; + + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. + * When {@code providerId} is set, {@code providerType} and {@code authDetails} must not be + * provided on the AI Model Connection, because provider metadata is resolved from the + * referenced AI Provider Connection. When {@code providerId} is not set, the AI Model + * Connection must provide inline provider metadata using {@code providerType} and {@code + * authDetails}. + * + * @param providerId the value to set + * @return this builder + */ + public Builder providerId(String providerId) { + this.providerId = providerId; + this.__explicitlySet__.add("providerId"); + return this; + } /** AI model identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("modelKey") private String modelKey; @@ -256,6 +285,7 @@ public CreateAiModelConnectionDetails build() { this.securityAttributes, this.technologyType, this.providerType, + this.providerId, this.modelKey, this.maxInputChars, this.authDetails); @@ -318,6 +348,9 @@ public Builder copy(CreateAiModelConnectionDetails model) { if (model.wasPropertyExplicitlySet("providerType")) { this.providerType(model.getProviderType()); } + if (model.wasPropertyExplicitlySet("providerId")) { + this.providerId(model.getProviderId()); + } if (model.wasPropertyExplicitlySet("modelKey")) { this.modelKey(model.getModelKey()); } @@ -359,6 +392,7 @@ public CreateAiModelConnectionDetails( java.util.Map> securityAttributes, AiModelConnection.TechnologyType technologyType, ProviderType providerType, + String providerId, String modelKey, Integer maxInputChars, CreateAiModelAuthDetails authDetails) { @@ -380,6 +414,7 @@ public CreateAiModelConnectionDetails( securityAttributes); this.technologyType = technologyType; this.providerType = providerType; + this.providerId = providerId; this.modelKey = modelKey; this.maxInputChars = maxInputChars; this.authDetails = authDetails; @@ -446,6 +481,31 @@ public ProviderType getProviderType() { return providerType; } + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. When + * {@code providerId} is set, {@code providerType} and {@code authDetails} must not be provided + * on the AI Model Connection, because provider metadata is resolved from the referenced AI + * Provider Connection. When {@code providerId} is not set, the AI Model Connection must provide + * inline provider metadata using {@code providerType} and {@code authDetails}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("providerId") + private final String providerId; + + /** + * Optional identifier of the AI Provider Connection backing this AI Model Connection. When + * provided, it must reference an existing Active connection of type {@code AI_PROVIDER}. When + * {@code providerId} is set, {@code providerType} and {@code authDetails} must not be provided + * on the AI Model Connection, because provider metadata is resolved from the referenced AI + * Provider Connection. When {@code providerId} is not set, the AI Model Connection must provide + * inline provider metadata using {@code providerType} and {@code authDetails}. + * + * @return the value + */ + public String getProviderId() { + return providerId; + } + /** AI model identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("modelKey") private final String modelKey; @@ -496,6 +556,7 @@ public String toString(boolean includeByteArrayContents) { sb.append("super=").append(super.toString(includeByteArrayContents)); sb.append(", technologyType=").append(String.valueOf(this.technologyType)); sb.append(", providerType=").append(String.valueOf(this.providerType)); + sb.append(", providerId=").append(String.valueOf(this.providerId)); sb.append(", modelKey=").append(String.valueOf(this.modelKey)); sb.append(", maxInputChars=").append(String.valueOf(this.maxInputChars)); sb.append(", authDetails=").append(String.valueOf(this.authDetails)); @@ -515,6 +576,7 @@ public boolean equals(Object o) { CreateAiModelConnectionDetails other = (CreateAiModelConnectionDetails) o; return java.util.Objects.equals(this.technologyType, other.technologyType) && java.util.Objects.equals(this.providerType, other.providerType) + && java.util.Objects.equals(this.providerId, other.providerId) && java.util.Objects.equals(this.modelKey, other.modelKey) && java.util.Objects.equals(this.maxInputChars, other.maxInputChars) && java.util.Objects.equals(this.authDetails, other.authDetails) @@ -529,6 +591,7 @@ public int hashCode() { (result * PRIME) + (this.technologyType == null ? 43 : this.technologyType.hashCode()); result = (result * PRIME) + (this.providerType == null ? 43 : this.providerType.hashCode()); + result = (result * PRIME) + (this.providerId == null ? 43 : this.providerId.hashCode()); result = (result * PRIME) + (this.modelKey == null ? 43 : this.modelKey.hashCode()); result = (result * PRIME) diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiProviderConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiProviderConnectionDetails.java new file mode 100644 index 00000000000..b5ec6a6dcdc --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAiProviderConnectionDetails.java @@ -0,0 +1,391 @@ +/** + * 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.goldengate.model; + +/** + * The information about a new AI Provider Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateAiProviderConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateAiProviderConnectionDetails extends CreateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The AI Provider technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private AiProviderConnection.TechnologyType technologyType; + + /** + * The AI Provider technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(AiProviderConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private CreateAiModelAuthDetails authDetails; + + public Builder authDetails(CreateAiModelAuthDetails authDetails) { + this.authDetails = authDetails; + this.__explicitlySet__.add("authDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateAiProviderConnectionDetails build() { + CreateAiProviderConnectionDetails model = + new CreateAiProviderConnectionDetails( + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.locks, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.authDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateAiProviderConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("authDetails")) { + this.authDetails(model.getAuthDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateAiProviderConnectionDetails( + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.List locks, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + AiProviderConnection.TechnologyType technologyType, + CreateAiModelAuthDetails authDetails) { + super( + displayName, + description, + compartmentId, + freeformTags, + definedTags, + locks, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authDetails = authDetails; + } + + /** The AI Provider technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final AiProviderConnection.TechnologyType technologyType; + + /** + * The AI Provider technology type. + * + * @return the value + */ + public AiProviderConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private final CreateAiModelAuthDetails authDetails; + + public CreateAiModelAuthDetails getAuthDetails() { + return authDetails; + } + + @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("CreateAiProviderConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", authDetails=").append(String.valueOf(this.authDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateAiProviderConnectionDetails)) { + return false; + } + + CreateAiProviderConnectionDetails other = (CreateAiProviderConnectionDetails) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.authDetails, other.authDetails) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.authDetails == null ? 43 : this.authDetails.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..e683b8a8ef8 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.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.goldengate.model; + +/** + * The information about an Azure Data Lake Storage Gen2 location used to share Databricks + * application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails + extends CreateDatabricksEngineArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @param storageAccount the value to set + * @return this builder + */ + public Builder storageAccount(String storageAccount) { + this.storageAccount = storageAccount; + this.__explicitlySet__.add("storageAccount"); + return this; + } + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @param filesystem the value to set + * @return this builder + */ + public Builder filesystem(String filesystem) { + this.filesystem = filesystem; + this.__explicitlySet__.add("filesystem"); + return this; + } + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @param endpointSuffix the value to set + * @return this builder + */ + public Builder endpointSuffix(String endpointSuffix) { + this.endpointSuffix = endpointSuffix; + this.__explicitlySet__.add("endpointSuffix"); + return this; + } + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") + private char[] accountKey; + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param accountKey the value to set + * @return this builder + */ + public Builder accountKey(char[] accountKey) { + this.accountKey = accountKey; + this.__explicitlySet__.add("accountKey"); + return this; + } + + public Builder accountKey(String accountKey) { + this.accountKey = accountKey != null ? accountKey.toCharArray() : null; + this.__explicitlySet__.add("accountKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + * + * @param accountKeySecretId the value to set + * @return this builder + */ + public Builder accountKeySecretId(String accountKeySecretId) { + this.accountKeySecretId = accountKeySecretId; + this.__explicitlySet__.add("accountKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails build() { + CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails model = + new CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails( + this.shouldOverwriteExisting, + this.storageAccount, + this.filesystem, + this.path, + this.endpointSuffix, + this.accountKey, + this.accountKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("storageAccount")) { + this.storageAccount(model.getStorageAccount()); + } + if (model.wasPropertyExplicitlySet("filesystem")) { + this.filesystem(model.getFilesystem()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("endpointSuffix")) { + this.endpointSuffix(model.getEndpointSuffix()); + } + if (model.wasPropertyExplicitlySet("accountKey")) { + this.accountKey(model.getAccountKey()); + } + if (model.wasPropertyExplicitlySet("accountKeySecretId")) { + this.accountKeySecretId(model.getAccountKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails( + Boolean shouldOverwriteExisting, + String storageAccount, + String filesystem, + String path, + String endpointSuffix, + String accountKey, + String accountKeySecretId) { + super(shouldOverwriteExisting); + this.storageAccount = storageAccount; + this.filesystem = filesystem; + this.path = path; + this.endpointSuffix = endpointSuffix; + this.accountKey = accountKey != null ? accountKey.toCharArray() : null; + this.accountKeySecretId = accountKeySecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails( + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + Boolean shouldOverwriteExisting, + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") String storageAccount, + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") String filesystem, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") String endpointSuffix, + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") char[] accountKey, + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + String accountKeySecretId) { + super(shouldOverwriteExisting); + this.storageAccount = storageAccount; + this.filesystem = filesystem; + this.path = path; + this.endpointSuffix = endpointSuffix; + this.accountKey = accountKey; + this.accountKeySecretId = accountKeySecretId; + } + + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private final String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @return the value + */ + public String getStorageAccount() { + return storageAccount; + } + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private final String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @return the value + */ + public String getFilesystem() { + return filesystem; + } + + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private final String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @return the value + */ + public String getEndpointSuffix() { + return endpointSuffix; + } + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in Connections" + * deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") + private final char[] accountKey; + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getAccountKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAccountKey() { + return accountKey != null ? new String(accountKey) : null; + } + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in Connections" + * deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") + public char[] getAccountKey__AsCharArray() { + return accountKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private final String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + * + * @return the value + */ + public String getAccountKeySecretId() { + return accountKeySecretId; + } + + @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("CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", storageAccount=").append(String.valueOf(this.storageAccount)); + sb.append(", filesystem=").append(String.valueOf(this.filesystem)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", endpointSuffix=").append(String.valueOf(this.endpointSuffix)); + sb.append(", accountKey=").append(""); + sb.append(", accountKeySecretId=").append(String.valueOf(this.accountKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails)) { + return false; + } + + CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails other = + (CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.storageAccount, other.storageAccount) + && java.util.Objects.equals(this.filesystem, other.filesystem) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.endpointSuffix, other.endpointSuffix) + && java.util.Objects.equals(this.accountKey, other.accountKey) + && java.util.Objects.equals(this.accountKeySecretId, other.accountKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.storageAccount == null ? 43 : this.storageAccount.hashCode()); + result = (result * PRIME) + (this.filesystem == null ? 43 : this.filesystem.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = + (result * PRIME) + + (this.endpointSuffix == null ? 43 : this.endpointSuffix.hashCode()); + result = (result * PRIME) + (this.accountKey == null ? 43 : this.accountKey.hashCode()); + result = + (result * PRIME) + + (this.accountKeySecretId == null + ? 43 + : this.accountKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateConnectionDetails.java index 0d562456ba2..f3e6c0d16bf 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateConnectionDetails.java @@ -37,6 +37,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateAzureDataLakeStorageConnectionDetails.class, name = "AZURE_DATA_LAKE_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateOracleAiDataPlatformEngineConnectionDetails.class, + name = "ORACLE_AI_DATA_PLATFORM_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateGooglePubSubConnectionDetails.class, name = "GOOGLE_PUBSUB"), @@ -46,6 +49,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateOciObjectStorageConnectionDetails.class, name = "OCI_OBJECT_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateAiProviderConnectionDetails.class, + name = "AI_PROVIDER"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateRedisConnectionDetails.class, name = "REDIS"), @@ -58,6 +64,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateKafkaConnectionDetails.class, name = "KAFKA"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateSparkConnectionDetails.class, + name = "SPARK"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateOracleNosqlConnectionDetails.class, name = "ORACLE_NOSQL"), @@ -94,6 +103,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateAzureSynapseConnectionDetails.class, name = "AZURE_SYNAPSE_ANALYTICS"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDatabricksEngineConnectionDetails.class, + name = "DATABRICKS_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = CreateIcebergConnectionDetails.class, name = "ICEBERG"), diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..526437274be --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineArtifactLocationDetails.java @@ -0,0 +1,122 @@ +/** + * 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.goldengate.model; + +/** + * The information about a location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = CreateDatabricksEngineArtifactLocationDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateUcVolumeDatabricksEngineArtifactLocationDetails.class, + name = "UC_VOLUME"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateOciObjectStorageDatabricksEngineArtifactLocationDetails.class, + name = "OCI_OBJECT_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.class, + name = "AZURE_DATE_LAKE_STORAGE") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class CreateDatabricksEngineArtifactLocationDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected CreateDatabricksEngineArtifactLocationDetails(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("CreateDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineArtifactLocationDetails)) { + return false; + } + + CreateDatabricksEngineArtifactLocationDetails other = + (CreateDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineConnectionDetails.java new file mode 100644 index 00000000000..c166451071a --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineConnectionDetails.java @@ -0,0 +1,847 @@ +/** + * 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.goldengate.model; + +/** + * The information about a new Databricks Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDatabricksEngineConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabricksEngineConnectionDetails extends CreateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Databricks Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private DatabricksEngineConnection.TechnologyType technologyType; + + /** + * The Databricks Engine technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(DatabricksEngineConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** Used authentication mechanism to access the Databricks Engine REST API. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private DatabricksEngineConnection.AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType( + DatabricksEngineConnection.AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable + * for authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authToken") + private char[] authToken; + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable + * for authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param authToken the value to set + * @return this builder + */ + public Builder authToken(char[] authToken) { + this.authToken = authToken; + this.__explicitlySet__.add("authToken"); + return this; + } + + public Builder authToken(String authToken) { + this.authToken = authToken != null ? authToken.toCharArray() : null; + this.__explicitlySet__.add("authToken"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @param authTokenSecretId the value to set + * @return this builder + */ + public Builder authTokenSecretId(String authTokenSecretId) { + this.authTokenSecretId = authTokenSecretId; + this.__explicitlySet__.add("authTokenSecretId"); + return this; + } + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @param clientId the value to set + * @return this builder + */ + public Builder clientId(String clientId) { + this.clientId = clientId; + this.__explicitlySet__.add("clientId"); + return this; + } + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") + private char[] clientSecret; + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param clientSecret the value to set + * @return this builder + */ + public Builder clientSecret(char[] clientSecret) { + this.clientSecret = clientSecret; + this.__explicitlySet__.add("clientSecret"); + return this; + } + + public Builder clientSecret(String clientSecret) { + this.clientSecret = clientSecret != null ? clientSecret.toCharArray() : null; + this.__explicitlySet__.add("clientSecret"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @param clientSecretSecretId the value to set + * @return this builder + */ + public Builder clientSecretSecretId(String clientSecretSecretId) { + this.clientSecretSecretId = clientSecretSecretId; + this.__explicitlySet__.add("clientSecretSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private CreateDatabricksEngineArtifactLocationDetails artifactLocation; + + public Builder artifactLocation( + CreateDatabricksEngineArtifactLocationDetails artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabricksEngineConnectionDetails build() { + CreateDatabricksEngineConnectionDetails model = + new CreateDatabricksEngineConnectionDetails( + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.locks, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.authenticationType, + this.workspaceUrl, + this.authToken, + this.authTokenSecretId, + this.clientId, + this.clientSecret, + this.clientSecretSecretId, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDatabricksEngineConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + if (model.wasPropertyExplicitlySet("authToken")) { + this.authToken(model.getAuthToken()); + } + if (model.wasPropertyExplicitlySet("authTokenSecretId")) { + this.authTokenSecretId(model.getAuthTokenSecretId()); + } + if (model.wasPropertyExplicitlySet("clientId")) { + this.clientId(model.getClientId()); + } + if (model.wasPropertyExplicitlySet("clientSecret")) { + this.clientSecret(model.getClientSecret()); + } + if (model.wasPropertyExplicitlySet("clientSecretSecretId")) { + this.clientSecretSecretId(model.getClientSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDatabricksEngineConnectionDetails( + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.List locks, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + DatabricksEngineConnection.TechnologyType technologyType, + DatabricksEngineConnection.AuthenticationType authenticationType, + String workspaceUrl, + String authToken, + String authTokenSecretId, + String clientId, + String clientSecret, + String clientSecretSecretId, + CreateDatabricksEngineArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + compartmentId, + freeformTags, + definedTags, + locks, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authenticationType = authenticationType; + this.workspaceUrl = workspaceUrl; + this.authToken = authToken != null ? authToken.toCharArray() : null; + this.authTokenSecretId = authTokenSecretId; + this.clientId = clientId; + this.clientSecret = clientSecret != null ? clientSecret.toCharArray() : null; + this.clientSecretSecretId = clientSecretSecretId; + this.artifactLocation = artifactLocation; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateDatabricksEngineConnectionDetails( + @com.fasterxml.jackson.annotation.JsonProperty("displayName") String displayName, + @com.fasterxml.jackson.annotation.JsonProperty("description") String description, + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") String compartmentId, + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + java.util.Map freeformTags, + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + java.util.Map> definedTags, + @com.fasterxml.jackson.annotation.JsonProperty("locks") + java.util.List locks, + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") String vaultId, + @com.fasterxml.jackson.annotation.JsonProperty("keyId") String keyId, + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") java.util.List nsgIds, + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") String subnetId, + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + RoutingMethod routingMethod, + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + Boolean doesUseSecretIds, + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") String subscriptionId, + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + String clusterPlacementGroupId, + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + java.util.Map> securityAttributes, + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + DatabricksEngineConnection.TechnologyType technologyType, + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + DatabricksEngineConnection.AuthenticationType authenticationType, + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") String workspaceUrl, + @com.fasterxml.jackson.annotation.JsonProperty("authToken") char[] authToken, + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + String authTokenSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("clientId") String clientId, + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") char[] clientSecret, + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + String clientSecretSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + CreateDatabricksEngineArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + compartmentId, + freeformTags, + definedTags, + locks, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authenticationType = authenticationType; + this.workspaceUrl = workspaceUrl; + this.authToken = authToken; + this.authTokenSecretId = authTokenSecretId; + this.clientId = clientId; + this.clientSecret = clientSecret; + this.clientSecretSecretId = clientSecretSecretId; + this.artifactLocation = artifactLocation; + } + + /** The Databricks Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final DatabricksEngineConnection.TechnologyType technologyType; + + /** + * The Databricks Engine technology type. + * + * @return the value + */ + public DatabricksEngineConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + /** Used authentication mechanism to access the Databricks Engine REST API. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final DatabricksEngineConnection.AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. + * + * @return the value + */ + public DatabricksEngineConnection.AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable for + * authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authToken") + private final char[] authToken; + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable for + * authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated + * and replaced by "authTokenSecretId". This change follows the GoldenGate "Plain + * Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getAuthToken__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAuthToken() { + return authToken != null ? new String(authToken) : null; + } + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable for + * authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("authToken") + public char[] getAuthToken__AsCharArray() { + return authToken; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private final String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @return the value + */ + public String getAuthTokenSecretId() { + return authTokenSecretId; + } + + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private final String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @return the value + */ + public String getClientId() { + return clientId; + } + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") + private final char[] clientSecret; + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M + * Deprecated: This field is deprecated and replaced by "clientSecretSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getClientSecret__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getClientSecret() { + return clientSecret != null ? new String(clientSecret) : null; + } + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") + public char[] getClientSecret__AsCharArray() { + return clientSecret; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private final String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @return the value + */ + public String getClientSecretSecretId() { + return clientSecretSecretId; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final CreateDatabricksEngineArtifactLocationDetails artifactLocation; + + public CreateDatabricksEngineArtifactLocationDetails getArtifactLocation() { + return artifactLocation; + } + + @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("CreateDatabricksEngineConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(", authToken=").append(""); + sb.append(", authTokenSecretId=").append(String.valueOf(this.authTokenSecretId)); + sb.append(", clientId=").append(String.valueOf(this.clientId)); + sb.append(", clientSecret=").append(""); + sb.append(", clientSecretSecretId=").append(String.valueOf(this.clientSecretSecretId)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineConnectionDetails)) { + return false; + } + + CreateDatabricksEngineConnectionDetails other = (CreateDatabricksEngineConnectionDetails) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && java.util.Objects.equals(this.authToken, other.authToken) + && java.util.Objects.equals(this.authTokenSecretId, other.authTokenSecretId) + && java.util.Objects.equals(this.clientId, other.clientId) + && java.util.Objects.equals(this.clientSecret, other.clientSecret) + && java.util.Objects.equals(this.clientSecretSecretId, other.clientSecretSecretId) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + result = (result * PRIME) + (this.authToken == null ? 43 : this.authToken.hashCode()); + result = + (result * PRIME) + + (this.authTokenSecretId == null ? 43 : this.authTokenSecretId.hashCode()); + result = (result * PRIME) + (this.clientId == null ? 43 : this.clientId.hashCode()); + result = (result * PRIME) + (this.clientSecret == null ? 43 : this.clientSecret.hashCode()); + result = + (result * PRIME) + + (this.clientSecretSecretId == null + ? 43 + : this.clientSecretSecretId.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..9ed6b26b013 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineOciObjectStorageConfigDetails.java @@ -0,0 +1,88 @@ +/** + * 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.goldengate.model; + +/** + * Configuration for creating an OCI Object Storage Databricks Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType", + defaultImpl = CreateDatabricksEngineOciObjectStorageConfigDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.class, + name = "CUSTOMER_SECRET_KEY"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.class, + name = "RESOURCE_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.class, + name = "USER_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateDatabricksEngineParOciObjectStorageConfigDetails.class, + name = "PRE_AUTHENTICATED_REQUEST") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class CreateDatabricksEngineOciObjectStorageConfigDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected CreateDatabricksEngineOciObjectStorageConfigDetails() { + super(); + } + + @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("CreateDatabricksEngineOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineOciObjectStorageConfigDetails)) { + return false; + } + + CreateDatabricksEngineOciObjectStorageConfigDetails other = + (CreateDatabricksEngineOciObjectStorageConfigDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineParOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineParOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..a81536f78bb --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineParOciObjectStorageConfigDetails.java @@ -0,0 +1,239 @@ +/** + * 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.goldengate.model; + +/** + * Pre-authenticated request URL details for creating an OCI Object Storage Databricks Engine + * artifact location. Provide exactly one of {@code parUrl} or {@code parUrlSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDatabricksEngineParOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabricksEngineParOciObjectStorageConfigDetails + extends CreateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param parUrl the value to set + * @return this builder + */ + public Builder parUrl(char[] parUrl) { + this.parUrl = parUrl; + this.__explicitlySet__.add("parUrl"); + return this; + } + + public Builder parUrl(String parUrl) { + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.__explicitlySet__.add("parUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @param parUrlSecretId the value to set + * @return this builder + */ + public Builder parUrlSecretId(String parUrlSecretId) { + this.parUrlSecretId = parUrlSecretId; + this.__explicitlySet__.add("parUrlSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabricksEngineParOciObjectStorageConfigDetails build() { + CreateDatabricksEngineParOciObjectStorageConfigDetails model = + new CreateDatabricksEngineParOciObjectStorageConfigDetails( + this.parUrl, this.parUrlSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDatabricksEngineParOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("parUrl")) { + this.parUrl(model.getParUrl()); + } + if (model.wasPropertyExplicitlySet("parUrlSecretId")) { + this.parUrlSecretId(model.getParUrlSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDatabricksEngineParOciObjectStorageConfigDetails( + String parUrl, String parUrlSecretId) { + super(); + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.parUrlSecretId = parUrlSecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateDatabricksEngineParOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") char[] parUrl, + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + String parUrlSecretId) { + super(); + this.parUrl = parUrl; + this.parUrlSecretId = parUrlSecretId; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private final char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getParUrl__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getParUrl() { + return parUrl != null ? new String(parUrl) : null; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + public char[] getParUrl__AsCharArray() { + return parUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private final String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @return the value + */ + public String getParUrlSecretId() { + return parUrlSecretId; + } + + @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("CreateDatabricksEngineParOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", parUrl=").append(""); + sb.append(", parUrlSecretId=").append(String.valueOf(this.parUrlSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineParOciObjectStorageConfigDetails)) { + return false; + } + + CreateDatabricksEngineParOciObjectStorageConfigDetails other = + (CreateDatabricksEngineParOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.parUrl, other.parUrl) + && java.util.Objects.equals(this.parUrlSecretId, other.parUrlSecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.parUrl == null ? 43 : this.parUrl.hashCode()); + result = + (result * PRIME) + + (this.parUrlSecretId == null ? 43 : this.parUrlSecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..a4e6b0d49e2 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,256 @@ +/** + * 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.goldengate.model; + +/** + * Resource-principal authentication and location details for creating an OCI Object Storage + * Databricks Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = + CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails + extends CreateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails build() { + CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails model = + new CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails( + this.region, this.namespace, this.bucket, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails( + String region, String namespace, String bucket, String path) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails)) { + return false; + } + + CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails other = + (CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..ade4579c602 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.java @@ -0,0 +1,460 @@ +/** + * 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.goldengate.model; + +/** + * Secret-key authentication and location details for creating an OCI Object Storage Databricks + * Engine artifact location. Provide exactly one of {@code secretAccessKey} or {@code + * secretAccessKeySecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails + extends CreateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + * + * @param accessKeyId the value to set + * @return this builder + */ + public Builder accessKeyId(String accessKeyId) { + this.accessKeyId = accessKeyId; + this.__explicitlySet__.add("accessKeyId"); + return this; + } + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param secretAccessKey the value to set + * @return this builder + */ + public Builder secretAccessKey(char[] secretAccessKey) { + this.secretAccessKey = secretAccessKey; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + + public Builder secretAccessKey(String secretAccessKey) { + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + * + * @param secretAccessKeySecretId the value to set + * @return this builder + */ + public Builder secretAccessKeySecretId(String secretAccessKeySecretId) { + this.secretAccessKeySecretId = secretAccessKeySecretId; + this.__explicitlySet__.add("secretAccessKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails build() { + CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails model = + new CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.accessKeyId, + this.secretAccessKey, + this.secretAccessKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("accessKeyId")) { + this.accessKeyId(model.getAccessKeyId()); + } + if (model.wasPropertyExplicitlySet("secretAccessKey")) { + this.secretAccessKey(model.getSecretAccessKey()); + } + if (model.wasPropertyExplicitlySet("secretAccessKeySecretId")) { + this.secretAccessKeySecretId(model.getSecretAccessKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String accessKeyId, + String secretAccessKey, + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") String accessKeyId, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + char[] secretAccessKey, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private final String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + * + * @return the value + */ + public String getAccessKeyId() { + return accessKeyId; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private final char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getSecretAccessKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSecretAccessKey() { + return secretAccessKey != null ? new String(secretAccessKey) : null; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + public char[] getSecretAccessKey__AsCharArray() { + return secretAccessKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private final String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + * + * @return the value + */ + public String getSecretAccessKeySecretId() { + return secretAccessKeySecretId; + } + + @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("CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", accessKeyId=").append(String.valueOf(this.accessKeyId)); + sb.append(", secretAccessKey=").append(""); + sb.append(", secretAccessKeySecretId=") + .append(String.valueOf(this.secretAccessKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails)) { + return false; + } + + CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails other = + (CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.accessKeyId, other.accessKeyId) + && java.util.Objects.equals(this.secretAccessKey, other.secretAccessKey) + && java.util.Objects.equals( + this.secretAccessKeySecretId, other.secretAccessKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.accessKeyId == null ? 43 : this.accessKeyId.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKey == null ? 43 : this.secretAccessKey.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKeySecretId == null + ? 43 + : this.secretAccessKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..55042976311 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,723 @@ +/** + * 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.goldengate.model; + +/** + * User-principal authentication and location details for creating an OCI Object Storage Databricks + * Engine artifact location. Provide exactly one of {@code privateKeyFile} or {@code + * privateKeyFileSecretId}. If the private key is passphrase-protected, provide at most one of + * {@code privateKeyPassphrase} or {@code privateKeyPassphraseSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails + extends CreateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @param tenancyId the value to set + * @return this builder + */ + public Builder tenancyId(String tenancyId) { + this.tenancyId = tenancyId; + this.__explicitlySet__.add("tenancyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + * + * @param userId the value to set + * @return this builder + */ + public Builder userId(String userId) { + this.userId = userId; + this.__explicitlySet__.add("userId"); + return this; + } + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyFile the value to set + * @return this builder + */ + public Builder privateKeyFile(char[] privateKeyFile) { + this.privateKeyFile = privateKeyFile; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + + public Builder privateKeyFile(String privateKeyFile) { + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + * + * @param privateKeyFileSecretId the value to set + * @return this builder + */ + public Builder privateKeyFileSecretId(String privateKeyFileSecretId) { + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.__explicitlySet__.add("privateKeyFileSecretId"); + return this; + } + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyPassphrase the value to set + * @return this builder + */ + public Builder privateKeyPassphrase(char[] privateKeyPassphrase) { + this.privateKeyPassphrase = privateKeyPassphrase; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + + public Builder privateKeyPassphrase(String privateKeyPassphrase) { + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @param privateKeyPassphraseSecretId the value to set + * @return this builder + */ + public Builder privateKeyPassphraseSecretId(String privateKeyPassphraseSecretId) { + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.__explicitlySet__.add("privateKeyPassphraseSecretId"); + return this; + } + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @param publicKeyFingerprint the value to set + * @return this builder + */ + public Builder publicKeyFingerprint(String publicKeyFingerprint) { + this.publicKeyFingerprint = publicKeyFingerprint; + this.__explicitlySet__.add("publicKeyFingerprint"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails build() { + CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails model = + new CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.tenancyId, + this.userId, + this.privateKeyFile, + this.privateKeyFileSecretId, + this.privateKeyPassphrase, + this.privateKeyPassphraseSecretId, + this.publicKeyFingerprint); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("tenancyId")) { + this.tenancyId(model.getTenancyId()); + } + if (model.wasPropertyExplicitlySet("userId")) { + this.userId(model.getUserId()); + } + if (model.wasPropertyExplicitlySet("privateKeyFile")) { + this.privateKeyFile(model.getPrivateKeyFile()); + } + if (model.wasPropertyExplicitlySet("privateKeyFileSecretId")) { + this.privateKeyFileSecretId(model.getPrivateKeyFileSecretId()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphrase")) { + this.privateKeyPassphrase(model.getPrivateKeyPassphrase()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphraseSecretId")) { + this.privateKeyPassphraseSecretId(model.getPrivateKeyPassphraseSecretId()); + } + if (model.wasPropertyExplicitlySet("publicKeyFingerprint")) { + this.publicKeyFingerprint(model.getPublicKeyFingerprint()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String tenancyId, + String userId, + String privateKeyFile, + String privateKeyFileSecretId, + String privateKeyPassphrase, + String privateKeyPassphraseSecretId, + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") String tenancyId, + @com.fasterxml.jackson.annotation.JsonProperty("userId") String userId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") char[] privateKeyFile, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + String privateKeyFileSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + char[] privateKeyPassphrase, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + String privateKeyPassphraseSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = privateKeyPassphrase; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private final String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @return the value + */ + public String getTenancyId() { + return tenancyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private final String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + * + * @return the value + */ + public String getUserId() { + return userId; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private final char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyFile__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyFile() { + return privateKeyFile != null ? new String(privateKeyFile) : null; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + public char[] getPrivateKeyFile__AsCharArray() { + return privateKeyFile; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private final String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyFileSecretId() { + return privateKeyFileSecretId; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private final char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyPassphrase__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyPassphrase() { + return privateKeyPassphrase != null ? new String(privateKeyPassphrase) : null; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + public char[] getPrivateKeyPassphrase__AsCharArray() { + return privateKeyPassphrase; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private final String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyPassphraseSecretId() { + return privateKeyPassphraseSecretId; + } + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private final String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @return the value + */ + public String getPublicKeyFingerprint() { + return publicKeyFingerprint; + } + + @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("CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", tenancyId=").append(String.valueOf(this.tenancyId)); + sb.append(", userId=").append(String.valueOf(this.userId)); + sb.append(", privateKeyFile=").append(""); + sb.append(", privateKeyFileSecretId=").append(String.valueOf(this.privateKeyFileSecretId)); + sb.append(", privateKeyPassphrase=").append(""); + sb.append(", privateKeyPassphraseSecretId=") + .append(String.valueOf(this.privateKeyPassphraseSecretId)); + sb.append(", publicKeyFingerprint=").append(String.valueOf(this.publicKeyFingerprint)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails)) { + return false; + } + + CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails other = + (CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.tenancyId, other.tenancyId) + && java.util.Objects.equals(this.userId, other.userId) + && java.util.Objects.equals(this.privateKeyFile, other.privateKeyFile) + && java.util.Objects.equals( + this.privateKeyFileSecretId, other.privateKeyFileSecretId) + && java.util.Objects.equals(this.privateKeyPassphrase, other.privateKeyPassphrase) + && java.util.Objects.equals( + this.privateKeyPassphraseSecretId, other.privateKeyPassphraseSecretId) + && java.util.Objects.equals(this.publicKeyFingerprint, other.publicKeyFingerprint) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.tenancyId == null ? 43 : this.tenancyId.hashCode()); + result = (result * PRIME) + (this.userId == null ? 43 : this.userId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFile == null ? 43 : this.privateKeyFile.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFileSecretId == null + ? 43 + : this.privateKeyFileSecretId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphrase == null + ? 43 + : this.privateKeyPassphrase.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphraseSecretId == null + ? 43 + : this.privateKeyPassphraseSecretId.hashCode()); + result = + (result * PRIME) + + (this.publicKeyFingerprint == null + ? 43 + : this.publicKeyFingerprint.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciGenAiModelAuthDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciGenAiModelAuthDetails.java index 5b005e5db0c..85a3301838f 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciGenAiModelAuthDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciGenAiModelAuthDetails.java @@ -89,14 +89,14 @@ public Builder keyFingerprint(String keyFingerprint) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -296,14 +296,14 @@ public String getKeyFingerprint() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageConnectionDetails.java index 24408976c07..fc8ad0cb0e5 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageConnectionDetails.java @@ -199,14 +199,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -671,14 +671,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..e8313823a18 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageDatabricksEngineArtifactLocationDetails.java @@ -0,0 +1,144 @@ +/** + * 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.goldengate.model; + +/** + * The information about an OCI Object Storage location used to share Databricks application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateOciObjectStorageDatabricksEngineArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateOciObjectStorageDatabricksEngineArtifactLocationDetails + extends CreateDatabricksEngineArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private CreateDatabricksEngineOciObjectStorageConfigDetails configuration; + + public Builder configuration( + CreateDatabricksEngineOciObjectStorageConfigDetails configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateOciObjectStorageDatabricksEngineArtifactLocationDetails build() { + CreateOciObjectStorageDatabricksEngineArtifactLocationDetails model = + new CreateOciObjectStorageDatabricksEngineArtifactLocationDetails( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateOciObjectStorageDatabricksEngineArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateOciObjectStorageDatabricksEngineArtifactLocationDetails( + Boolean shouldOverwriteExisting, + CreateDatabricksEngineOciObjectStorageConfigDetails configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final CreateDatabricksEngineOciObjectStorageConfigDetails configuration; + + public CreateDatabricksEngineOciObjectStorageConfigDetails getConfiguration() { + return configuration; + } + + @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("CreateOciObjectStorageDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateOciObjectStorageDatabricksEngineArtifactLocationDetails)) { + return false; + } + + CreateOciObjectStorageDatabricksEngineArtifactLocationDetails other = + (CreateOciObjectStorageDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageSparkArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageSparkArtifactLocationDetails.java new file mode 100644 index 00000000000..4258377c9e1 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOciObjectStorageSparkArtifactLocationDetails.java @@ -0,0 +1,143 @@ +/** + * 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.goldengate.model; + +/** + * The information about an OCI Object Storage location used to share Spark application artifacts. + *
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateOciObjectStorageSparkArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateOciObjectStorageSparkArtifactLocationDetails + extends CreateSparkArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private CreateSparkOciObjectStorageConfigDetails configuration; + + public Builder configuration(CreateSparkOciObjectStorageConfigDetails configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateOciObjectStorageSparkArtifactLocationDetails build() { + CreateOciObjectStorageSparkArtifactLocationDetails model = + new CreateOciObjectStorageSparkArtifactLocationDetails( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateOciObjectStorageSparkArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateOciObjectStorageSparkArtifactLocationDetails( + Boolean shouldOverwriteExisting, + CreateSparkOciObjectStorageConfigDetails configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final CreateSparkOciObjectStorageConfigDetails configuration; + + public CreateSparkOciObjectStorageConfigDetails getConfiguration() { + return configuration; + } + + @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("CreateOciObjectStorageSparkArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateOciObjectStorageSparkArtifactLocationDetails)) { + return false; + } + + CreateOciObjectStorageSparkArtifactLocationDetails other = + (CreateOciObjectStorageSparkArtifactLocationDetails) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOggDeploymentDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOggDeploymentDetails.java index 0357b700dbb..26709ee8ba9 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOggDeploymentDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOggDeploymentDetails.java @@ -5,7 +5,7 @@ package com.oracle.bmc.goldengate.model; /** - * Deployment Data for creating an OggDeployment
+ * Deployment Data for creating an OggDeployment.
* 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 @@ -94,16 +94,22 @@ public CreateOggDeploymentDetails( public static class Builder { /** * The name given to the GoldenGate service deployment. The name must contain only - * alphanumeric characters and must start with a letter. For standby deployment the - * deployment name is inherited from primary. + * alphanumeric characters and must start with a letter. If not provided, the service + * derives this value from the deployment display name. For standby deployment the + * deployment name is inherited from primary. Deprecated: This field is deprecated and will + * be removed after the date provided in the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate */ @com.fasterxml.jackson.annotation.JsonProperty("deploymentName") private String deploymentName; /** * The name given to the GoldenGate service deployment. The name must contain only - * alphanumeric characters and must start with a letter. For standby deployment the - * deployment name is inherited from primary. + * alphanumeric characters and must start with a letter. If not provided, the service + * derives this value from the deployment display name. For standby deployment the + * deployment name is inherited from primary. Deprecated: This field is deprecated and will + * be removed after the date provided in the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate * * @param deploymentName the value to set * @return this builder @@ -363,16 +369,22 @@ public Builder toBuilder() { /** * The name given to the GoldenGate service deployment. The name must contain only alphanumeric - * characters and must start with a letter. For standby deployment the deployment name is - * inherited from primary. + * characters and must start with a letter. If not provided, the service derives this value from + * the deployment display name. For standby deployment the deployment name is inherited from + * primary. Deprecated: This field is deprecated and will be removed after the date provided in + * the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate */ @com.fasterxml.jackson.annotation.JsonProperty("deploymentName") private final String deploymentName; /** * The name given to the GoldenGate service deployment. The name must contain only alphanumeric - * characters and must start with a letter. For standby deployment the deployment name is - * inherited from primary. + * characters and must start with a letter. If not provided, the service derives this value from + * the deployment display name. For standby deployment the deployment name is inherited from + * primary. Deprecated: This field is deprecated and will be removed after the date provided in + * the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformConnectionDetails.java index 9bd5e56b0e6..f003c66e5d2 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformConnectionDetails.java @@ -215,14 +215,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -708,14 +708,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformEngineConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformEngineConnectionDetails.java new file mode 100644 index 00000000000..fae9d016521 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleAiDataPlatformEngineConnectionDetails.java @@ -0,0 +1,406 @@ +/** + * 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.goldengate.model; + +/** + * The information about a new Oracle AI Data Platform Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateOracleAiDataPlatformEngineConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateOracleAiDataPlatformEngineConnectionDetails + extends CreateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Oracle AI Data Platform Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private OracleAiDataPlatformEngineConnection.TechnologyType technologyType; + + /** + * The Oracle AI Data Platform Engine technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType( + OracleAiDataPlatformEngineConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateOracleAiDataPlatformEngineConnectionDetails build() { + CreateOracleAiDataPlatformEngineConnectionDetails model = + new CreateOracleAiDataPlatformEngineConnectionDetails( + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.locks, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.workspaceUrl); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateOracleAiDataPlatformEngineConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateOracleAiDataPlatformEngineConnectionDetails( + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.List locks, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + OracleAiDataPlatformEngineConnection.TechnologyType technologyType, + String workspaceUrl) { + super( + displayName, + description, + compartmentId, + freeformTags, + definedTags, + locks, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.workspaceUrl = workspaceUrl; + } + + /** The Oracle AI Data Platform Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final OracleAiDataPlatformEngineConnection.TechnologyType technologyType; + + /** + * The Oracle AI Data Platform Engine technology type. + * + * @return the value + */ + public OracleAiDataPlatformEngineConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + @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("CreateOracleAiDataPlatformEngineConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateOracleAiDataPlatformEngineConnectionDetails)) { + return false; + } + + CreateOracleAiDataPlatformEngineConnectionDetails other = + (CreateOracleAiDataPlatformEngineConnectionDetails) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleNosqlConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleNosqlConnectionDetails.java index af8061ab3b2..3a5e292cf76 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleNosqlConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateOracleNosqlConnectionDetails.java @@ -199,14 +199,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -671,14 +671,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSnowflakeConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSnowflakeConnectionDetails.java index 2034aa74ecc..6205720896a 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSnowflakeConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSnowflakeConnectionDetails.java @@ -237,6 +237,10 @@ public Builder username(String username) { * field is deprecated and replaced by "passwordSecretId". This change follows the * GoldenGate "Plain Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle + * GoldenGate Snowflake connections will support only key-pair authentication. See the + * Snowflake documentation for details: + * https://docs.snowflake.com/en/user-guide/security-mfa-rollout */ @com.fasterxml.jackson.annotation.JsonProperty("password") private char[] password; @@ -246,6 +250,10 @@ public Builder username(String username) { * field is deprecated and replaced by "passwordSecretId". This change follows the * GoldenGate "Plain Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle + * GoldenGate Snowflake connections will support only key-pair authentication. See the + * Snowflake documentation for details: + * https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @param password the value to set * @return this builder @@ -709,6 +717,9 @@ public String getUsername() { * is deprecated and replaced by "passwordSecretId". This change follows the GoldenGate "Plain * Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle GoldenGate + * Snowflake connections will support only key-pair authentication. See the Snowflake + * documentation for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout */ @com.fasterxml.jackson.annotation.JsonProperty("password") private final char[] password; @@ -718,6 +729,9 @@ public String getUsername() { * is deprecated and replaced by "passwordSecretId". This change follows the * GoldenGate "Plain Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle GoldenGate + * Snowflake connections will support only key-pair authentication. See the Snowflake + * documentation for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @return the value * @deprecated Use getPassword__AsCharArray() instead. @@ -733,6 +747,9 @@ public String getPassword() { * is deprecated and replaced by "passwordSecretId". This change follows the GoldenGate "Plain * Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle GoldenGate + * Snowflake connections will support only key-pair authentication. See the Snowflake + * documentation for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkArtifactLocationDetails.java new file mode 100644 index 00000000000..ebe5f67988f --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkArtifactLocationDetails.java @@ -0,0 +1,116 @@ +/** + * 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.goldengate.model; + +/** + * The information about a location used to share Spark application artifacts with a remote cluster. + *
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = CreateSparkArtifactLocationDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateOciObjectStorageSparkArtifactLocationDetails.class, + name = "OCI_OBJECT_STORAGE") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class CreateSparkArtifactLocationDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected CreateSparkArtifactLocationDetails(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("CreateSparkArtifactLocationDetails("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkArtifactLocationDetails)) { + return false; + } + + CreateSparkArtifactLocationDetails other = (CreateSparkArtifactLocationDetails) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkConnectionDetails.java new file mode 100644 index 00000000000..ce4282a0273 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkConnectionDetails.java @@ -0,0 +1,1970 @@ +/** + * 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.goldengate.model; + +/** + * The information about a new Spark Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSparkConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSparkConnectionDetails extends CreateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Spark technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private SparkConnection.TechnologyType technologyType; + + /** + * The Spark technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(SparkConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private SparkConnection.SubmitMode submitMode; + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + * + * @param submitMode the value to set + * @return this builder + */ + public Builder submitMode(SparkConnection.SubmitMode submitMode) { + this.submitMode = submitMode; + this.__explicitlySet__.add("submitMode"); + return this; + } + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private SparkConnection.AuthenticationType authenticationType; + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType(SparkConnection.AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, + * TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, + * and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private SparkConnection.SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, + * TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, + * and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + * + * @param securityProtocol the value to set + * @return this builder + */ + public Builder securityProtocol(SparkConnection.SecurityProtocol securityProtocol) { + this.securityProtocol = securityProtocol; + this.__explicitlySet__.add("securityProtocol"); + return this; + } + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @param clusterEndpoint the value to set + * @return this builder + */ + public Builder clusterEndpoint(String clusterEndpoint) { + this.clusterEndpoint = clusterEndpoint; + this.__explicitlySet__.add("clusterEndpoint"); + return this; + } + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @param restEndpoint the value to set + * @return this builder + */ + public Builder restEndpoint(String restEndpoint) { + this.restEndpoint = restEndpoint; + this.__explicitlySet__.add("restEndpoint"); + return this; + } + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") + private char[] authSecret; + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param authSecret the value to set + * @return this builder + */ + public Builder authSecret(char[] authSecret) { + this.authSecret = authSecret; + this.__explicitlySet__.add("authSecret"); + return this; + } + + public Builder authSecret(String authSecret) { + this.authSecret = authSecret != null ? authSecret.toCharArray() : null; + this.__explicitlySet__.add("authSecret"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + * + * @param authSecretSecretId the value to set + * @return this builder + */ + public Builder authSecretSecretId(String authSecretSecretId) { + this.authSecretSecretId = authSecretSecretId; + this.__explicitlySet__.add("authSecretSecretId"); + return this; + } + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. Defaults to AES_CTR_NOPADDING when not provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private SparkConnection.RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. Defaults to AES_CTR_NOPADDING when not provided. + * + * @param rpcCipher the value to set + * @return this builder + */ + public Builder rpcCipher(SparkConnection.RpcCipher rpcCipher) { + this.rpcCipher = rpcCipher; + this.__explicitlySet__.add("rpcCipher"); + return this; + } + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the + * Spark master's REST endpoint is protected by the JWS filter. Applicable only when + * submitMode is REST and the cluster enforces REST request signing. This setting is + * independent of authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + private char[] restAuthSecretKey; + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the + * Spark master's REST endpoint is protected by the JWS filter. Applicable only when + * submitMode is REST and the cluster enforces REST request signing. This setting is + * independent of authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param restAuthSecretKey the value to set + * @return this builder + */ + public Builder restAuthSecretKey(char[] restAuthSecretKey) { + this.restAuthSecretKey = restAuthSecretKey; + this.__explicitlySet__.add("restAuthSecretKey"); + return this; + } + + public Builder restAuthSecretKey(String restAuthSecretKey) { + this.restAuthSecretKey = + restAuthSecretKey != null ? restAuthSecretKey.toCharArray() : null; + this.__explicitlySet__.add("restAuthSecretKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @param restAuthSecretKeySecretId the value to set + * @return this builder + */ + public Builder restAuthSecretKeySecretId(String restAuthSecretKeySecretId) { + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.__explicitlySet__.add("restAuthSecretKeySecretId"); + return this; + } + /** + * The base64 encoded content of the trust store used to validate the Spark server + * certificate. Applicable when securityProtocol is TLS. Provide this when the server + * certificate is not already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") + private char[] trustStore; + + /** + * The base64 encoded content of the trust store used to validate the Spark server + * certificate. Applicable when securityProtocol is TLS. Provide this when the server + * certificate is not already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param trustStore the value to set + * @return this builder + */ + public Builder trustStore(char[] trustStore) { + this.trustStore = trustStore; + this.__explicitlySet__.add("trustStore"); + return this; + } + + public Builder trustStore(String trustStore) { + this.trustStore = trustStore != null ? trustStore.toCharArray() : null; + this.__explicitlySet__.add("trustStore"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + * + * @param trustStoreSecretId the value to set + * @return this builder + */ + public Builder trustStoreSecretId(String trustStoreSecretId) { + this.trustStoreSecretId = trustStoreSecretId; + this.__explicitlySet__.add("trustStoreSecretId"); + return this; + } + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store + * is provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". + * This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + private char[] trustStorePassword; + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store + * is provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". + * This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param trustStorePassword the value to set + * @return this builder + */ + public Builder trustStorePassword(char[] trustStorePassword) { + this.trustStorePassword = trustStorePassword; + this.__explicitlySet__.add("trustStorePassword"); + return this; + } + + public Builder trustStorePassword(String trustStorePassword) { + this.trustStorePassword = + trustStorePassword != null ? trustStorePassword.toCharArray() : null; + this.__explicitlySet__.add("trustStorePassword"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + * + * @param trustStorePasswordSecretId the value to set + * @return this builder + */ + public Builder trustStorePasswordSecretId(String trustStorePasswordSecretId) { + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.__explicitlySet__.add("trustStorePasswordSecretId"); + return this; + } + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and + * a trust store is provided. Defaults to JKS when not provided. Provide this only when a + * trust store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private SparkConnection.TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and + * a trust store is provided. Defaults to JKS when not provided. Provide this only when a + * trust store is provided. + * + * @param trustStoreType the value to set + * @return this builder + */ + public Builder trustStoreType(SparkConnection.TrustStoreType trustStoreType) { + this.trustStoreType = trustStoreType; + this.__explicitlySet__.add("trustStoreType"); + return this; + } + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") + private char[] keyStore; + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param keyStore the value to set + * @return this builder + */ + public Builder keyStore(char[] keyStore) { + this.keyStore = keyStore; + this.__explicitlySet__.add("keyStore"); + return this; + } + + public Builder keyStore(String keyStore) { + this.keyStore = keyStore != null ? keyStore.toCharArray() : null; + this.__explicitlySet__.add("keyStore"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @param keyStoreSecretId the value to set + * @return this builder + */ + public Builder keyStoreSecretId(String keyStoreSecretId) { + this.keyStoreSecretId = keyStoreSecretId; + this.__explicitlySet__.add("keyStoreSecretId"); + return this; + } + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client + * key store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + private char[] keyStorePassword; + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client + * key store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param keyStorePassword the value to set + * @return this builder + */ + public Builder keyStorePassword(char[] keyStorePassword) { + this.keyStorePassword = keyStorePassword; + this.__explicitlySet__.add("keyStorePassword"); + return this; + } + + public Builder keyStorePassword(String keyStorePassword) { + this.keyStorePassword = + keyStorePassword != null ? keyStorePassword.toCharArray() : null; + this.__explicitlySet__.add("keyStorePassword"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + * + * @param keyStorePasswordSecretId the value to set + * @return this builder + */ + public Builder keyStorePasswordSecretId(String keyStorePasswordSecretId) { + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.__explicitlySet__.add("keyStorePasswordSecretId"); + return this; + } + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and + * a client key store is provided. Defaults to JKS when not provided. Provide this only when + * a client key store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private SparkConnection.KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and + * a client key store is provided. Defaults to JKS when not provided. Provide this only when + * a client key store is provided. + * + * @param keyStoreType the value to set + * @return this builder + */ + public Builder keyStoreType(SparkConnection.KeyStoreType keyStoreType) { + this.keyStoreType = keyStoreType; + this.__explicitlySet__.add("keyStoreType"); + return this; + } + /** + * Password for the certificate private key inside the client key store. Provide this only + * when it differs from the key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") + private char[] sslKeyPassword; + + /** + * Password for the certificate private key inside the client key store. Provide this only + * when it differs from the key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param sslKeyPassword the value to set + * @return this builder + */ + public Builder sslKeyPassword(char[] sslKeyPassword) { + this.sslKeyPassword = sslKeyPassword; + this.__explicitlySet__.add("sslKeyPassword"); + return this; + } + + public Builder sslKeyPassword(String sslKeyPassword) { + this.sslKeyPassword = sslKeyPassword != null ? sslKeyPassword.toCharArray() : null; + this.__explicitlySet__.add("sslKeyPassword"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @param sslKeyPasswordSecretId the value to set + * @return this builder + */ + public Builder sslKeyPasswordSecretId(String sslKeyPasswordSecretId) { + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.__explicitlySet__.add("sslKeyPasswordSecretId"); + return this; + } + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private SparkConnection.TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + * + * @param tlsProtocol the value to set + * @return this builder + */ + public Builder tlsProtocol(SparkConnection.TlsProtocol tlsProtocol) { + this.tlsProtocol = tlsProtocol; + this.__explicitlySet__.add("tlsProtocol"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private CreateSparkArtifactLocationDetails artifactLocation; + + public Builder artifactLocation(CreateSparkArtifactLocationDetails artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSparkConnectionDetails build() { + CreateSparkConnectionDetails model = + new CreateSparkConnectionDetails( + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.locks, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.submitMode, + this.authenticationType, + this.securityProtocol, + this.clusterEndpoint, + this.restEndpoint, + this.authSecret, + this.authSecretSecretId, + this.rpcCipher, + this.restAuthSecretKey, + this.restAuthSecretKeySecretId, + this.trustStore, + this.trustStoreSecretId, + this.trustStorePassword, + this.trustStorePasswordSecretId, + this.trustStoreType, + this.keyStore, + this.keyStoreSecretId, + this.keyStorePassword, + this.keyStorePasswordSecretId, + this.keyStoreType, + this.sslKeyPassword, + this.sslKeyPasswordSecretId, + this.tlsProtocol, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSparkConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("submitMode")) { + this.submitMode(model.getSubmitMode()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("securityProtocol")) { + this.securityProtocol(model.getSecurityProtocol()); + } + if (model.wasPropertyExplicitlySet("clusterEndpoint")) { + this.clusterEndpoint(model.getClusterEndpoint()); + } + if (model.wasPropertyExplicitlySet("restEndpoint")) { + this.restEndpoint(model.getRestEndpoint()); + } + if (model.wasPropertyExplicitlySet("authSecret")) { + this.authSecret(model.getAuthSecret()); + } + if (model.wasPropertyExplicitlySet("authSecretSecretId")) { + this.authSecretSecretId(model.getAuthSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("rpcCipher")) { + this.rpcCipher(model.getRpcCipher()); + } + if (model.wasPropertyExplicitlySet("restAuthSecretKey")) { + this.restAuthSecretKey(model.getRestAuthSecretKey()); + } + if (model.wasPropertyExplicitlySet("restAuthSecretKeySecretId")) { + this.restAuthSecretKeySecretId(model.getRestAuthSecretKeySecretId()); + } + if (model.wasPropertyExplicitlySet("trustStore")) { + this.trustStore(model.getTrustStore()); + } + if (model.wasPropertyExplicitlySet("trustStoreSecretId")) { + this.trustStoreSecretId(model.getTrustStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStorePassword")) { + this.trustStorePassword(model.getTrustStorePassword()); + } + if (model.wasPropertyExplicitlySet("trustStorePasswordSecretId")) { + this.trustStorePasswordSecretId(model.getTrustStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStoreType")) { + this.trustStoreType(model.getTrustStoreType()); + } + if (model.wasPropertyExplicitlySet("keyStore")) { + this.keyStore(model.getKeyStore()); + } + if (model.wasPropertyExplicitlySet("keyStoreSecretId")) { + this.keyStoreSecretId(model.getKeyStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStorePassword")) { + this.keyStorePassword(model.getKeyStorePassword()); + } + if (model.wasPropertyExplicitlySet("keyStorePasswordSecretId")) { + this.keyStorePasswordSecretId(model.getKeyStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStoreType")) { + this.keyStoreType(model.getKeyStoreType()); + } + if (model.wasPropertyExplicitlySet("sslKeyPassword")) { + this.sslKeyPassword(model.getSslKeyPassword()); + } + if (model.wasPropertyExplicitlySet("sslKeyPasswordSecretId")) { + this.sslKeyPasswordSecretId(model.getSslKeyPasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("tlsProtocol")) { + this.tlsProtocol(model.getTlsProtocol()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateSparkConnectionDetails( + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.List locks, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + SparkConnection.TechnologyType technologyType, + SparkConnection.SubmitMode submitMode, + SparkConnection.AuthenticationType authenticationType, + SparkConnection.SecurityProtocol securityProtocol, + String clusterEndpoint, + String restEndpoint, + String authSecret, + String authSecretSecretId, + SparkConnection.RpcCipher rpcCipher, + String restAuthSecretKey, + String restAuthSecretKeySecretId, + String trustStore, + String trustStoreSecretId, + String trustStorePassword, + String trustStorePasswordSecretId, + SparkConnection.TrustStoreType trustStoreType, + String keyStore, + String keyStoreSecretId, + String keyStorePassword, + String keyStorePasswordSecretId, + SparkConnection.KeyStoreType keyStoreType, + String sslKeyPassword, + String sslKeyPasswordSecretId, + SparkConnection.TlsProtocol tlsProtocol, + CreateSparkArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + compartmentId, + freeformTags, + definedTags, + locks, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.submitMode = submitMode; + this.authenticationType = authenticationType; + this.securityProtocol = securityProtocol; + this.clusterEndpoint = clusterEndpoint; + this.restEndpoint = restEndpoint; + this.authSecret = authSecret != null ? authSecret.toCharArray() : null; + this.authSecretSecretId = authSecretSecretId; + this.rpcCipher = rpcCipher; + this.restAuthSecretKey = restAuthSecretKey != null ? restAuthSecretKey.toCharArray() : null; + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.trustStore = trustStore != null ? trustStore.toCharArray() : null; + this.trustStoreSecretId = trustStoreSecretId; + this.trustStorePassword = + trustStorePassword != null ? trustStorePassword.toCharArray() : null; + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.trustStoreType = trustStoreType; + this.keyStore = keyStore != null ? keyStore.toCharArray() : null; + this.keyStoreSecretId = keyStoreSecretId; + this.keyStorePassword = keyStorePassword != null ? keyStorePassword.toCharArray() : null; + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.keyStoreType = keyStoreType; + this.sslKeyPassword = sslKeyPassword != null ? sslKeyPassword.toCharArray() : null; + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.tlsProtocol = tlsProtocol; + this.artifactLocation = artifactLocation; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateSparkConnectionDetails( + @com.fasterxml.jackson.annotation.JsonProperty("displayName") String displayName, + @com.fasterxml.jackson.annotation.JsonProperty("description") String description, + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") String compartmentId, + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + java.util.Map freeformTags, + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + java.util.Map> definedTags, + @com.fasterxml.jackson.annotation.JsonProperty("locks") + java.util.List locks, + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") String vaultId, + @com.fasterxml.jackson.annotation.JsonProperty("keyId") String keyId, + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") java.util.List nsgIds, + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") String subnetId, + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + RoutingMethod routingMethod, + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + Boolean doesUseSecretIds, + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") String subscriptionId, + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + String clusterPlacementGroupId, + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + java.util.Map> securityAttributes, + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + SparkConnection.TechnologyType technologyType, + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + SparkConnection.SubmitMode submitMode, + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + SparkConnection.AuthenticationType authenticationType, + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + SparkConnection.SecurityProtocol securityProtocol, + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + String clusterEndpoint, + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") String restEndpoint, + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") char[] authSecret, + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + String authSecretSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + SparkConnection.RpcCipher rpcCipher, + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + char[] restAuthSecretKey, + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + String restAuthSecretKeySecretId, + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") char[] trustStore, + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + String trustStoreSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + char[] trustStorePassword, + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + String trustStorePasswordSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + SparkConnection.TrustStoreType trustStoreType, + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") char[] keyStore, + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + String keyStoreSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + char[] keyStorePassword, + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + String keyStorePasswordSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + SparkConnection.KeyStoreType keyStoreType, + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") char[] sslKeyPassword, + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + String sslKeyPasswordSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + SparkConnection.TlsProtocol tlsProtocol, + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + CreateSparkArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + compartmentId, + freeformTags, + definedTags, + locks, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.submitMode = submitMode; + this.authenticationType = authenticationType; + this.securityProtocol = securityProtocol; + this.clusterEndpoint = clusterEndpoint; + this.restEndpoint = restEndpoint; + this.authSecret = authSecret; + this.authSecretSecretId = authSecretSecretId; + this.rpcCipher = rpcCipher; + this.restAuthSecretKey = restAuthSecretKey; + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.trustStore = trustStore; + this.trustStoreSecretId = trustStoreSecretId; + this.trustStorePassword = trustStorePassword; + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.trustStoreType = trustStoreType; + this.keyStore = keyStore; + this.keyStoreSecretId = keyStoreSecretId; + this.keyStorePassword = keyStorePassword; + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.keyStoreType = keyStoreType; + this.sslKeyPassword = sslKeyPassword; + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.tlsProtocol = tlsProtocol; + this.artifactLocation = artifactLocation; + } + + /** The Spark technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final SparkConnection.TechnologyType technologyType; + + /** + * The Spark technology type. + * + * @return the value + */ + public SparkConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private final SparkConnection.SubmitMode submitMode; + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + * + * @return the value + */ + public SparkConnection.SubmitMode getSubmitMode() { + return submitMode; + } + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final SparkConnection.AuthenticationType authenticationType; + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + * + * @return the value + */ + public SparkConnection.AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, TLS + * uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and + * SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private final SparkConnection.SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, TLS + * uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and + * SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + * + * @return the value + */ + public SparkConnection.SecurityProtocol getSecurityProtocol() { + return securityProtocol; + } + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private final String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @return the value + */ + public String getClusterEndpoint() { + return clusterEndpoint; + } + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private final String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @return the value + */ + public String getRestEndpoint() { + return restEndpoint; + } + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") + private final char[] authSecret; + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. <p> Deprecated: This field is deprecated and replaced by + * "authSecretSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getAuthSecret__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAuthSecret() { + return authSecret != null ? new String(authSecret) : null; + } + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") + public char[] getAuthSecret__AsCharArray() { + return authSecret; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private final String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + * + * @return the value + */ + public String getAuthSecretSecretId() { + return authSecretSecretId; + } + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * Defaults to AES_CTR_NOPADDING when not provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private final SparkConnection.RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * Defaults to AES_CTR_NOPADDING when not provided. + * + * @return the value + */ + public SparkConnection.RpcCipher getRpcCipher() { + return rpcCipher; + } + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark + * master's REST endpoint is protected by the JWS filter. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + private final char[] restAuthSecretKey; + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark + * master's REST endpoint is protected by the JWS filter. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. <p> Deprecated: This field is deprecated and replaced by + * "restAuthSecretKeySecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getRestAuthSecretKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getRestAuthSecretKey() { + return restAuthSecretKey != null ? new String(restAuthSecretKey) : null; + } + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark + * master's REST endpoint is protected by the JWS filter. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + public char[] getRestAuthSecretKey__AsCharArray() { + return restAuthSecretKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private final String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @return the value + */ + public String getRestAuthSecretKeySecretId() { + return restAuthSecretKeySecretId; + } + + /** + * The base64 encoded content of the trust store used to validate the Spark server certificate. + * Applicable when securityProtocol is TLS. Provide this when the server certificate is not + * already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") + private final char[] trustStore; + + /** + * The base64 encoded content of the trust store used to validate the Spark server certificate. + * Applicable when securityProtocol is TLS. Provide this when the server certificate is not + * already trusted by the JVM. <p> Deprecated: This field is deprecated and replaced by + * "trustStoreSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getTrustStore__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getTrustStore() { + return trustStore != null ? new String(trustStore) : null; + } + + /** + * The base64 encoded content of the trust store used to validate the Spark server certificate. + * Applicable when securityProtocol is TLS. Provide this when the server certificate is not + * already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") + public char[] getTrustStore__AsCharArray() { + return trustStore; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private final String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + * + * @return the value + */ + public String getTrustStoreSecretId() { + return trustStoreSecretId; + } + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store is + * provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + private final char[] trustStorePassword; + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store is + * provided. Required when 'trustStore' is provided. <p> Deprecated: This field is + * deprecated and replaced by "trustStorePasswordSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getTrustStorePassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getTrustStorePassword() { + return trustStorePassword != null ? new String(trustStorePassword) : null; + } + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store is + * provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + public char[] getTrustStorePassword__AsCharArray() { + return trustStorePassword; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private final String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + * + * @return the value + */ + public String getTrustStorePasswordSecretId() { + return trustStorePasswordSecretId; + } + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and a + * trust store is provided. Defaults to JKS when not provided. Provide this only when a trust + * store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private final SparkConnection.TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and a + * trust store is provided. Defaults to JKS when not provided. Provide this only when a trust + * store is provided. + * + * @return the value + */ + public SparkConnection.TrustStoreType getTrustStoreType() { + return trustStoreType; + } + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") + private final char[] keyStore; + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. <p> Deprecated: This field is deprecated and replaced by + * "keyStoreSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getKeyStore__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getKeyStore() { + return keyStore != null ? new String(keyStore) : null; + } + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") + public char[] getKeyStore__AsCharArray() { + return keyStore; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private final String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @return the value + */ + public String getKeyStoreSecretId() { + return keyStoreSecretId; + } + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client key + * store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + private final char[] keyStorePassword; + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client key + * store is provided. Required when 'keyStore' is provided. <p> Deprecated: This + * field is deprecated and replaced by "keyStorePasswordSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getKeyStorePassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getKeyStorePassword() { + return keyStorePassword != null ? new String(keyStorePassword) : null; + } + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client key + * store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + public char[] getKeyStorePassword__AsCharArray() { + return keyStorePassword; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private final String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + * + * @return the value + */ + public String getKeyStorePasswordSecretId() { + return keyStorePasswordSecretId; + } + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and a + * client key store is provided. Defaults to JKS when not provided. Provide this only when a + * client key store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private final SparkConnection.KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and a + * client key store is provided. Defaults to JKS when not provided. Provide this only when a + * client key store is provided. + * + * @return the value + */ + public SparkConnection.KeyStoreType getKeyStoreType() { + return keyStoreType; + } + + /** + * Password for the certificate private key inside the client key store. Provide this only when + * it differs from the key store password. Applicable when securityProtocol is TLS and a client + * key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") + private final char[] sslKeyPassword; + + /** + * Password for the certificate private key inside the client key store. Provide this only when + * it differs from the key store password. Applicable when securityProtocol is TLS and a client + * key store is provided. <p> Deprecated: This field is deprecated and replaced by + * "sslKeyPasswordSecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getSslKeyPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSslKeyPassword() { + return sslKeyPassword != null ? new String(sslKeyPassword) : null; + } + + /** + * Password for the certificate private key inside the client key store. Provide this only when + * it differs from the key store password. Applicable when securityProtocol is TLS and a client + * key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") + public char[] getSslKeyPassword__AsCharArray() { + return sslKeyPassword; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private final String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @return the value + */ + public String getSslKeyPasswordSecretId() { + return sslKeyPasswordSecretId; + } + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private final SparkConnection.TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + * + * @return the value + */ + public SparkConnection.TlsProtocol getTlsProtocol() { + return tlsProtocol; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final CreateSparkArtifactLocationDetails artifactLocation; + + public CreateSparkArtifactLocationDetails getArtifactLocation() { + return artifactLocation; + } + + @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("CreateSparkConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", submitMode=").append(String.valueOf(this.submitMode)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", securityProtocol=").append(String.valueOf(this.securityProtocol)); + sb.append(", clusterEndpoint=").append(String.valueOf(this.clusterEndpoint)); + sb.append(", restEndpoint=").append(String.valueOf(this.restEndpoint)); + sb.append(", authSecret=").append(""); + sb.append(", authSecretSecretId=").append(String.valueOf(this.authSecretSecretId)); + sb.append(", rpcCipher=").append(String.valueOf(this.rpcCipher)); + sb.append(", restAuthSecretKey=").append(""); + sb.append(", restAuthSecretKeySecretId=") + .append(String.valueOf(this.restAuthSecretKeySecretId)); + sb.append(", trustStore=").append(""); + sb.append(", trustStoreSecretId=").append(String.valueOf(this.trustStoreSecretId)); + sb.append(", trustStorePassword=").append(""); + sb.append(", trustStorePasswordSecretId=") + .append(String.valueOf(this.trustStorePasswordSecretId)); + sb.append(", trustStoreType=").append(String.valueOf(this.trustStoreType)); + sb.append(", keyStore=").append(""); + sb.append(", keyStoreSecretId=").append(String.valueOf(this.keyStoreSecretId)); + sb.append(", keyStorePassword=").append(""); + sb.append(", keyStorePasswordSecretId=") + .append(String.valueOf(this.keyStorePasswordSecretId)); + sb.append(", keyStoreType=").append(String.valueOf(this.keyStoreType)); + sb.append(", sslKeyPassword=").append(""); + sb.append(", sslKeyPasswordSecretId=").append(String.valueOf(this.sslKeyPasswordSecretId)); + sb.append(", tlsProtocol=").append(String.valueOf(this.tlsProtocol)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkConnectionDetails)) { + return false; + } + + CreateSparkConnectionDetails other = (CreateSparkConnectionDetails) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.submitMode, other.submitMode) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.securityProtocol, other.securityProtocol) + && java.util.Objects.equals(this.clusterEndpoint, other.clusterEndpoint) + && java.util.Objects.equals(this.restEndpoint, other.restEndpoint) + && java.util.Objects.equals(this.authSecret, other.authSecret) + && java.util.Objects.equals(this.authSecretSecretId, other.authSecretSecretId) + && java.util.Objects.equals(this.rpcCipher, other.rpcCipher) + && java.util.Objects.equals(this.restAuthSecretKey, other.restAuthSecretKey) + && java.util.Objects.equals( + this.restAuthSecretKeySecretId, other.restAuthSecretKeySecretId) + && java.util.Objects.equals(this.trustStore, other.trustStore) + && java.util.Objects.equals(this.trustStoreSecretId, other.trustStoreSecretId) + && java.util.Objects.equals(this.trustStorePassword, other.trustStorePassword) + && java.util.Objects.equals( + this.trustStorePasswordSecretId, other.trustStorePasswordSecretId) + && java.util.Objects.equals(this.trustStoreType, other.trustStoreType) + && java.util.Objects.equals(this.keyStore, other.keyStore) + && java.util.Objects.equals(this.keyStoreSecretId, other.keyStoreSecretId) + && java.util.Objects.equals(this.keyStorePassword, other.keyStorePassword) + && java.util.Objects.equals( + this.keyStorePasswordSecretId, other.keyStorePasswordSecretId) + && java.util.Objects.equals(this.keyStoreType, other.keyStoreType) + && java.util.Objects.equals(this.sslKeyPassword, other.sslKeyPassword) + && java.util.Objects.equals( + this.sslKeyPasswordSecretId, other.sslKeyPasswordSecretId) + && java.util.Objects.equals(this.tlsProtocol, other.tlsProtocol) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.submitMode == null ? 43 : this.submitMode.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = + (result * PRIME) + + (this.securityProtocol == null ? 43 : this.securityProtocol.hashCode()); + result = + (result * PRIME) + + (this.clusterEndpoint == null ? 43 : this.clusterEndpoint.hashCode()); + result = (result * PRIME) + (this.restEndpoint == null ? 43 : this.restEndpoint.hashCode()); + result = (result * PRIME) + (this.authSecret == null ? 43 : this.authSecret.hashCode()); + result = + (result * PRIME) + + (this.authSecretSecretId == null + ? 43 + : this.authSecretSecretId.hashCode()); + result = (result * PRIME) + (this.rpcCipher == null ? 43 : this.rpcCipher.hashCode()); + result = + (result * PRIME) + + (this.restAuthSecretKey == null ? 43 : this.restAuthSecretKey.hashCode()); + result = + (result * PRIME) + + (this.restAuthSecretKeySecretId == null + ? 43 + : this.restAuthSecretKeySecretId.hashCode()); + result = (result * PRIME) + (this.trustStore == null ? 43 : this.trustStore.hashCode()); + result = + (result * PRIME) + + (this.trustStoreSecretId == null + ? 43 + : this.trustStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStorePassword == null + ? 43 + : this.trustStorePassword.hashCode()); + result = + (result * PRIME) + + (this.trustStorePasswordSecretId == null + ? 43 + : this.trustStorePasswordSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStoreType == null ? 43 : this.trustStoreType.hashCode()); + result = (result * PRIME) + (this.keyStore == null ? 43 : this.keyStore.hashCode()); + result = + (result * PRIME) + + (this.keyStoreSecretId == null ? 43 : this.keyStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.keyStorePassword == null ? 43 : this.keyStorePassword.hashCode()); + result = + (result * PRIME) + + (this.keyStorePasswordSecretId == null + ? 43 + : this.keyStorePasswordSecretId.hashCode()); + result = (result * PRIME) + (this.keyStoreType == null ? 43 : this.keyStoreType.hashCode()); + result = + (result * PRIME) + + (this.sslKeyPassword == null ? 43 : this.sslKeyPassword.hashCode()); + result = + (result * PRIME) + + (this.sslKeyPasswordSecretId == null + ? 43 + : this.sslKeyPasswordSecretId.hashCode()); + result = (result * PRIME) + (this.tlsProtocol == null ? 43 : this.tlsProtocol.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..a31067cf950 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkOciObjectStorageConfigDetails.java @@ -0,0 +1,88 @@ +/** + * 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.goldengate.model; + +/** + * Configuration for creating an OCI Object Storage Spark artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType", + defaultImpl = CreateSparkOciObjectStorageConfigDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateSparkSecretKeyOciObjectStorageConfigDetails.class, + name = "CUSTOMER_SECRET_KEY"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateSparkResourcePrincipalOciObjectStorageConfigDetails.class, + name = "RESOURCE_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateSparkUserPrincipalOciObjectStorageConfigDetails.class, + name = "USER_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = CreateSparkParOciObjectStorageConfigDetails.class, + name = "PRE_AUTHENTICATED_REQUEST") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class CreateSparkOciObjectStorageConfigDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected CreateSparkOciObjectStorageConfigDetails() { + super(); + } + + @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("CreateSparkOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkOciObjectStorageConfigDetails)) { + return false; + } + + CreateSparkOciObjectStorageConfigDetails other = + (CreateSparkOciObjectStorageConfigDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkParOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkParOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..d3545c5e72d --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkParOciObjectStorageConfigDetails.java @@ -0,0 +1,238 @@ +/** + * 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.goldengate.model; + +/** + * Pre-authenticated request URL details for creating an OCI Object Storage Spark artifact location. + * Provide exactly one of {@code parUrl} or {@code parUrlSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSparkParOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSparkParOciObjectStorageConfigDetails + extends CreateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param parUrl the value to set + * @return this builder + */ + public Builder parUrl(char[] parUrl) { + this.parUrl = parUrl; + this.__explicitlySet__.add("parUrl"); + return this; + } + + public Builder parUrl(String parUrl) { + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.__explicitlySet__.add("parUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @param parUrlSecretId the value to set + * @return this builder + */ + public Builder parUrlSecretId(String parUrlSecretId) { + this.parUrlSecretId = parUrlSecretId; + this.__explicitlySet__.add("parUrlSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSparkParOciObjectStorageConfigDetails build() { + CreateSparkParOciObjectStorageConfigDetails model = + new CreateSparkParOciObjectStorageConfigDetails( + this.parUrl, this.parUrlSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSparkParOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("parUrl")) { + this.parUrl(model.getParUrl()); + } + if (model.wasPropertyExplicitlySet("parUrlSecretId")) { + this.parUrlSecretId(model.getParUrlSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateSparkParOciObjectStorageConfigDetails(String parUrl, String parUrlSecretId) { + super(); + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.parUrlSecretId = parUrlSecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateSparkParOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") char[] parUrl, + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + String parUrlSecretId) { + super(); + this.parUrl = parUrl; + this.parUrlSecretId = parUrlSecretId; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private final char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getParUrl__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getParUrl() { + return parUrl != null ? new String(parUrl) : null; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + public char[] getParUrl__AsCharArray() { + return parUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private final String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @return the value + */ + public String getParUrlSecretId() { + return parUrlSecretId; + } + + @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("CreateSparkParOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", parUrl=").append(""); + sb.append(", parUrlSecretId=").append(String.valueOf(this.parUrlSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkParOciObjectStorageConfigDetails)) { + return false; + } + + CreateSparkParOciObjectStorageConfigDetails other = + (CreateSparkParOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.parUrl, other.parUrl) + && java.util.Objects.equals(this.parUrlSecretId, other.parUrlSecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.parUrl == null ? 43 : this.parUrl.hashCode()); + result = + (result * PRIME) + + (this.parUrlSecretId == null ? 43 : this.parUrlSecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkResourcePrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkResourcePrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..e7e4139532d --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkResourcePrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,260 @@ +/** + * 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.goldengate.model; + +/** + * Resource-principal authentication and location details for creating an OCI Object Storage Spark + * artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSparkResourcePrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSparkResourcePrincipalOciObjectStorageConfigDetails + extends CreateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSparkResourcePrincipalOciObjectStorageConfigDetails build() { + CreateSparkResourcePrincipalOciObjectStorageConfigDetails model = + new CreateSparkResourcePrincipalOciObjectStorageConfigDetails( + this.region, this.namespace, this.bucket, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSparkResourcePrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateSparkResourcePrincipalOciObjectStorageConfigDetails( + String region, String namespace, String bucket, String path) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("CreateSparkResourcePrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkResourcePrincipalOciObjectStorageConfigDetails)) { + return false; + } + + CreateSparkResourcePrincipalOciObjectStorageConfigDetails other = + (CreateSparkResourcePrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkSecretKeyOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkSecretKeyOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..42406bd2a50 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkSecretKeyOciObjectStorageConfigDetails.java @@ -0,0 +1,465 @@ +/** + * 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.goldengate.model; + +/** + * Secret-key authentication and location details for creating an OCI Object Storage Spark artifact + * location. Provide exactly one of {@code secretAccessKey} or {@code secretAccessKeySecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSparkSecretKeyOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSparkSecretKeyOciObjectStorageConfigDetails + extends CreateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + * + * @param accessKeyId the value to set + * @return this builder + */ + public Builder accessKeyId(String accessKeyId) { + this.accessKeyId = accessKeyId; + this.__explicitlySet__.add("accessKeyId"); + return this; + } + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param secretAccessKey the value to set + * @return this builder + */ + public Builder secretAccessKey(char[] secretAccessKey) { + this.secretAccessKey = secretAccessKey; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + + public Builder secretAccessKey(String secretAccessKey) { + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + * + * @param secretAccessKeySecretId the value to set + * @return this builder + */ + public Builder secretAccessKeySecretId(String secretAccessKeySecretId) { + this.secretAccessKeySecretId = secretAccessKeySecretId; + this.__explicitlySet__.add("secretAccessKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSparkSecretKeyOciObjectStorageConfigDetails build() { + CreateSparkSecretKeyOciObjectStorageConfigDetails model = + new CreateSparkSecretKeyOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.accessKeyId, + this.secretAccessKey, + this.secretAccessKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSparkSecretKeyOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("accessKeyId")) { + this.accessKeyId(model.getAccessKeyId()); + } + if (model.wasPropertyExplicitlySet("secretAccessKey")) { + this.secretAccessKey(model.getSecretAccessKey()); + } + if (model.wasPropertyExplicitlySet("secretAccessKeySecretId")) { + this.secretAccessKeySecretId(model.getSecretAccessKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateSparkSecretKeyOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String accessKeyId, + String secretAccessKey, + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateSparkSecretKeyOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") String accessKeyId, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + char[] secretAccessKey, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private final String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + * + * @return the value + */ + public String getAccessKeyId() { + return accessKeyId; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private final char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getSecretAccessKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSecretAccessKey() { + return secretAccessKey != null ? new String(secretAccessKey) : null; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + public char[] getSecretAccessKey__AsCharArray() { + return secretAccessKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private final String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + * + * @return the value + */ + public String getSecretAccessKeySecretId() { + return secretAccessKeySecretId; + } + + @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("CreateSparkSecretKeyOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", accessKeyId=").append(String.valueOf(this.accessKeyId)); + sb.append(", secretAccessKey=").append(""); + sb.append(", secretAccessKeySecretId=") + .append(String.valueOf(this.secretAccessKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkSecretKeyOciObjectStorageConfigDetails)) { + return false; + } + + CreateSparkSecretKeyOciObjectStorageConfigDetails other = + (CreateSparkSecretKeyOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.accessKeyId, other.accessKeyId) + && java.util.Objects.equals(this.secretAccessKey, other.secretAccessKey) + && java.util.Objects.equals( + this.secretAccessKeySecretId, other.secretAccessKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.accessKeyId == null ? 43 : this.accessKeyId.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKey == null ? 43 : this.secretAccessKey.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKeySecretId == null + ? 43 + : this.secretAccessKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkUserPrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkUserPrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..04e2c244c1c --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateSparkUserPrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,728 @@ +/** + * 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.goldengate.model; + +/** + * User-principal authentication and location details for creating an OCI Object Storage Spark + * artifact location. Provide exactly one of {@code privateKeyFile} or {@code + * privateKeyFileSecretId}. If the private key is passphrase-protected, provide at most one of + * {@code privateKeyPassphrase} or {@code privateKeyPassphraseSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateSparkUserPrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateSparkUserPrincipalOciObjectStorageConfigDetails + extends CreateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @param tenancyId the value to set + * @return this builder + */ + public Builder tenancyId(String tenancyId) { + this.tenancyId = tenancyId; + this.__explicitlySet__.add("tenancyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + * + * @param userId the value to set + * @return this builder + */ + public Builder userId(String userId) { + this.userId = userId; + this.__explicitlySet__.add("userId"); + return this; + } + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyFile the value to set + * @return this builder + */ + public Builder privateKeyFile(char[] privateKeyFile) { + this.privateKeyFile = privateKeyFile; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + + public Builder privateKeyFile(String privateKeyFile) { + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + * + * @param privateKeyFileSecretId the value to set + * @return this builder + */ + public Builder privateKeyFileSecretId(String privateKeyFileSecretId) { + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.__explicitlySet__.add("privateKeyFileSecretId"); + return this; + } + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyPassphrase the value to set + * @return this builder + */ + public Builder privateKeyPassphrase(char[] privateKeyPassphrase) { + this.privateKeyPassphrase = privateKeyPassphrase; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + + public Builder privateKeyPassphrase(String privateKeyPassphrase) { + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @param privateKeyPassphraseSecretId the value to set + * @return this builder + */ + public Builder privateKeyPassphraseSecretId(String privateKeyPassphraseSecretId) { + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.__explicitlySet__.add("privateKeyPassphraseSecretId"); + return this; + } + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @param publicKeyFingerprint the value to set + * @return this builder + */ + public Builder publicKeyFingerprint(String publicKeyFingerprint) { + this.publicKeyFingerprint = publicKeyFingerprint; + this.__explicitlySet__.add("publicKeyFingerprint"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateSparkUserPrincipalOciObjectStorageConfigDetails build() { + CreateSparkUserPrincipalOciObjectStorageConfigDetails model = + new CreateSparkUserPrincipalOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.tenancyId, + this.userId, + this.privateKeyFile, + this.privateKeyFileSecretId, + this.privateKeyPassphrase, + this.privateKeyPassphraseSecretId, + this.publicKeyFingerprint); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateSparkUserPrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("tenancyId")) { + this.tenancyId(model.getTenancyId()); + } + if (model.wasPropertyExplicitlySet("userId")) { + this.userId(model.getUserId()); + } + if (model.wasPropertyExplicitlySet("privateKeyFile")) { + this.privateKeyFile(model.getPrivateKeyFile()); + } + if (model.wasPropertyExplicitlySet("privateKeyFileSecretId")) { + this.privateKeyFileSecretId(model.getPrivateKeyFileSecretId()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphrase")) { + this.privateKeyPassphrase(model.getPrivateKeyPassphrase()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphraseSecretId")) { + this.privateKeyPassphraseSecretId(model.getPrivateKeyPassphraseSecretId()); + } + if (model.wasPropertyExplicitlySet("publicKeyFingerprint")) { + this.publicKeyFingerprint(model.getPublicKeyFingerprint()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateSparkUserPrincipalOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String tenancyId, + String userId, + String privateKeyFile, + String privateKeyFileSecretId, + String privateKeyPassphrase, + String privateKeyPassphraseSecretId, + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public CreateSparkUserPrincipalOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") String tenancyId, + @com.fasterxml.jackson.annotation.JsonProperty("userId") String userId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") char[] privateKeyFile, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + String privateKeyFileSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + char[] privateKeyPassphrase, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + String privateKeyPassphraseSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = privateKeyPassphrase; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private final String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @return the value + */ + public String getTenancyId() { + return tenancyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private final String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + * + * @return the value + */ + public String getUserId() { + return userId; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private final char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyFile__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyFile() { + return privateKeyFile != null ? new String(privateKeyFile) : null; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + public char[] getPrivateKeyFile__AsCharArray() { + return privateKeyFile; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private final String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyFileSecretId() { + return privateKeyFileSecretId; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private final char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyPassphrase__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyPassphrase() { + return privateKeyPassphrase != null ? new String(privateKeyPassphrase) : null; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + public char[] getPrivateKeyPassphrase__AsCharArray() { + return privateKeyPassphrase; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private final String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyPassphraseSecretId() { + return privateKeyPassphraseSecretId; + } + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private final String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @return the value + */ + public String getPublicKeyFingerprint() { + return publicKeyFingerprint; + } + + @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("CreateSparkUserPrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", tenancyId=").append(String.valueOf(this.tenancyId)); + sb.append(", userId=").append(String.valueOf(this.userId)); + sb.append(", privateKeyFile=").append(""); + sb.append(", privateKeyFileSecretId=").append(String.valueOf(this.privateKeyFileSecretId)); + sb.append(", privateKeyPassphrase=").append(""); + sb.append(", privateKeyPassphraseSecretId=") + .append(String.valueOf(this.privateKeyPassphraseSecretId)); + sb.append(", publicKeyFingerprint=").append(String.valueOf(this.publicKeyFingerprint)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateSparkUserPrincipalOciObjectStorageConfigDetails)) { + return false; + } + + CreateSparkUserPrincipalOciObjectStorageConfigDetails other = + (CreateSparkUserPrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.tenancyId, other.tenancyId) + && java.util.Objects.equals(this.userId, other.userId) + && java.util.Objects.equals(this.privateKeyFile, other.privateKeyFile) + && java.util.Objects.equals( + this.privateKeyFileSecretId, other.privateKeyFileSecretId) + && java.util.Objects.equals(this.privateKeyPassphrase, other.privateKeyPassphrase) + && java.util.Objects.equals( + this.privateKeyPassphraseSecretId, other.privateKeyPassphraseSecretId) + && java.util.Objects.equals(this.publicKeyFingerprint, other.publicKeyFingerprint) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.tenancyId == null ? 43 : this.tenancyId.hashCode()); + result = (result * PRIME) + (this.userId == null ? 43 : this.userId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFile == null ? 43 : this.privateKeyFile.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFileSecretId == null + ? 43 + : this.privateKeyFileSecretId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphrase == null + ? 43 + : this.privateKeyPassphrase.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphraseSecretId == null + ? 43 + : this.privateKeyPassphraseSecretId.hashCode()); + result = + (result * PRIME) + + (this.publicKeyFingerprint == null + ? 43 + : this.publicKeyFingerprint.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateUcVolumeDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateUcVolumeDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..9b5dfacf922 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/CreateUcVolumeDatabricksEngineArtifactLocationDetails.java @@ -0,0 +1,151 @@ +/** + * 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.goldengate.model; + +/** + * The information about a Unity Catalog volume location used to share Databricks application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateUcVolumeDatabricksEngineArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateUcVolumeDatabricksEngineArtifactLocationDetails + extends CreateDatabricksEngineArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Unity Catalog volume artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateUcVolumeDatabricksEngineArtifactLocationDetails build() { + CreateUcVolumeDatabricksEngineArtifactLocationDetails model = + new CreateUcVolumeDatabricksEngineArtifactLocationDetails( + this.shouldOverwriteExisting, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateUcVolumeDatabricksEngineArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public CreateUcVolumeDatabricksEngineArtifactLocationDetails( + Boolean shouldOverwriteExisting, String path) { + super(shouldOverwriteExisting); + this.path = path; + } + + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Unity Catalog volume artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("CreateUcVolumeDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateUcVolumeDatabricksEngineArtifactLocationDetails)) { + return false; + } + + CreateUcVolumeDatabricksEngineArtifactLocationDetails other = + (CreateUcVolumeDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.path, other.path) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocation.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocation.java new file mode 100644 index 00000000000..9781dc2f5ac --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocation.java @@ -0,0 +1,121 @@ +/** + * 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.goldengate.model; + +/** + * Represents the location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = DatabricksEngineArtifactLocation.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = OciObjectStorageDatabricksEngineArtifactLocation.class, + name = "OCI_OBJECT_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = AzureDataLakeStorageDatabricksEngineArtifactLocation.class, + name = "AZURE_DATE_LAKE_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UcVolumeDatabricksEngineArtifactLocation.class, + name = "UC_VOLUME") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class DatabricksEngineArtifactLocation + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected DatabricksEngineArtifactLocation(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("DatabricksEngineArtifactLocation("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineArtifactLocation)) { + return false; + } + + DatabricksEngineArtifactLocation other = (DatabricksEngineArtifactLocation) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocationSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocationSummary.java new file mode 100644 index 00000000000..0849f86985f --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocationSummary.java @@ -0,0 +1,121 @@ +/** + * 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.goldengate.model; + +/** + * Summary of the location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = DatabricksEngineArtifactLocationSummary.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UcVolumeDatabricksEngineArtifactLocationSummary.class, + name = "UC_VOLUME"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = OciObjectStorageDatabricksEngineArtifactLocationSummary.class, + name = "OCI_OBJECT_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = AzureDataLakeStorageDatabricksEngineArtifactLocationSummary.class, + name = "AZURE_DATE_LAKE_STORAGE") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class DatabricksEngineArtifactLocationSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected DatabricksEngineArtifactLocationSummary(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("DatabricksEngineArtifactLocationSummary("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineArtifactLocationSummary)) { + return false; + } + + DatabricksEngineArtifactLocationSummary other = (DatabricksEngineArtifactLocationSummary) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocationType.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocationType.java new file mode 100644 index 00000000000..9ab02c71c97 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineArtifactLocationType.java @@ -0,0 +1,55 @@ +/** + * 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.goldengate.model; + +/** The type of location used to share Databricks application artifacts. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200407") +public enum DatabricksEngineArtifactLocationType implements com.oracle.bmc.http.internal.BmcEnum { + UcVolume("UC_VOLUME"), + OciObjectStorage("OCI_OBJECT_STORAGE"), + AzureDateLakeStorage("AZURE_DATE_LAKE_STORAGE"), + + /** + * 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(DatabricksEngineArtifactLocationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (DatabricksEngineArtifactLocationType v : + DatabricksEngineArtifactLocationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + DatabricksEngineArtifactLocationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static DatabricksEngineArtifactLocationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'DatabricksEngineArtifactLocationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineConnection.java new file mode 100644 index 00000000000..50684b33823 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineConnection.java @@ -0,0 +1,838 @@ +/** + * 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.goldengate.model; + +/** + * Represents the metadata of a Databricks Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DatabricksEngineConnection.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabricksEngineConnection extends Connection { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + 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("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Databricks Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private TechnologyType technologyType; + + /** + * The Databricks Engine technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** + * Used authentication mechanism to access the Databricks Engine REST API. Required fields + * by authentication types: - PERSONAL_ACCESS_TOKEN: user must enter authToken or + * authTokenSecretId - OAUTH_M2M: user must enter clientId and clientSecret or + * clientSecretSecretId + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. Required fields + * by authentication types: - PERSONAL_ACCESS_TOKEN: user must enter authToken or + * authTokenSecretId - OAUTH_M2M: user must enter clientId and clientSecret or + * clientSecretSecretId + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType(AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @param authTokenSecretId the value to set + * @return this builder + */ + public Builder authTokenSecretId(String authTokenSecretId) { + this.authTokenSecretId = authTokenSecretId; + this.__explicitlySet__.add("authTokenSecretId"); + return this; + } + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @param clientId the value to set + * @return this builder + */ + public Builder clientId(String clientId) { + this.clientId = clientId; + this.__explicitlySet__.add("clientId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @param clientSecretSecretId the value to set + * @return this builder + */ + public Builder clientSecretSecretId(String clientSecretSecretId) { + this.clientSecretSecretId = clientSecretSecretId; + this.__explicitlySet__.add("clientSecretSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private DatabricksEngineArtifactLocation artifactLocation; + + public Builder artifactLocation(DatabricksEngineArtifactLocation artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabricksEngineConnection build() { + DatabricksEngineConnection model = + new DatabricksEngineConnection( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.locks, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.authenticationType, + this.workspaceUrl, + this.authTokenSecretId, + this.clientId, + this.clientSecretSecretId, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabricksEngineConnection model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + if (model.wasPropertyExplicitlySet("authTokenSecretId")) { + this.authTokenSecretId(model.getAuthTokenSecretId()); + } + if (model.wasPropertyExplicitlySet("clientId")) { + this.clientId(model.getClientId()); + } + if (model.wasPropertyExplicitlySet("clientSecretSecretId")) { + this.clientSecretSecretId(model.getClientSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DatabricksEngineConnection( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.List locks, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + TechnologyType technologyType, + AuthenticationType authenticationType, + String workspaceUrl, + String authTokenSecretId, + String clientId, + String clientSecretSecretId, + DatabricksEngineArtifactLocation artifactLocation) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + locks, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authenticationType = authenticationType; + this.workspaceUrl = workspaceUrl; + this.authTokenSecretId = authTokenSecretId; + this.clientId = clientId; + this.clientSecretSecretId = clientSecretSecretId; + this.artifactLocation = artifactLocation; + } + + /** The Databricks Engine technology type. */ + public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { + DatabricksEngine("DATABRICKS_ENGINE"), + + /** + * 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(TechnologyType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (TechnologyType v : TechnologyType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + TechnologyType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static TechnologyType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'TechnologyType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** The Databricks Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final TechnologyType technologyType; + + /** + * The Databricks Engine technology type. + * + * @return the value + */ + public TechnologyType getTechnologyType() { + return technologyType; + } + + /** + * Used authentication mechanism to access the Databricks Engine REST API. Required fields by + * authentication types: - PERSONAL_ACCESS_TOKEN: user must enter authToken or authTokenSecretId + * - OAUTH_M2M: user must enter clientId and clientSecret or clientSecretSecretId + */ + public enum AuthenticationType implements com.oracle.bmc.http.internal.BmcEnum { + PersonalAccessToken("PERSONAL_ACCESS_TOKEN"), + OauthM2M("OAUTH_M2M"), + + /** + * 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(AuthenticationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (AuthenticationType v : AuthenticationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + AuthenticationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static AuthenticationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'AuthenticationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * Used authentication mechanism to access the Databricks Engine REST API. Required fields by + * authentication types: - PERSONAL_ACCESS_TOKEN: user must enter authToken or authTokenSecretId + * - OAUTH_M2M: user must enter clientId and clientSecret or clientSecretSecretId + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. Required fields by + * authentication types: - PERSONAL_ACCESS_TOKEN: user must enter authToken or authTokenSecretId + * - OAUTH_M2M: user must enter clientId and clientSecret or clientSecretSecretId + * + * @return the value + */ + public AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private final String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @return the value + */ + public String getAuthTokenSecretId() { + return authTokenSecretId; + } + + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private final String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @return the value + */ + public String getClientId() { + return clientId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private final String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @return the value + */ + public String getClientSecretSecretId() { + return clientSecretSecretId; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final DatabricksEngineArtifactLocation artifactLocation; + + public DatabricksEngineArtifactLocation getArtifactLocation() { + return artifactLocation; + } + + @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("DatabricksEngineConnection("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(", authTokenSecretId=").append(String.valueOf(this.authTokenSecretId)); + sb.append(", clientId=").append(String.valueOf(this.clientId)); + sb.append(", clientSecretSecretId=").append(String.valueOf(this.clientSecretSecretId)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineConnection)) { + return false; + } + + DatabricksEngineConnection other = (DatabricksEngineConnection) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && java.util.Objects.equals(this.authTokenSecretId, other.authTokenSecretId) + && java.util.Objects.equals(this.clientId, other.clientId) + && java.util.Objects.equals(this.clientSecretSecretId, other.clientSecretSecretId) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + result = + (result * PRIME) + + (this.authTokenSecretId == null ? 43 : this.authTokenSecretId.hashCode()); + result = (result * PRIME) + (this.clientId == null ? 43 : this.clientId.hashCode()); + result = + (result * PRIME) + + (this.clientSecretSecretId == null + ? 43 + : this.clientSecretSecretId.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineConnectionSummary.java new file mode 100644 index 00000000000..3acc2c0212e --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineConnectionSummary.java @@ -0,0 +1,730 @@ +/** + * 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.goldengate.model; + +/** + * Summary of the Databricks Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DatabricksEngineConnectionSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabricksEngineConnectionSummary extends ConnectionSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private Connection.LifecycleState lifecycleState; + + public Builder lifecycleState(Connection.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Databricks Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private DatabricksEngineConnection.TechnologyType technologyType; + + /** + * The Databricks Engine technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(DatabricksEngineConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** Used authentication mechanism to access the Databricks Engine REST API. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private DatabricksEngineConnection.AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType( + DatabricksEngineConnection.AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @param authTokenSecretId the value to set + * @return this builder + */ + public Builder authTokenSecretId(String authTokenSecretId) { + this.authTokenSecretId = authTokenSecretId; + this.__explicitlySet__.add("authTokenSecretId"); + return this; + } + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @param clientId the value to set + * @return this builder + */ + public Builder clientId(String clientId) { + this.clientId = clientId; + this.__explicitlySet__.add("clientId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @param clientSecretSecretId the value to set + * @return this builder + */ + public Builder clientSecretSecretId(String clientSecretSecretId) { + this.clientSecretSecretId = clientSecretSecretId; + this.__explicitlySet__.add("clientSecretSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private DatabricksEngineArtifactLocationSummary artifactLocation; + + public Builder artifactLocation(DatabricksEngineArtifactLocationSummary artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabricksEngineConnectionSummary build() { + DatabricksEngineConnectionSummary model = + new DatabricksEngineConnectionSummary( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.locks, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.authenticationType, + this.workspaceUrl, + this.authTokenSecretId, + this.clientId, + this.clientSecretSecretId, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabricksEngineConnectionSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + if (model.wasPropertyExplicitlySet("authTokenSecretId")) { + this.authTokenSecretId(model.getAuthTokenSecretId()); + } + if (model.wasPropertyExplicitlySet("clientId")) { + this.clientId(model.getClientId()); + } + if (model.wasPropertyExplicitlySet("clientSecretSecretId")) { + this.clientSecretSecretId(model.getClientSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DatabricksEngineConnectionSummary( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + Connection.LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + java.util.List locks, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + DatabricksEngineConnection.TechnologyType technologyType, + DatabricksEngineConnection.AuthenticationType authenticationType, + String workspaceUrl, + String authTokenSecretId, + String clientId, + String clientSecretSecretId, + DatabricksEngineArtifactLocationSummary artifactLocation) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + locks, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.authenticationType = authenticationType; + this.workspaceUrl = workspaceUrl; + this.authTokenSecretId = authTokenSecretId; + this.clientId = clientId; + this.clientSecretSecretId = clientSecretSecretId; + this.artifactLocation = artifactLocation; + } + + /** The Databricks Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final DatabricksEngineConnection.TechnologyType technologyType; + + /** + * The Databricks Engine technology type. + * + * @return the value + */ + public DatabricksEngineConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + /** Used authentication mechanism to access the Databricks Engine REST API. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final DatabricksEngineConnection.AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. + * + * @return the value + */ + public DatabricksEngineConnection.AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private final String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @return the value + */ + public String getAuthTokenSecretId() { + return authTokenSecretId; + } + + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private final String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @return the value + */ + public String getClientId() { + return clientId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private final String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @return the value + */ + public String getClientSecretSecretId() { + return clientSecretSecretId; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final DatabricksEngineArtifactLocationSummary artifactLocation; + + public DatabricksEngineArtifactLocationSummary getArtifactLocation() { + return artifactLocation; + } + + @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("DatabricksEngineConnectionSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(", authTokenSecretId=").append(String.valueOf(this.authTokenSecretId)); + sb.append(", clientId=").append(String.valueOf(this.clientId)); + sb.append(", clientSecretSecretId=").append(String.valueOf(this.clientSecretSecretId)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineConnectionSummary)) { + return false; + } + + DatabricksEngineConnectionSummary other = (DatabricksEngineConnectionSummary) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && java.util.Objects.equals(this.authTokenSecretId, other.authTokenSecretId) + && java.util.Objects.equals(this.clientId, other.clientId) + && java.util.Objects.equals(this.clientSecretSecretId, other.clientSecretSecretId) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + result = + (result * PRIME) + + (this.authTokenSecretId == null ? 43 : this.authTokenSecretId.hashCode()); + result = (result * PRIME) + (this.clientId == null ? 43 : this.clientId.hashCode()); + result = + (result * PRIME) + + (this.clientSecretSecretId == null + ? 43 + : this.clientSecretSecretId.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineOciObjectStorageConfig.java new file mode 100644 index 00000000000..202fd42c2f0 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineOciObjectStorageConfig.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.goldengate.model; + +/** + * Configuration for an OCI Object Storage Databricks Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType", + defaultImpl = DatabricksEngineOciObjectStorageConfig.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DatabricksEngineSecretKeyOciObjectStorageConfig.class, + name = "CUSTOMER_SECRET_KEY"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DatabricksEngineParOciObjectStorageConfig.class, + name = "PRE_AUTHENTICATED_REQUEST"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DatabricksEngineUserPrincipalOciObjectStorageConfig.class, + name = "USER_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = DatabricksEngineResourcePrincipalOciObjectStorageConfig.class, + name = "RESOURCE_PRINCIPAL") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class DatabricksEngineOciObjectStorageConfig + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected DatabricksEngineOciObjectStorageConfig() { + super(); + } + + @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("DatabricksEngineOciObjectStorageConfig("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineOciObjectStorageConfig)) { + return false; + } + + DatabricksEngineOciObjectStorageConfig other = (DatabricksEngineOciObjectStorageConfig) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** Authentication method used to access OCI Object Storage. */ + public enum AuthenticationType implements com.oracle.bmc.http.internal.BmcEnum { + UserPrincipal("USER_PRINCIPAL"), + ResourcePrincipal("RESOURCE_PRINCIPAL"), + CustomerSecretKey("CUSTOMER_SECRET_KEY"), + PreAuthenticatedRequest("PRE_AUTHENTICATED_REQUEST"), + + /** + * 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(AuthenticationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (AuthenticationType v : AuthenticationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + AuthenticationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static AuthenticationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'AuthenticationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineParOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineParOciObjectStorageConfig.java new file mode 100644 index 00000000000..f82a66fca67 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineParOciObjectStorageConfig.java @@ -0,0 +1,153 @@ +/** + * 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.goldengate.model; + +/** + * Pre-authenticated request URL details for an OCI Object Storage Databricks Engine artifact + * location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DatabricksEngineParOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabricksEngineParOciObjectStorageConfig + extends DatabricksEngineOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @param parUrlSecretId the value to set + * @return this builder + */ + public Builder parUrlSecretId(String parUrlSecretId) { + this.parUrlSecretId = parUrlSecretId; + this.__explicitlySet__.add("parUrlSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabricksEngineParOciObjectStorageConfig build() { + DatabricksEngineParOciObjectStorageConfig model = + new DatabricksEngineParOciObjectStorageConfig(this.parUrlSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabricksEngineParOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("parUrlSecretId")) { + this.parUrlSecretId(model.getParUrlSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DatabricksEngineParOciObjectStorageConfig(String parUrlSecretId) { + super(); + this.parUrlSecretId = parUrlSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private final String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @return the value + */ + public String getParUrlSecretId() { + return parUrlSecretId; + } + + @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("DatabricksEngineParOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", parUrlSecretId=").append(String.valueOf(this.parUrlSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineParOciObjectStorageConfig)) { + return false; + } + + DatabricksEngineParOciObjectStorageConfig other = + (DatabricksEngineParOciObjectStorageConfig) o; + return java.util.Objects.equals(this.parUrlSecretId, other.parUrlSecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.parUrlSecretId == null ? 43 : this.parUrlSecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineResourcePrincipalOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineResourcePrincipalOciObjectStorageConfig.java new file mode 100644 index 00000000000..2727012f90d --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineResourcePrincipalOciObjectStorageConfig.java @@ -0,0 +1,254 @@ +/** + * 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.goldengate.model; + +/** + * Resource-principal authentication and location details for an OCI Object Storage Databricks + * Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DatabricksEngineResourcePrincipalOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabricksEngineResourcePrincipalOciObjectStorageConfig + extends DatabricksEngineOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabricksEngineResourcePrincipalOciObjectStorageConfig build() { + DatabricksEngineResourcePrincipalOciObjectStorageConfig model = + new DatabricksEngineResourcePrincipalOciObjectStorageConfig( + this.region, this.namespace, this.bucket, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabricksEngineResourcePrincipalOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DatabricksEngineResourcePrincipalOciObjectStorageConfig( + String region, String namespace, String bucket, String path) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("DatabricksEngineResourcePrincipalOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineResourcePrincipalOciObjectStorageConfig)) { + return false; + } + + DatabricksEngineResourcePrincipalOciObjectStorageConfig other = + (DatabricksEngineResourcePrincipalOciObjectStorageConfig) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineSecretKeyOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineSecretKeyOciObjectStorageConfig.java new file mode 100644 index 00000000000..8ebbc74fd2f --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineSecretKeyOciObjectStorageConfig.java @@ -0,0 +1,360 @@ +/** + * 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.goldengate.model; + +/** + * Secret-key authentication and location details for an OCI Object Storage Databricks Engine + * artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DatabricksEngineSecretKeyOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabricksEngineSecretKeyOciObjectStorageConfig + extends DatabricksEngineOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + * + * @param accessKeyId the value to set + * @return this builder + */ + public Builder accessKeyId(String accessKeyId) { + this.accessKeyId = accessKeyId; + this.__explicitlySet__.add("accessKeyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + * + * @param secretAccessKeySecretId the value to set + * @return this builder + */ + public Builder secretAccessKeySecretId(String secretAccessKeySecretId) { + this.secretAccessKeySecretId = secretAccessKeySecretId; + this.__explicitlySet__.add("secretAccessKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabricksEngineSecretKeyOciObjectStorageConfig build() { + DatabricksEngineSecretKeyOciObjectStorageConfig model = + new DatabricksEngineSecretKeyOciObjectStorageConfig( + this.region, + this.namespace, + this.bucket, + this.path, + this.accessKeyId, + this.secretAccessKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabricksEngineSecretKeyOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("accessKeyId")) { + this.accessKeyId(model.getAccessKeyId()); + } + if (model.wasPropertyExplicitlySet("secretAccessKeySecretId")) { + this.secretAccessKeySecretId(model.getSecretAccessKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DatabricksEngineSecretKeyOciObjectStorageConfig( + String region, + String namespace, + String bucket, + String path, + String accessKeyId, + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private final String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + * + * @return the value + */ + public String getAccessKeyId() { + return accessKeyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private final String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + * + * @return the value + */ + public String getSecretAccessKeySecretId() { + return secretAccessKeySecretId; + } + + @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("DatabricksEngineSecretKeyOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", accessKeyId=").append(String.valueOf(this.accessKeyId)); + sb.append(", secretAccessKeySecretId=") + .append(String.valueOf(this.secretAccessKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineSecretKeyOciObjectStorageConfig)) { + return false; + } + + DatabricksEngineSecretKeyOciObjectStorageConfig other = + (DatabricksEngineSecretKeyOciObjectStorageConfig) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.accessKeyId, other.accessKeyId) + && java.util.Objects.equals( + this.secretAccessKeySecretId, other.secretAccessKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.accessKeyId == null ? 43 : this.accessKeyId.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKeySecretId == null + ? 43 + : this.secretAccessKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineUserPrincipalOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineUserPrincipalOciObjectStorageConfig.java new file mode 100644 index 00000000000..4abd15499a6 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DatabricksEngineUserPrincipalOciObjectStorageConfig.java @@ -0,0 +1,520 @@ +/** + * 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.goldengate.model; + +/** + * User-principal authentication and location details for an OCI Object Storage Databricks Engine + * artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = DatabricksEngineUserPrincipalOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class DatabricksEngineUserPrincipalOciObjectStorageConfig + extends DatabricksEngineOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @param tenancyId the value to set + * @return this builder + */ + public Builder tenancyId(String tenancyId) { + this.tenancyId = tenancyId; + this.__explicitlySet__.add("tenancyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + * + * @param userId the value to set + * @return this builder + */ + public Builder userId(String userId) { + this.userId = userId; + this.__explicitlySet__.add("userId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + * + * @param privateKeyFileSecretId the value to set + * @return this builder + */ + public Builder privateKeyFileSecretId(String privateKeyFileSecretId) { + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.__explicitlySet__.add("privateKeyFileSecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @param privateKeyPassphraseSecretId the value to set + * @return this builder + */ + public Builder privateKeyPassphraseSecretId(String privateKeyPassphraseSecretId) { + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.__explicitlySet__.add("privateKeyPassphraseSecretId"); + return this; + } + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @param publicKeyFingerprint the value to set + * @return this builder + */ + public Builder publicKeyFingerprint(String publicKeyFingerprint) { + this.publicKeyFingerprint = publicKeyFingerprint; + this.__explicitlySet__.add("publicKeyFingerprint"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public DatabricksEngineUserPrincipalOciObjectStorageConfig build() { + DatabricksEngineUserPrincipalOciObjectStorageConfig model = + new DatabricksEngineUserPrincipalOciObjectStorageConfig( + this.region, + this.namespace, + this.bucket, + this.path, + this.tenancyId, + this.userId, + this.privateKeyFileSecretId, + this.privateKeyPassphraseSecretId, + this.publicKeyFingerprint); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(DatabricksEngineUserPrincipalOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("tenancyId")) { + this.tenancyId(model.getTenancyId()); + } + if (model.wasPropertyExplicitlySet("userId")) { + this.userId(model.getUserId()); + } + if (model.wasPropertyExplicitlySet("privateKeyFileSecretId")) { + this.privateKeyFileSecretId(model.getPrivateKeyFileSecretId()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphraseSecretId")) { + this.privateKeyPassphraseSecretId(model.getPrivateKeyPassphraseSecretId()); + } + if (model.wasPropertyExplicitlySet("publicKeyFingerprint")) { + this.publicKeyFingerprint(model.getPublicKeyFingerprint()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public DatabricksEngineUserPrincipalOciObjectStorageConfig( + String region, + String namespace, + String bucket, + String path, + String tenancyId, + String userId, + String privateKeyFileSecretId, + String privateKeyPassphraseSecretId, + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private final String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @return the value + */ + public String getTenancyId() { + return tenancyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private final String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + * + * @return the value + */ + public String getUserId() { + return userId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private final String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyFileSecretId() { + return privateKeyFileSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private final String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyPassphraseSecretId() { + return privateKeyPassphraseSecretId; + } + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private final String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @return the value + */ + public String getPublicKeyFingerprint() { + return publicKeyFingerprint; + } + + @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("DatabricksEngineUserPrincipalOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", tenancyId=").append(String.valueOf(this.tenancyId)); + sb.append(", userId=").append(String.valueOf(this.userId)); + sb.append(", privateKeyFileSecretId=").append(String.valueOf(this.privateKeyFileSecretId)); + sb.append(", privateKeyPassphraseSecretId=") + .append(String.valueOf(this.privateKeyPassphraseSecretId)); + sb.append(", publicKeyFingerprint=").append(String.valueOf(this.publicKeyFingerprint)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DatabricksEngineUserPrincipalOciObjectStorageConfig)) { + return false; + } + + DatabricksEngineUserPrincipalOciObjectStorageConfig other = + (DatabricksEngineUserPrincipalOciObjectStorageConfig) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.tenancyId, other.tenancyId) + && java.util.Objects.equals(this.userId, other.userId) + && java.util.Objects.equals( + this.privateKeyFileSecretId, other.privateKeyFileSecretId) + && java.util.Objects.equals( + this.privateKeyPassphraseSecretId, other.privateKeyPassphraseSecretId) + && java.util.Objects.equals(this.publicKeyFingerprint, other.publicKeyFingerprint) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.tenancyId == null ? 43 : this.tenancyId.hashCode()); + result = (result * PRIME) + (this.userId == null ? 43 : this.userId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFileSecretId == null + ? 43 + : this.privateKeyFileSecretId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphraseSecretId == null + ? 43 + : this.privateKeyPassphraseSecretId.hashCode()); + result = + (result * PRIME) + + (this.publicKeyFingerprint == null + ? 43 + : this.publicKeyFingerprint.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DeploymentPeerSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DeploymentPeerSummary.java index 97f7da3c75d..22b43dd9de1 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DeploymentPeerSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/DeploymentPeerSummary.java @@ -100,14 +100,14 @@ public Builder deploymentId(String deploymentId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -470,14 +470,14 @@ public String getDeploymentId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/IcebergStorageType.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/IcebergStorageType.java index f69cc3eb976..e8a8a228c16 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/IcebergStorageType.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/IcebergStorageType.java @@ -4,7 +4,13 @@ */ package com.oracle.bmc.goldengate.model; -/** The storage type used in the Iceberg connection. */ +/** + * The storage type used in the Iceberg connection. Supported storage types by catalog type: * GLUE: + * AMAZON_S3. * HADOOP: AMAZON_S3, GOOGLE_CLOUD_STORAGE, AZURE_DATA_LAKE_STORAGE, or + * OCI_OBJECT_STORAGE_S3_API. * NESSIE: AMAZON_S3, GOOGLE_CLOUD_STORAGE, or AZURE_DATA_LAKE_STORAGE. + * * POLARIS: AMAZON_S3, GOOGLE_CLOUD_STORAGE, or AZURE_DATA_LAKE_STORAGE. * REST: AMAZON_S3, + * GOOGLE_CLOUD_STORAGE, AZURE_DATA_LAKE_STORAGE, or NONE. + */ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200407") public enum IcebergStorageType implements com.oracle.bmc.http.internal.BmcEnum { AmazonS3("AMAZON_S3"), diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetails.java index 045bf2dd6a4..5498f283370 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetails.java @@ -88,14 +88,14 @@ public Builder keyFingerprint(String keyFingerprint) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -295,14 +295,14 @@ public String getKeyFingerprint() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetailsSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetailsSummary.java index b45c11a1414..cbd50ec87ab 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetailsSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciGenAiModelAuthDetailsSummary.java @@ -59,14 +59,14 @@ public Builder keyFingerprint(String keyFingerprint) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -205,14 +205,14 @@ public String getKeyFingerprint() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnection.java index 7f630b13fe5..c44c4719b34 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnection.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnection.java @@ -262,14 +262,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -676,14 +676,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnectionSummary.java index 0fa7a85680b..6d12d4e435e 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnectionSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageConnectionSummary.java @@ -262,14 +262,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -631,14 +631,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageDatabricksEngineArtifactLocation.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageDatabricksEngineArtifactLocation.java new file mode 100644 index 00000000000..f750f549538 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageDatabricksEngineArtifactLocation.java @@ -0,0 +1,141 @@ +/** + * 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.goldengate.model; + +/** + * Represents an OCI Object Storage location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = OciObjectStorageDatabricksEngineArtifactLocation.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class OciObjectStorageDatabricksEngineArtifactLocation + extends DatabricksEngineArtifactLocation { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private DatabricksEngineOciObjectStorageConfig configuration; + + public Builder configuration(DatabricksEngineOciObjectStorageConfig configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public OciObjectStorageDatabricksEngineArtifactLocation build() { + OciObjectStorageDatabricksEngineArtifactLocation model = + new OciObjectStorageDatabricksEngineArtifactLocation( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(OciObjectStorageDatabricksEngineArtifactLocation model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public OciObjectStorageDatabricksEngineArtifactLocation( + Boolean shouldOverwriteExisting, DatabricksEngineOciObjectStorageConfig configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final DatabricksEngineOciObjectStorageConfig configuration; + + public DatabricksEngineOciObjectStorageConfig getConfiguration() { + return configuration; + } + + @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("OciObjectStorageDatabricksEngineArtifactLocation("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof OciObjectStorageDatabricksEngineArtifactLocation)) { + return false; + } + + OciObjectStorageDatabricksEngineArtifactLocation other = + (OciObjectStorageDatabricksEngineArtifactLocation) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageDatabricksEngineArtifactLocationSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageDatabricksEngineArtifactLocationSummary.java new file mode 100644 index 00000000000..e742f5d83bd --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageDatabricksEngineArtifactLocationSummary.java @@ -0,0 +1,141 @@ +/** + * 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.goldengate.model; + +/** + * Summary of an OCI Object Storage location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = OciObjectStorageDatabricksEngineArtifactLocationSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class OciObjectStorageDatabricksEngineArtifactLocationSummary + extends DatabricksEngineArtifactLocationSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private DatabricksEngineOciObjectStorageConfig configuration; + + public Builder configuration(DatabricksEngineOciObjectStorageConfig configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public OciObjectStorageDatabricksEngineArtifactLocationSummary build() { + OciObjectStorageDatabricksEngineArtifactLocationSummary model = + new OciObjectStorageDatabricksEngineArtifactLocationSummary( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(OciObjectStorageDatabricksEngineArtifactLocationSummary model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public OciObjectStorageDatabricksEngineArtifactLocationSummary( + Boolean shouldOverwriteExisting, DatabricksEngineOciObjectStorageConfig configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final DatabricksEngineOciObjectStorageConfig configuration; + + public DatabricksEngineOciObjectStorageConfig getConfiguration() { + return configuration; + } + + @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("OciObjectStorageDatabricksEngineArtifactLocationSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof OciObjectStorageDatabricksEngineArtifactLocationSummary)) { + return false; + } + + OciObjectStorageDatabricksEngineArtifactLocationSummary other = + (OciObjectStorageDatabricksEngineArtifactLocationSummary) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageSparkArtifactLocation.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageSparkArtifactLocation.java new file mode 100644 index 00000000000..5e7b9c1c85d --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageSparkArtifactLocation.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.goldengate.model; + +/** + * Represents an OCI Object Storage location used to share Spark application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = OciObjectStorageSparkArtifactLocation.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class OciObjectStorageSparkArtifactLocation extends SparkArtifactLocation { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private SparkOciObjectStorageConfig configuration; + + public Builder configuration(SparkOciObjectStorageConfig configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public OciObjectStorageSparkArtifactLocation build() { + OciObjectStorageSparkArtifactLocation model = + new OciObjectStorageSparkArtifactLocation( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(OciObjectStorageSparkArtifactLocation model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public OciObjectStorageSparkArtifactLocation( + Boolean shouldOverwriteExisting, SparkOciObjectStorageConfig configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final SparkOciObjectStorageConfig configuration; + + public SparkOciObjectStorageConfig getConfiguration() { + return configuration; + } + + @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("OciObjectStorageSparkArtifactLocation("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof OciObjectStorageSparkArtifactLocation)) { + return false; + } + + OciObjectStorageSparkArtifactLocation other = (OciObjectStorageSparkArtifactLocation) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageSparkArtifactLocationSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageSparkArtifactLocationSummary.java new file mode 100644 index 00000000000..feef5243532 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OciObjectStorageSparkArtifactLocationSummary.java @@ -0,0 +1,141 @@ +/** + * 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.goldengate.model; + +/** + * Summary of an OCI Object Storage location used to share Spark application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = OciObjectStorageSparkArtifactLocationSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class OciObjectStorageSparkArtifactLocationSummary + extends SparkArtifactLocationSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private SparkOciObjectStorageConfig configuration; + + public Builder configuration(SparkOciObjectStorageConfig configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public OciObjectStorageSparkArtifactLocationSummary build() { + OciObjectStorageSparkArtifactLocationSummary model = + new OciObjectStorageSparkArtifactLocationSummary( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(OciObjectStorageSparkArtifactLocationSummary model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public OciObjectStorageSparkArtifactLocationSummary( + Boolean shouldOverwriteExisting, SparkOciObjectStorageConfig configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final SparkOciObjectStorageConfig configuration; + + public SparkOciObjectStorageConfig getConfiguration() { + return configuration; + } + + @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("OciObjectStorageSparkArtifactLocationSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof OciObjectStorageSparkArtifactLocationSummary)) { + return false; + } + + OciObjectStorageSparkArtifactLocationSummary other = + (OciObjectStorageSparkArtifactLocationSummary) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OggDeployment.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OggDeployment.java index 72ef2621eac..b7670d08a75 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OggDeployment.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OggDeployment.java @@ -5,7 +5,7 @@ package com.oracle.bmc.goldengate.model; /** - * Deployment Data for an OggDeployment
+ * Deployment Data for an OggDeployment.
* 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 @@ -58,14 +58,22 @@ public OggDeployment( public static class Builder { /** * The name given to the GoldenGate service deployment. The name must be 1 to 32 characters - * long, must contain only alphanumeric characters and must start with a letter. + * long, must contain only alphanumeric characters and must start with a letter. For + * non-data-replication deployment types that do not use a GoldenGate deployment name, this + * property is {@code NONE}. Deprecated: This field is deprecated and will be removed after + * the date provided in the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate */ @com.fasterxml.jackson.annotation.JsonProperty("deploymentName") private String deploymentName; /** * The name given to the GoldenGate service deployment. The name must be 1 to 32 characters - * long, must contain only alphanumeric characters and must start with a letter. + * long, must contain only alphanumeric characters and must start with a letter. For + * non-data-replication deployment types that do not use a GoldenGate deployment name, this + * property is {@code NONE}. Deprecated: This field is deprecated and will be removed after + * the date provided in the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate * * @param deploymentName the value to set * @return this builder @@ -267,14 +275,22 @@ public Builder toBuilder() { /** * The name given to the GoldenGate service deployment. The name must be 1 to 32 characters - * long, must contain only alphanumeric characters and must start with a letter. + * long, must contain only alphanumeric characters and must start with a letter. For + * non-data-replication deployment types that do not use a GoldenGate deployment name, this + * property is {@code NONE}. Deprecated: This field is deprecated and will be removed after the + * date provided in the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate */ @com.fasterxml.jackson.annotation.JsonProperty("deploymentName") private final String deploymentName; /** * The name given to the GoldenGate service deployment. The name must be 1 to 32 characters - * long, must contain only alphanumeric characters and must start with a letter. + * long, must contain only alphanumeric characters and must start with a letter. For + * non-data-replication deployment types that do not use a GoldenGate deployment name, this + * property is {@code NONE}. Deprecated: This field is deprecated and will be removed after the + * date provided in the announcement: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnection.java index c32af6e6637..46d46c14b89 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnection.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnection.java @@ -277,14 +277,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -710,14 +710,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnectionSummary.java index 16a8345e5bd..d22d0f6ea3d 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnectionSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformConnectionSummary.java @@ -278,14 +278,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -666,14 +666,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformEngineConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformEngineConnection.java new file mode 100644 index 00000000000..30db85624c9 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformEngineConnection.java @@ -0,0 +1,553 @@ +/** + * 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.goldengate.model; + +/** + * Represents the metadata of an Oracle AI Data Platform Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = OracleAiDataPlatformEngineConnection.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class OracleAiDataPlatformEngineConnection extends Connection { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + 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("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Oracle AI Data Platform Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private TechnologyType technologyType; + + /** + * The Oracle AI Data Platform Engine technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public OracleAiDataPlatformEngineConnection build() { + OracleAiDataPlatformEngineConnection model = + new OracleAiDataPlatformEngineConnection( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.locks, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.workspaceUrl); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(OracleAiDataPlatformEngineConnection model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public OracleAiDataPlatformEngineConnection( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.List locks, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + TechnologyType technologyType, + String workspaceUrl) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + locks, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.workspaceUrl = workspaceUrl; + } + + /** The Oracle AI Data Platform Engine technology type. */ + public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { + OracleAiDataPlatformEngine("ORACLE_AI_DATA_PLATFORM_ENGINE"), + + /** + * 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(TechnologyType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (TechnologyType v : TechnologyType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + TechnologyType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static TechnologyType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'TechnologyType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** The Oracle AI Data Platform Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final TechnologyType technologyType; + + /** + * The Oracle AI Data Platform Engine technology type. + * + * @return the value + */ + public TechnologyType getTechnologyType() { + return technologyType; + } + + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + @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("OracleAiDataPlatformEngineConnection("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof OracleAiDataPlatformEngineConnection)) { + return false; + } + + OracleAiDataPlatformEngineConnection other = (OracleAiDataPlatformEngineConnection) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformEngineConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformEngineConnectionSummary.java new file mode 100644 index 00000000000..319bd4a0265 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleAiDataPlatformEngineConnectionSummary.java @@ -0,0 +1,510 @@ +/** + * 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.goldengate.model; + +/** + * Summary of the Oracle AI Data Platform Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = OracleAiDataPlatformEngineConnectionSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class OracleAiDataPlatformEngineConnectionSummary extends ConnectionSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private Connection.LifecycleState lifecycleState; + + public Builder lifecycleState(Connection.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Oracle AI Data Platform Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private OracleAiDataPlatformEngineConnection.TechnologyType technologyType; + + /** + * The Oracle AI Data Platform Engine technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType( + OracleAiDataPlatformEngineConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public OracleAiDataPlatformEngineConnectionSummary build() { + OracleAiDataPlatformEngineConnectionSummary model = + new OracleAiDataPlatformEngineConnectionSummary( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.locks, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.workspaceUrl); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(OracleAiDataPlatformEngineConnectionSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public OracleAiDataPlatformEngineConnectionSummary( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + Connection.LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + java.util.List locks, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + OracleAiDataPlatformEngineConnection.TechnologyType technologyType, + String workspaceUrl) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + locks, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.workspaceUrl = workspaceUrl; + } + + /** The Oracle AI Data Platform Engine technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final OracleAiDataPlatformEngineConnection.TechnologyType technologyType; + + /** + * The Oracle AI Data Platform Engine technology type. + * + * @return the value + */ + public OracleAiDataPlatformEngineConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + @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("OracleAiDataPlatformEngineConnectionSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof OracleAiDataPlatformEngineConnectionSummary)) { + return false; + } + + OracleAiDataPlatformEngineConnectionSummary other = + (OracleAiDataPlatformEngineConnectionSummary) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnection.java index f0e7197e1d3..9db4d37986c 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnection.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnection.java @@ -262,14 +262,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -676,14 +676,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnectionSummary.java index 3a21a8f34aa..4caeed7bf65 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnectionSummary.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/OracleNosqlConnectionSummary.java @@ -262,14 +262,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -631,14 +631,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocation.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocation.java new file mode 100644 index 00000000000..81638c95268 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocation.java @@ -0,0 +1,115 @@ +/** + * 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.goldengate.model; + +/** + * Represents the location used to share Spark application artifacts with a remote cluster.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = SparkArtifactLocation.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = OciObjectStorageSparkArtifactLocation.class, + name = "OCI_OBJECT_STORAGE") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SparkArtifactLocation + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected SparkArtifactLocation(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("SparkArtifactLocation("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkArtifactLocation)) { + return false; + } + + SparkArtifactLocation other = (SparkArtifactLocation) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocationSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocationSummary.java new file mode 100644 index 00000000000..36c0e921a31 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocationSummary.java @@ -0,0 +1,115 @@ +/** + * 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.goldengate.model; + +/** + * Summary of the location used to share Spark application artifacts with a remote cluster.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = SparkArtifactLocationSummary.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = OciObjectStorageSparkArtifactLocationSummary.class, + name = "OCI_OBJECT_STORAGE") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SparkArtifactLocationSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected SparkArtifactLocationSummary(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("SparkArtifactLocationSummary("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkArtifactLocationSummary)) { + return false; + } + + SparkArtifactLocationSummary other = (SparkArtifactLocationSummary) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocationType.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocationType.java new file mode 100644 index 00000000000..ee0e12fd3c9 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkArtifactLocationType.java @@ -0,0 +1,52 @@ +/** + * 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.goldengate.model; + +/** The type of location used to share Spark application artifacts. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200407") +public enum SparkArtifactLocationType implements com.oracle.bmc.http.internal.BmcEnum { + OciObjectStorage("OCI_OBJECT_STORAGE"), + + /** + * 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(SparkArtifactLocationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SparkArtifactLocationType v : SparkArtifactLocationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + SparkArtifactLocationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SparkArtifactLocationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'SparkArtifactLocationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkConnection.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkConnection.java new file mode 100644 index 00000000000..2a5803eaaa0 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkConnection.java @@ -0,0 +1,1637 @@ +/** + * 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.goldengate.model; + +/** + * Represents the metadata of a Spark Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SparkConnection.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SparkConnection extends Connection { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + 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("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Spark technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private TechnologyType technologyType; + + /** + * The Spark technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** Submission channel used to connect to Spark. */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private SubmitMode submitMode; + + /** + * Submission channel used to connect to Spark. + * + * @param submitMode the value to set + * @return this builder + */ + public Builder submitMode(SubmitMode submitMode) { + this.submitMode = submitMode; + this.__explicitlySet__.add("submitMode"); + return this; + } + /** Authentication type for Spark. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private AuthenticationType authenticationType; + + /** + * Authentication type for Spark. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType(AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** Security protocol for Spark submission traffic. */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. + * + * @param securityProtocol the value to set + * @return this builder + */ + public Builder securityProtocol(SecurityProtocol securityProtocol) { + this.securityProtocol = securityProtocol; + this.__explicitlySet__.add("securityProtocol"); + return this; + } + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @param clusterEndpoint the value to set + * @return this builder + */ + public Builder clusterEndpoint(String clusterEndpoint) { + this.clusterEndpoint = clusterEndpoint; + this.__explicitlySet__.add("clusterEndpoint"); + return this; + } + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @param restEndpoint the value to set + * @return this builder + */ + public Builder restEndpoint(String restEndpoint) { + this.restEndpoint = restEndpoint; + this.__explicitlySet__.add("restEndpoint"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + * + * @param authSecretSecretId the value to set + * @return this builder + */ + public Builder authSecretSecretId(String authSecretSecretId) { + this.authSecretSecretId = authSecretSecretId; + this.__explicitlySet__.add("authSecretSecretId"); + return this; + } + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. + * + * @param rpcCipher the value to set + * @return this builder + */ + public Builder rpcCipher(RpcCipher rpcCipher) { + this.rpcCipher = rpcCipher; + this.__explicitlySet__.add("rpcCipher"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @param restAuthSecretKeySecretId the value to set + * @return this builder + */ + public Builder restAuthSecretKeySecretId(String restAuthSecretKeySecretId) { + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.__explicitlySet__.add("restAuthSecretKeySecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + * + * @param trustStoreSecretId the value to set + * @return this builder + */ + public Builder trustStoreSecretId(String trustStoreSecretId) { + this.trustStoreSecretId = trustStoreSecretId; + this.__explicitlySet__.add("trustStoreSecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + * + * @param trustStorePasswordSecretId the value to set + * @return this builder + */ + public Builder trustStorePasswordSecretId(String trustStorePasswordSecretId) { + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.__explicitlySet__.add("trustStorePasswordSecretId"); + return this; + } + /** Trust store format used by the Spark client. */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. + * + * @param trustStoreType the value to set + * @return this builder + */ + public Builder trustStoreType(TrustStoreType trustStoreType) { + this.trustStoreType = trustStoreType; + this.__explicitlySet__.add("trustStoreType"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @param keyStoreSecretId the value to set + * @return this builder + */ + public Builder keyStoreSecretId(String keyStoreSecretId) { + this.keyStoreSecretId = keyStoreSecretId; + this.__explicitlySet__.add("keyStoreSecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + * + * @param keyStorePasswordSecretId the value to set + * @return this builder + */ + public Builder keyStorePasswordSecretId(String keyStorePasswordSecretId) { + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.__explicitlySet__.add("keyStorePasswordSecretId"); + return this; + } + /** Client key store format used for mutual TLS. */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. + * + * @param keyStoreType the value to set + * @return this builder + */ + public Builder keyStoreType(KeyStoreType keyStoreType) { + this.keyStoreType = keyStoreType; + this.__explicitlySet__.add("keyStoreType"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @param sslKeyPasswordSecretId the value to set + * @return this builder + */ + public Builder sslKeyPasswordSecretId(String sslKeyPasswordSecretId) { + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.__explicitlySet__.add("sslKeyPasswordSecretId"); + return this; + } + /** TLS protocol negotiated by the Spark client. */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. + * + * @param tlsProtocol the value to set + * @return this builder + */ + public Builder tlsProtocol(TlsProtocol tlsProtocol) { + this.tlsProtocol = tlsProtocol; + this.__explicitlySet__.add("tlsProtocol"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private SparkArtifactLocation artifactLocation; + + public Builder artifactLocation(SparkArtifactLocation artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SparkConnection build() { + SparkConnection model = + new SparkConnection( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.locks, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.submitMode, + this.authenticationType, + this.securityProtocol, + this.clusterEndpoint, + this.restEndpoint, + this.authSecretSecretId, + this.rpcCipher, + this.restAuthSecretKeySecretId, + this.trustStoreSecretId, + this.trustStorePasswordSecretId, + this.trustStoreType, + this.keyStoreSecretId, + this.keyStorePasswordSecretId, + this.keyStoreType, + this.sslKeyPasswordSecretId, + this.tlsProtocol, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SparkConnection model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("submitMode")) { + this.submitMode(model.getSubmitMode()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("securityProtocol")) { + this.securityProtocol(model.getSecurityProtocol()); + } + if (model.wasPropertyExplicitlySet("clusterEndpoint")) { + this.clusterEndpoint(model.getClusterEndpoint()); + } + if (model.wasPropertyExplicitlySet("restEndpoint")) { + this.restEndpoint(model.getRestEndpoint()); + } + if (model.wasPropertyExplicitlySet("authSecretSecretId")) { + this.authSecretSecretId(model.getAuthSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("rpcCipher")) { + this.rpcCipher(model.getRpcCipher()); + } + if (model.wasPropertyExplicitlySet("restAuthSecretKeySecretId")) { + this.restAuthSecretKeySecretId(model.getRestAuthSecretKeySecretId()); + } + if (model.wasPropertyExplicitlySet("trustStoreSecretId")) { + this.trustStoreSecretId(model.getTrustStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStorePasswordSecretId")) { + this.trustStorePasswordSecretId(model.getTrustStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStoreType")) { + this.trustStoreType(model.getTrustStoreType()); + } + if (model.wasPropertyExplicitlySet("keyStoreSecretId")) { + this.keyStoreSecretId(model.getKeyStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStorePasswordSecretId")) { + this.keyStorePasswordSecretId(model.getKeyStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStoreType")) { + this.keyStoreType(model.getKeyStoreType()); + } + if (model.wasPropertyExplicitlySet("sslKeyPasswordSecretId")) { + this.sslKeyPasswordSecretId(model.getSslKeyPasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("tlsProtocol")) { + this.tlsProtocol(model.getTlsProtocol()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SparkConnection( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.List locks, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + TechnologyType technologyType, + SubmitMode submitMode, + AuthenticationType authenticationType, + SecurityProtocol securityProtocol, + String clusterEndpoint, + String restEndpoint, + String authSecretSecretId, + RpcCipher rpcCipher, + String restAuthSecretKeySecretId, + String trustStoreSecretId, + String trustStorePasswordSecretId, + TrustStoreType trustStoreType, + String keyStoreSecretId, + String keyStorePasswordSecretId, + KeyStoreType keyStoreType, + String sslKeyPasswordSecretId, + TlsProtocol tlsProtocol, + SparkArtifactLocation artifactLocation) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + locks, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.submitMode = submitMode; + this.authenticationType = authenticationType; + this.securityProtocol = securityProtocol; + this.clusterEndpoint = clusterEndpoint; + this.restEndpoint = restEndpoint; + this.authSecretSecretId = authSecretSecretId; + this.rpcCipher = rpcCipher; + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.trustStoreSecretId = trustStoreSecretId; + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.trustStoreType = trustStoreType; + this.keyStoreSecretId = keyStoreSecretId; + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.keyStoreType = keyStoreType; + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.tlsProtocol = tlsProtocol; + this.artifactLocation = artifactLocation; + } + + /** The Spark technology type. */ + public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { + ApacheSpark("APACHE_SPARK"), + + /** + * 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(TechnologyType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (TechnologyType v : TechnologyType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + TechnologyType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static TechnologyType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'TechnologyType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** The Spark technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final TechnologyType technologyType; + + /** + * The Spark technology type. + * + * @return the value + */ + public TechnologyType getTechnologyType() { + return technologyType; + } + + /** Submission channel used to connect to Spark. */ + public enum SubmitMode implements com.oracle.bmc.http.internal.BmcEnum { + Submit("SUBMIT"), + Rest("REST"), + + /** + * 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(SubmitMode.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SubmitMode v : SubmitMode.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + SubmitMode(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SubmitMode create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'SubmitMode', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Submission channel used to connect to Spark. */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private final SubmitMode submitMode; + + /** + * Submission channel used to connect to Spark. + * + * @return the value + */ + public SubmitMode getSubmitMode() { + return submitMode; + } + + /** Authentication type for Spark. */ + public enum AuthenticationType implements com.oracle.bmc.http.internal.BmcEnum { + None("NONE"), + SharedSecret("SHARED_SECRET"), + + /** + * 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(AuthenticationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (AuthenticationType v : AuthenticationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + AuthenticationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static AuthenticationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'AuthenticationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Authentication type for Spark. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final AuthenticationType authenticationType; + + /** + * Authentication type for Spark. + * + * @return the value + */ + public AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** Security protocol for Spark submission traffic. */ + public enum SecurityProtocol implements com.oracle.bmc.http.internal.BmcEnum { + Plaintext("PLAINTEXT"), + Tls("TLS"), + AesRpc("AES_RPC"), + SaslEncrypted("SASL_ENCRYPTED"), + + /** + * 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(SecurityProtocol.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SecurityProtocol v : SecurityProtocol.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + SecurityProtocol(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SecurityProtocol create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'SecurityProtocol', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Security protocol for Spark submission traffic. */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private final SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. + * + * @return the value + */ + public SecurityProtocol getSecurityProtocol() { + return securityProtocol; + } + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private final String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @return the value + */ + public String getClusterEndpoint() { + return clusterEndpoint; + } + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private final String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @return the value + */ + public String getRestEndpoint() { + return restEndpoint; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private final String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + * + * @return the value + */ + public String getAuthSecretSecretId() { + return authSecretSecretId; + } + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + */ + public enum RpcCipher implements com.oracle.bmc.http.internal.BmcEnum { + AesCtrNopadding("AES_CTR_NOPADDING"), + AesGcmNopadding("AES_GCM_NOPADDING"), + + /** + * 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(RpcCipher.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (RpcCipher v : RpcCipher.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + RpcCipher(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static RpcCipher create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'RpcCipher', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private final RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * + * @return the value + */ + public RpcCipher getRpcCipher() { + return rpcCipher; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private final String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @return the value + */ + public String getRestAuthSecretKeySecretId() { + return restAuthSecretKeySecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private final String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + * + * @return the value + */ + public String getTrustStoreSecretId() { + return trustStoreSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private final String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + * + * @return the value + */ + public String getTrustStorePasswordSecretId() { + return trustStorePasswordSecretId; + } + + /** Trust store format used by the Spark client. */ + public enum TrustStoreType implements com.oracle.bmc.http.internal.BmcEnum { + Jks("JKS"), + Pkcs12("PKCS12"), + Jceks("JCEKS"), + + /** + * 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(TrustStoreType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (TrustStoreType v : TrustStoreType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + TrustStoreType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static TrustStoreType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'TrustStoreType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Trust store format used by the Spark client. */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private final TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. + * + * @return the value + */ + public TrustStoreType getTrustStoreType() { + return trustStoreType; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private final String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @return the value + */ + public String getKeyStoreSecretId() { + return keyStoreSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private final String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + * + * @return the value + */ + public String getKeyStorePasswordSecretId() { + return keyStorePasswordSecretId; + } + + /** Client key store format used for mutual TLS. */ + public enum KeyStoreType implements com.oracle.bmc.http.internal.BmcEnum { + Jks("JKS"), + Pkcs12("PKCS12"), + Jceks("JCEKS"), + + /** + * 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(KeyStoreType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (KeyStoreType v : KeyStoreType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + KeyStoreType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static KeyStoreType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'KeyStoreType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** Client key store format used for mutual TLS. */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private final KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. + * + * @return the value + */ + public KeyStoreType getKeyStoreType() { + return keyStoreType; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private final String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @return the value + */ + public String getSslKeyPasswordSecretId() { + return sslKeyPasswordSecretId; + } + + /** TLS protocol negotiated by the Spark client. */ + public enum TlsProtocol implements com.oracle.bmc.http.internal.BmcEnum { + TlsV12("TLS_V1_2"), + TlsV13("TLS_V1_3"), + + /** + * 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(TlsProtocol.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (TlsProtocol v : TlsProtocol.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + TlsProtocol(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static TlsProtocol create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'TlsProtocol', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** TLS protocol negotiated by the Spark client. */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private final TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. + * + * @return the value + */ + public TlsProtocol getTlsProtocol() { + return tlsProtocol; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final SparkArtifactLocation artifactLocation; + + public SparkArtifactLocation getArtifactLocation() { + return artifactLocation; + } + + @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("SparkConnection("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", submitMode=").append(String.valueOf(this.submitMode)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", securityProtocol=").append(String.valueOf(this.securityProtocol)); + sb.append(", clusterEndpoint=").append(String.valueOf(this.clusterEndpoint)); + sb.append(", restEndpoint=").append(String.valueOf(this.restEndpoint)); + sb.append(", authSecretSecretId=").append(String.valueOf(this.authSecretSecretId)); + sb.append(", rpcCipher=").append(String.valueOf(this.rpcCipher)); + sb.append(", restAuthSecretKeySecretId=") + .append(String.valueOf(this.restAuthSecretKeySecretId)); + sb.append(", trustStoreSecretId=").append(String.valueOf(this.trustStoreSecretId)); + sb.append(", trustStorePasswordSecretId=") + .append(String.valueOf(this.trustStorePasswordSecretId)); + sb.append(", trustStoreType=").append(String.valueOf(this.trustStoreType)); + sb.append(", keyStoreSecretId=").append(String.valueOf(this.keyStoreSecretId)); + sb.append(", keyStorePasswordSecretId=") + .append(String.valueOf(this.keyStorePasswordSecretId)); + sb.append(", keyStoreType=").append(String.valueOf(this.keyStoreType)); + sb.append(", sslKeyPasswordSecretId=").append(String.valueOf(this.sslKeyPasswordSecretId)); + sb.append(", tlsProtocol=").append(String.valueOf(this.tlsProtocol)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkConnection)) { + return false; + } + + SparkConnection other = (SparkConnection) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.submitMode, other.submitMode) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.securityProtocol, other.securityProtocol) + && java.util.Objects.equals(this.clusterEndpoint, other.clusterEndpoint) + && java.util.Objects.equals(this.restEndpoint, other.restEndpoint) + && java.util.Objects.equals(this.authSecretSecretId, other.authSecretSecretId) + && java.util.Objects.equals(this.rpcCipher, other.rpcCipher) + && java.util.Objects.equals( + this.restAuthSecretKeySecretId, other.restAuthSecretKeySecretId) + && java.util.Objects.equals(this.trustStoreSecretId, other.trustStoreSecretId) + && java.util.Objects.equals( + this.trustStorePasswordSecretId, other.trustStorePasswordSecretId) + && java.util.Objects.equals(this.trustStoreType, other.trustStoreType) + && java.util.Objects.equals(this.keyStoreSecretId, other.keyStoreSecretId) + && java.util.Objects.equals( + this.keyStorePasswordSecretId, other.keyStorePasswordSecretId) + && java.util.Objects.equals(this.keyStoreType, other.keyStoreType) + && java.util.Objects.equals( + this.sslKeyPasswordSecretId, other.sslKeyPasswordSecretId) + && java.util.Objects.equals(this.tlsProtocol, other.tlsProtocol) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.submitMode == null ? 43 : this.submitMode.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = + (result * PRIME) + + (this.securityProtocol == null ? 43 : this.securityProtocol.hashCode()); + result = + (result * PRIME) + + (this.clusterEndpoint == null ? 43 : this.clusterEndpoint.hashCode()); + result = (result * PRIME) + (this.restEndpoint == null ? 43 : this.restEndpoint.hashCode()); + result = + (result * PRIME) + + (this.authSecretSecretId == null + ? 43 + : this.authSecretSecretId.hashCode()); + result = (result * PRIME) + (this.rpcCipher == null ? 43 : this.rpcCipher.hashCode()); + result = + (result * PRIME) + + (this.restAuthSecretKeySecretId == null + ? 43 + : this.restAuthSecretKeySecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStoreSecretId == null + ? 43 + : this.trustStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStorePasswordSecretId == null + ? 43 + : this.trustStorePasswordSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStoreType == null ? 43 : this.trustStoreType.hashCode()); + result = + (result * PRIME) + + (this.keyStoreSecretId == null ? 43 : this.keyStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.keyStorePasswordSecretId == null + ? 43 + : this.keyStorePasswordSecretId.hashCode()); + result = (result * PRIME) + (this.keyStoreType == null ? 43 : this.keyStoreType.hashCode()); + result = + (result * PRIME) + + (this.sslKeyPasswordSecretId == null + ? 43 + : this.sslKeyPasswordSecretId.hashCode()); + result = (result * PRIME) + (this.tlsProtocol == null ? 43 : this.tlsProtocol.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkConnectionSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkConnectionSummary.java new file mode 100644 index 00000000000..c80ec2be051 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkConnectionSummary.java @@ -0,0 +1,1335 @@ +/** + * 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.goldengate.model; + +/** + * Summary of the Spark Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SparkConnectionSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SparkConnectionSummary extends ConnectionSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @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("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + 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("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private Connection.LifecycleState lifecycleState; + + public Builder lifecycleState(Connection.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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("timeUpdated") + private java.util.Date timeUpdated; + + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("ingressIps") + private java.util.List ingressIps; + + public Builder ingressIps(java.util.List ingressIps) { + this.ingressIps = ingressIps; + this.__explicitlySet__.add("ingressIps"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("locks") + private java.util.List locks; + + public Builder locks(java.util.List locks) { + this.locks = locks; + this.__explicitlySet__.add("locks"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("clusterPlacementGroupId") + private String clusterPlacementGroupId; + + public Builder clusterPlacementGroupId(String clusterPlacementGroupId) { + this.clusterPlacementGroupId = clusterPlacementGroupId; + this.__explicitlySet__.add("clusterPlacementGroupId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** The Spark technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private SparkConnection.TechnologyType technologyType; + + /** + * The Spark technology type. + * + * @param technologyType the value to set + * @return this builder + */ + public Builder technologyType(SparkConnection.TechnologyType technologyType) { + this.technologyType = technologyType; + this.__explicitlySet__.add("technologyType"); + return this; + } + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private SparkConnection.SubmitMode submitMode; + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + * + * @param submitMode the value to set + * @return this builder + */ + public Builder submitMode(SparkConnection.SubmitMode submitMode) { + this.submitMode = submitMode; + this.__explicitlySet__.add("submitMode"); + return this; + } + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private SparkConnection.AuthenticationType authenticationType; + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType(SparkConnection.AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, + * TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, + * and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private SparkConnection.SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, + * TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, + * and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + * + * @param securityProtocol the value to set + * @return this builder + */ + public Builder securityProtocol(SparkConnection.SecurityProtocol securityProtocol) { + this.securityProtocol = securityProtocol; + this.__explicitlySet__.add("securityProtocol"); + return this; + } + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @param clusterEndpoint the value to set + * @return this builder + */ + public Builder clusterEndpoint(String clusterEndpoint) { + this.clusterEndpoint = clusterEndpoint; + this.__explicitlySet__.add("clusterEndpoint"); + return this; + } + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @param restEndpoint the value to set + * @return this builder + */ + public Builder restEndpoint(String restEndpoint) { + this.restEndpoint = restEndpoint; + this.__explicitlySet__.add("restEndpoint"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + * + * @param authSecretSecretId the value to set + * @return this builder + */ + public Builder authSecretSecretId(String authSecretSecretId) { + this.authSecretSecretId = authSecretSecretId; + this.__explicitlySet__.add("authSecretSecretId"); + return this; + } + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. Defaults to AES_CTR_NOPADDING when not provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private SparkConnection.RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. Defaults to AES_CTR_NOPADDING when not provided. + * + * @param rpcCipher the value to set + * @return this builder + */ + public Builder rpcCipher(SparkConnection.RpcCipher rpcCipher) { + this.rpcCipher = rpcCipher; + this.__explicitlySet__.add("rpcCipher"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @param restAuthSecretKeySecretId the value to set + * @return this builder + */ + public Builder restAuthSecretKeySecretId(String restAuthSecretKeySecretId) { + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.__explicitlySet__.add("restAuthSecretKeySecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + * + * @param trustStoreSecretId the value to set + * @return this builder + */ + public Builder trustStoreSecretId(String trustStoreSecretId) { + this.trustStoreSecretId = trustStoreSecretId; + this.__explicitlySet__.add("trustStoreSecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + * + * @param trustStorePasswordSecretId the value to set + * @return this builder + */ + public Builder trustStorePasswordSecretId(String trustStorePasswordSecretId) { + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.__explicitlySet__.add("trustStorePasswordSecretId"); + return this; + } + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and + * a trust store is provided. Defaults to JKS when not provided. Provide this only when a + * trust store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private SparkConnection.TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and + * a trust store is provided. Defaults to JKS when not provided. Provide this only when a + * trust store is provided. + * + * @param trustStoreType the value to set + * @return this builder + */ + public Builder trustStoreType(SparkConnection.TrustStoreType trustStoreType) { + this.trustStoreType = trustStoreType; + this.__explicitlySet__.add("trustStoreType"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @param keyStoreSecretId the value to set + * @return this builder + */ + public Builder keyStoreSecretId(String keyStoreSecretId) { + this.keyStoreSecretId = keyStoreSecretId; + this.__explicitlySet__.add("keyStoreSecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + * + * @param keyStorePasswordSecretId the value to set + * @return this builder + */ + public Builder keyStorePasswordSecretId(String keyStorePasswordSecretId) { + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.__explicitlySet__.add("keyStorePasswordSecretId"); + return this; + } + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and + * a client key store is provided. Defaults to JKS when not provided. Provide this only when + * a client key store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private SparkConnection.KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and + * a client key store is provided. Defaults to JKS when not provided. Provide this only when + * a client key store is provided. + * + * @param keyStoreType the value to set + * @return this builder + */ + public Builder keyStoreType(SparkConnection.KeyStoreType keyStoreType) { + this.keyStoreType = keyStoreType; + this.__explicitlySet__.add("keyStoreType"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @param sslKeyPasswordSecretId the value to set + * @return this builder + */ + public Builder sslKeyPasswordSecretId(String sslKeyPasswordSecretId) { + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.__explicitlySet__.add("sslKeyPasswordSecretId"); + return this; + } + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private SparkConnection.TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + * + * @param tlsProtocol the value to set + * @return this builder + */ + public Builder tlsProtocol(SparkConnection.TlsProtocol tlsProtocol) { + this.tlsProtocol = tlsProtocol; + this.__explicitlySet__.add("tlsProtocol"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private SparkArtifactLocationSummary artifactLocation; + + public Builder artifactLocation(SparkArtifactLocationSummary artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SparkConnectionSummary build() { + SparkConnectionSummary model = + new SparkConnectionSummary( + this.id, + this.displayName, + this.description, + this.compartmentId, + this.freeformTags, + this.definedTags, + this.systemTags, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeUpdated, + this.vaultId, + this.keyId, + this.ingressIps, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.locks, + this.doesUseSecretIds, + this.subscriptionId, + this.clusterPlacementGroupId, + this.securityAttributes, + this.technologyType, + this.submitMode, + this.authenticationType, + this.securityProtocol, + this.clusterEndpoint, + this.restEndpoint, + this.authSecretSecretId, + this.rpcCipher, + this.restAuthSecretKeySecretId, + this.trustStoreSecretId, + this.trustStorePasswordSecretId, + this.trustStoreType, + this.keyStoreSecretId, + this.keyStorePasswordSecretId, + this.keyStoreType, + this.sslKeyPasswordSecretId, + this.tlsProtocol, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SparkConnectionSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + 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("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("ingressIps")) { + this.ingressIps(model.getIngressIps()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("locks")) { + this.locks(model.getLocks()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("clusterPlacementGroupId")) { + this.clusterPlacementGroupId(model.getClusterPlacementGroupId()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("technologyType")) { + this.technologyType(model.getTechnologyType()); + } + if (model.wasPropertyExplicitlySet("submitMode")) { + this.submitMode(model.getSubmitMode()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("securityProtocol")) { + this.securityProtocol(model.getSecurityProtocol()); + } + if (model.wasPropertyExplicitlySet("clusterEndpoint")) { + this.clusterEndpoint(model.getClusterEndpoint()); + } + if (model.wasPropertyExplicitlySet("restEndpoint")) { + this.restEndpoint(model.getRestEndpoint()); + } + if (model.wasPropertyExplicitlySet("authSecretSecretId")) { + this.authSecretSecretId(model.getAuthSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("rpcCipher")) { + this.rpcCipher(model.getRpcCipher()); + } + if (model.wasPropertyExplicitlySet("restAuthSecretKeySecretId")) { + this.restAuthSecretKeySecretId(model.getRestAuthSecretKeySecretId()); + } + if (model.wasPropertyExplicitlySet("trustStoreSecretId")) { + this.trustStoreSecretId(model.getTrustStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStorePasswordSecretId")) { + this.trustStorePasswordSecretId(model.getTrustStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStoreType")) { + this.trustStoreType(model.getTrustStoreType()); + } + if (model.wasPropertyExplicitlySet("keyStoreSecretId")) { + this.keyStoreSecretId(model.getKeyStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStorePasswordSecretId")) { + this.keyStorePasswordSecretId(model.getKeyStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStoreType")) { + this.keyStoreType(model.getKeyStoreType()); + } + if (model.wasPropertyExplicitlySet("sslKeyPasswordSecretId")) { + this.sslKeyPasswordSecretId(model.getSslKeyPasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("tlsProtocol")) { + this.tlsProtocol(model.getTlsProtocol()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SparkConnectionSummary( + String id, + String displayName, + String description, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags, + Connection.LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeUpdated, + String vaultId, + String keyId, + java.util.List ingressIps, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + java.util.List locks, + Boolean doesUseSecretIds, + String subscriptionId, + String clusterPlacementGroupId, + java.util.Map> securityAttributes, + SparkConnection.TechnologyType technologyType, + SparkConnection.SubmitMode submitMode, + SparkConnection.AuthenticationType authenticationType, + SparkConnection.SecurityProtocol securityProtocol, + String clusterEndpoint, + String restEndpoint, + String authSecretSecretId, + SparkConnection.RpcCipher rpcCipher, + String restAuthSecretKeySecretId, + String trustStoreSecretId, + String trustStorePasswordSecretId, + SparkConnection.TrustStoreType trustStoreType, + String keyStoreSecretId, + String keyStorePasswordSecretId, + SparkConnection.KeyStoreType keyStoreType, + String sslKeyPasswordSecretId, + SparkConnection.TlsProtocol tlsProtocol, + SparkArtifactLocationSummary artifactLocation) { + super( + id, + displayName, + description, + compartmentId, + freeformTags, + definedTags, + systemTags, + lifecycleState, + lifecycleDetails, + timeCreated, + timeUpdated, + vaultId, + keyId, + ingressIps, + nsgIds, + subnetId, + routingMethod, + locks, + doesUseSecretIds, + subscriptionId, + clusterPlacementGroupId, + securityAttributes); + this.technologyType = technologyType; + this.submitMode = submitMode; + this.authenticationType = authenticationType; + this.securityProtocol = securityProtocol; + this.clusterEndpoint = clusterEndpoint; + this.restEndpoint = restEndpoint; + this.authSecretSecretId = authSecretSecretId; + this.rpcCipher = rpcCipher; + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.trustStoreSecretId = trustStoreSecretId; + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.trustStoreType = trustStoreType; + this.keyStoreSecretId = keyStoreSecretId; + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.keyStoreType = keyStoreType; + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.tlsProtocol = tlsProtocol; + this.artifactLocation = artifactLocation; + } + + /** The Spark technology type. */ + @com.fasterxml.jackson.annotation.JsonProperty("technologyType") + private final SparkConnection.TechnologyType technologyType; + + /** + * The Spark technology type. + * + * @return the value + */ + public SparkConnection.TechnologyType getTechnologyType() { + return technologyType; + } + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private final SparkConnection.SubmitMode submitMode; + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + * + * @return the value + */ + public SparkConnection.SubmitMode getSubmitMode() { + return submitMode; + } + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final SparkConnection.AuthenticationType authenticationType; + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + * + * @return the value + */ + public SparkConnection.AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, TLS + * uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and + * SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private final SparkConnection.SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, TLS + * uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and + * SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + * + * @return the value + */ + public SparkConnection.SecurityProtocol getSecurityProtocol() { + return securityProtocol; + } + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private final String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @return the value + */ + public String getClusterEndpoint() { + return clusterEndpoint; + } + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private final String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @return the value + */ + public String getRestEndpoint() { + return restEndpoint; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private final String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + * + * @return the value + */ + public String getAuthSecretSecretId() { + return authSecretSecretId; + } + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * Defaults to AES_CTR_NOPADDING when not provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private final SparkConnection.RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * Defaults to AES_CTR_NOPADDING when not provided. + * + * @return the value + */ + public SparkConnection.RpcCipher getRpcCipher() { + return rpcCipher; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private final String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @return the value + */ + public String getRestAuthSecretKeySecretId() { + return restAuthSecretKeySecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private final String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + * + * @return the value + */ + public String getTrustStoreSecretId() { + return trustStoreSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private final String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + * + * @return the value + */ + public String getTrustStorePasswordSecretId() { + return trustStorePasswordSecretId; + } + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and a + * trust store is provided. Defaults to JKS when not provided. Provide this only when a trust + * store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private final SparkConnection.TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and a + * trust store is provided. Defaults to JKS when not provided. Provide this only when a trust + * store is provided. + * + * @return the value + */ + public SparkConnection.TrustStoreType getTrustStoreType() { + return trustStoreType; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private final String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @return the value + */ + public String getKeyStoreSecretId() { + return keyStoreSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private final String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + * + * @return the value + */ + public String getKeyStorePasswordSecretId() { + return keyStorePasswordSecretId; + } + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and a + * client key store is provided. Defaults to JKS when not provided. Provide this only when a + * client key store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private final SparkConnection.KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and a + * client key store is provided. Defaults to JKS when not provided. Provide this only when a + * client key store is provided. + * + * @return the value + */ + public SparkConnection.KeyStoreType getKeyStoreType() { + return keyStoreType; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private final String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @return the value + */ + public String getSslKeyPasswordSecretId() { + return sslKeyPasswordSecretId; + } + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private final SparkConnection.TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + * + * @return the value + */ + public SparkConnection.TlsProtocol getTlsProtocol() { + return tlsProtocol; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final SparkArtifactLocationSummary artifactLocation; + + public SparkArtifactLocationSummary getArtifactLocation() { + return artifactLocation; + } + + @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("SparkConnectionSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", technologyType=").append(String.valueOf(this.technologyType)); + sb.append(", submitMode=").append(String.valueOf(this.submitMode)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", securityProtocol=").append(String.valueOf(this.securityProtocol)); + sb.append(", clusterEndpoint=").append(String.valueOf(this.clusterEndpoint)); + sb.append(", restEndpoint=").append(String.valueOf(this.restEndpoint)); + sb.append(", authSecretSecretId=").append(String.valueOf(this.authSecretSecretId)); + sb.append(", rpcCipher=").append(String.valueOf(this.rpcCipher)); + sb.append(", restAuthSecretKeySecretId=") + .append(String.valueOf(this.restAuthSecretKeySecretId)); + sb.append(", trustStoreSecretId=").append(String.valueOf(this.trustStoreSecretId)); + sb.append(", trustStorePasswordSecretId=") + .append(String.valueOf(this.trustStorePasswordSecretId)); + sb.append(", trustStoreType=").append(String.valueOf(this.trustStoreType)); + sb.append(", keyStoreSecretId=").append(String.valueOf(this.keyStoreSecretId)); + sb.append(", keyStorePasswordSecretId=") + .append(String.valueOf(this.keyStorePasswordSecretId)); + sb.append(", keyStoreType=").append(String.valueOf(this.keyStoreType)); + sb.append(", sslKeyPasswordSecretId=").append(String.valueOf(this.sslKeyPasswordSecretId)); + sb.append(", tlsProtocol=").append(String.valueOf(this.tlsProtocol)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkConnectionSummary)) { + return false; + } + + SparkConnectionSummary other = (SparkConnectionSummary) o; + return java.util.Objects.equals(this.technologyType, other.technologyType) + && java.util.Objects.equals(this.submitMode, other.submitMode) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.securityProtocol, other.securityProtocol) + && java.util.Objects.equals(this.clusterEndpoint, other.clusterEndpoint) + && java.util.Objects.equals(this.restEndpoint, other.restEndpoint) + && java.util.Objects.equals(this.authSecretSecretId, other.authSecretSecretId) + && java.util.Objects.equals(this.rpcCipher, other.rpcCipher) + && java.util.Objects.equals( + this.restAuthSecretKeySecretId, other.restAuthSecretKeySecretId) + && java.util.Objects.equals(this.trustStoreSecretId, other.trustStoreSecretId) + && java.util.Objects.equals( + this.trustStorePasswordSecretId, other.trustStorePasswordSecretId) + && java.util.Objects.equals(this.trustStoreType, other.trustStoreType) + && java.util.Objects.equals(this.keyStoreSecretId, other.keyStoreSecretId) + && java.util.Objects.equals( + this.keyStorePasswordSecretId, other.keyStorePasswordSecretId) + && java.util.Objects.equals(this.keyStoreType, other.keyStoreType) + && java.util.Objects.equals( + this.sslKeyPasswordSecretId, other.sslKeyPasswordSecretId) + && java.util.Objects.equals(this.tlsProtocol, other.tlsProtocol) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.technologyType == null ? 43 : this.technologyType.hashCode()); + result = (result * PRIME) + (this.submitMode == null ? 43 : this.submitMode.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = + (result * PRIME) + + (this.securityProtocol == null ? 43 : this.securityProtocol.hashCode()); + result = + (result * PRIME) + + (this.clusterEndpoint == null ? 43 : this.clusterEndpoint.hashCode()); + result = (result * PRIME) + (this.restEndpoint == null ? 43 : this.restEndpoint.hashCode()); + result = + (result * PRIME) + + (this.authSecretSecretId == null + ? 43 + : this.authSecretSecretId.hashCode()); + result = (result * PRIME) + (this.rpcCipher == null ? 43 : this.rpcCipher.hashCode()); + result = + (result * PRIME) + + (this.restAuthSecretKeySecretId == null + ? 43 + : this.restAuthSecretKeySecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStoreSecretId == null + ? 43 + : this.trustStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStorePasswordSecretId == null + ? 43 + : this.trustStorePasswordSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStoreType == null ? 43 : this.trustStoreType.hashCode()); + result = + (result * PRIME) + + (this.keyStoreSecretId == null ? 43 : this.keyStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.keyStorePasswordSecretId == null + ? 43 + : this.keyStorePasswordSecretId.hashCode()); + result = (result * PRIME) + (this.keyStoreType == null ? 43 : this.keyStoreType.hashCode()); + result = + (result * PRIME) + + (this.sslKeyPasswordSecretId == null + ? 43 + : this.sslKeyPasswordSecretId.hashCode()); + result = (result * PRIME) + (this.tlsProtocol == null ? 43 : this.tlsProtocol.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkOciObjectStorageConfig.java new file mode 100644 index 00000000000..684c026388c --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkOciObjectStorageConfig.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.goldengate.model; + +/** + * Configuration for an OCI Object Storage Spark artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType", + defaultImpl = SparkOciObjectStorageConfig.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SparkResourcePrincipalOciObjectStorageConfig.class, + name = "RESOURCE_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SparkParOciObjectStorageConfig.class, + name = "PRE_AUTHENTICATED_REQUEST"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SparkUserPrincipalOciObjectStorageConfig.class, + name = "USER_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = SparkSecretKeyOciObjectStorageConfig.class, + name = "CUSTOMER_SECRET_KEY") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class SparkOciObjectStorageConfig + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected SparkOciObjectStorageConfig() { + super(); + } + + @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("SparkOciObjectStorageConfig("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkOciObjectStorageConfig)) { + return false; + } + + SparkOciObjectStorageConfig other = (SparkOciObjectStorageConfig) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } + + /** Authentication method used to access OCI Object Storage. */ + public enum AuthenticationType implements com.oracle.bmc.http.internal.BmcEnum { + UserPrincipal("USER_PRINCIPAL"), + ResourcePrincipal("RESOURCE_PRINCIPAL"), + CustomerSecretKey("CUSTOMER_SECRET_KEY"), + PreAuthenticatedRequest("PRE_AUTHENTICATED_REQUEST"), + + /** + * 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(AuthenticationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (AuthenticationType v : AuthenticationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + AuthenticationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static AuthenticationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'AuthenticationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkParOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkParOciObjectStorageConfig.java new file mode 100644 index 00000000000..97b9422c313 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkParOciObjectStorageConfig.java @@ -0,0 +1,150 @@ +/** + * 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.goldengate.model; + +/** + * Pre-authenticated request URL details for an OCI Object Storage Spark artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SparkParOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SparkParOciObjectStorageConfig extends SparkOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @param parUrlSecretId the value to set + * @return this builder + */ + public Builder parUrlSecretId(String parUrlSecretId) { + this.parUrlSecretId = parUrlSecretId; + this.__explicitlySet__.add("parUrlSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SparkParOciObjectStorageConfig build() { + SparkParOciObjectStorageConfig model = + new SparkParOciObjectStorageConfig(this.parUrlSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SparkParOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("parUrlSecretId")) { + this.parUrlSecretId(model.getParUrlSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SparkParOciObjectStorageConfig(String parUrlSecretId) { + super(); + this.parUrlSecretId = parUrlSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private final String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @return the value + */ + public String getParUrlSecretId() { + return parUrlSecretId; + } + + @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("SparkParOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", parUrlSecretId=").append(String.valueOf(this.parUrlSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkParOciObjectStorageConfig)) { + return false; + } + + SparkParOciObjectStorageConfig other = (SparkParOciObjectStorageConfig) o; + return java.util.Objects.equals(this.parUrlSecretId, other.parUrlSecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.parUrlSecretId == null ? 43 : this.parUrlSecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkResourcePrincipalOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkResourcePrincipalOciObjectStorageConfig.java new file mode 100644 index 00000000000..89810955a85 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkResourcePrincipalOciObjectStorageConfig.java @@ -0,0 +1,260 @@ +/** + * 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.goldengate.model; + +/** + * Resource-principal authentication and location details for an OCI Object Storage Spark artifact + * location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SparkResourcePrincipalOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SparkResourcePrincipalOciObjectStorageConfig + extends SparkOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SparkResourcePrincipalOciObjectStorageConfig build() { + SparkResourcePrincipalOciObjectStorageConfig model = + new SparkResourcePrincipalOciObjectStorageConfig( + this.region, this.namespace, this.bucket, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SparkResourcePrincipalOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SparkResourcePrincipalOciObjectStorageConfig( + String region, String namespace, String bucket, String path) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("SparkResourcePrincipalOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkResourcePrincipalOciObjectStorageConfig)) { + return false; + } + + SparkResourcePrincipalOciObjectStorageConfig other = + (SparkResourcePrincipalOciObjectStorageConfig) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkSecretKeyOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkSecretKeyOciObjectStorageConfig.java new file mode 100644 index 00000000000..62126376111 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkSecretKeyOciObjectStorageConfig.java @@ -0,0 +1,364 @@ +/** + * 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.goldengate.model; + +/** + * Secret-key authentication and location details for an OCI Object Storage Spark artifact location. + *
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SparkSecretKeyOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SparkSecretKeyOciObjectStorageConfig extends SparkOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + * + * @param accessKeyId the value to set + * @return this builder + */ + public Builder accessKeyId(String accessKeyId) { + this.accessKeyId = accessKeyId; + this.__explicitlySet__.add("accessKeyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + * + * @param secretAccessKeySecretId the value to set + * @return this builder + */ + public Builder secretAccessKeySecretId(String secretAccessKeySecretId) { + this.secretAccessKeySecretId = secretAccessKeySecretId; + this.__explicitlySet__.add("secretAccessKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SparkSecretKeyOciObjectStorageConfig build() { + SparkSecretKeyOciObjectStorageConfig model = + new SparkSecretKeyOciObjectStorageConfig( + this.region, + this.namespace, + this.bucket, + this.path, + this.accessKeyId, + this.secretAccessKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SparkSecretKeyOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("accessKeyId")) { + this.accessKeyId(model.getAccessKeyId()); + } + if (model.wasPropertyExplicitlySet("secretAccessKeySecretId")) { + this.secretAccessKeySecretId(model.getSecretAccessKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SparkSecretKeyOciObjectStorageConfig( + String region, + String namespace, + String bucket, + String path, + String accessKeyId, + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private final String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + * + * @return the value + */ + public String getAccessKeyId() { + return accessKeyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private final String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + * + * @return the value + */ + public String getSecretAccessKeySecretId() { + return secretAccessKeySecretId; + } + + @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("SparkSecretKeyOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", accessKeyId=").append(String.valueOf(this.accessKeyId)); + sb.append(", secretAccessKeySecretId=") + .append(String.valueOf(this.secretAccessKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkSecretKeyOciObjectStorageConfig)) { + return false; + } + + SparkSecretKeyOciObjectStorageConfig other = (SparkSecretKeyOciObjectStorageConfig) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.accessKeyId, other.accessKeyId) + && java.util.Objects.equals( + this.secretAccessKeySecretId, other.secretAccessKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.accessKeyId == null ? 43 : this.accessKeyId.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKeySecretId == null + ? 43 + : this.secretAccessKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkUserPrincipalOciObjectStorageConfig.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkUserPrincipalOciObjectStorageConfig.java new file mode 100644 index 00000000000..56d7bfff66b --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/SparkUserPrincipalOciObjectStorageConfig.java @@ -0,0 +1,526 @@ +/** + * 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.goldengate.model; + +/** + * User-principal authentication and location details for an OCI Object Storage Spark artifact + * location. The private key is represented by {@code privateKeyFileSecretId}; the private key + * content is never returned.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SparkUserPrincipalOciObjectStorageConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SparkUserPrincipalOciObjectStorageConfig extends SparkOciObjectStorageConfig { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @param tenancyId the value to set + * @return this builder + */ + public Builder tenancyId(String tenancyId) { + this.tenancyId = tenancyId; + this.__explicitlySet__.add("tenancyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + * + * @param userId the value to set + * @return this builder + */ + public Builder userId(String userId) { + this.userId = userId; + this.__explicitlySet__.add("userId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + * + * @param privateKeyFileSecretId the value to set + * @return this builder + */ + public Builder privateKeyFileSecretId(String privateKeyFileSecretId) { + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.__explicitlySet__.add("privateKeyFileSecretId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @param privateKeyPassphraseSecretId the value to set + * @return this builder + */ + public Builder privateKeyPassphraseSecretId(String privateKeyPassphraseSecretId) { + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.__explicitlySet__.add("privateKeyPassphraseSecretId"); + return this; + } + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @param publicKeyFingerprint the value to set + * @return this builder + */ + public Builder publicKeyFingerprint(String publicKeyFingerprint) { + this.publicKeyFingerprint = publicKeyFingerprint; + this.__explicitlySet__.add("publicKeyFingerprint"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SparkUserPrincipalOciObjectStorageConfig build() { + SparkUserPrincipalOciObjectStorageConfig model = + new SparkUserPrincipalOciObjectStorageConfig( + this.region, + this.namespace, + this.bucket, + this.path, + this.tenancyId, + this.userId, + this.privateKeyFileSecretId, + this.privateKeyPassphraseSecretId, + this.publicKeyFingerprint); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SparkUserPrincipalOciObjectStorageConfig model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("tenancyId")) { + this.tenancyId(model.getTenancyId()); + } + if (model.wasPropertyExplicitlySet("userId")) { + this.userId(model.getUserId()); + } + if (model.wasPropertyExplicitlySet("privateKeyFileSecretId")) { + this.privateKeyFileSecretId(model.getPrivateKeyFileSecretId()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphraseSecretId")) { + this.privateKeyPassphraseSecretId(model.getPrivateKeyPassphraseSecretId()); + } + if (model.wasPropertyExplicitlySet("publicKeyFingerprint")) { + this.publicKeyFingerprint(model.getPublicKeyFingerprint()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public SparkUserPrincipalOciObjectStorageConfig( + String region, + String namespace, + String bucket, + String path, + String tenancyId, + String userId, + String privateKeyFileSecretId, + String privateKeyPassphraseSecretId, + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private final String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @return the value + */ + public String getTenancyId() { + return tenancyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private final String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + * + * @return the value + */ + public String getUserId() { + return userId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private final String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyFileSecretId() { + return privateKeyFileSecretId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private final String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyPassphraseSecretId() { + return privateKeyPassphraseSecretId; + } + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private final String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @return the value + */ + public String getPublicKeyFingerprint() { + return publicKeyFingerprint; + } + + @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("SparkUserPrincipalOciObjectStorageConfig("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", tenancyId=").append(String.valueOf(this.tenancyId)); + sb.append(", userId=").append(String.valueOf(this.userId)); + sb.append(", privateKeyFileSecretId=").append(String.valueOf(this.privateKeyFileSecretId)); + sb.append(", privateKeyPassphraseSecretId=") + .append(String.valueOf(this.privateKeyPassphraseSecretId)); + sb.append(", publicKeyFingerprint=").append(String.valueOf(this.publicKeyFingerprint)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SparkUserPrincipalOciObjectStorageConfig)) { + return false; + } + + SparkUserPrincipalOciObjectStorageConfig other = + (SparkUserPrincipalOciObjectStorageConfig) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.tenancyId, other.tenancyId) + && java.util.Objects.equals(this.userId, other.userId) + && java.util.Objects.equals( + this.privateKeyFileSecretId, other.privateKeyFileSecretId) + && java.util.Objects.equals( + this.privateKeyPassphraseSecretId, other.privateKeyPassphraseSecretId) + && java.util.Objects.equals(this.publicKeyFingerprint, other.publicKeyFingerprint) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.tenancyId == null ? 43 : this.tenancyId.hashCode()); + result = (result * PRIME) + (this.userId == null ? 43 : this.userId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFileSecretId == null + ? 43 + : this.privateKeyFileSecretId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphraseSecretId == null + ? 43 + : this.privateKeyPassphraseSecretId.hashCode()); + result = + (result * PRIME) + + (this.publicKeyFingerprint == null + ? 43 + : this.publicKeyFingerprint.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/TechnologyType.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/TechnologyType.java index 885bff737dc..79241069f67 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/TechnologyType.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/TechnologyType.java @@ -30,6 +30,7 @@ public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { OracleExadataDatabaseAtAws("ORACLE_EXADATA_DATABASE_AT_AWS"), OracleAutonomousDatabaseAtAws("ORACLE_AUTONOMOUS_DATABASE_AT_AWS"), OracleAiDataPlatform("ORACLE_AI_DATA_PLATFORM"), + OracleAiDataPlatformEngine("ORACLE_AI_DATA_PLATFORM_ENGINE"), OracleNosql("ORACLE_NOSQL"), OracleRestDataServices("ORACLE_REST_DATA_SERVICES"), OracleWeblogicJms("ORACLE_WEBLOGIC_JMS"), @@ -58,6 +59,7 @@ public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { ConfluentKafka("CONFLUENT_KAFKA"), ConfluentSchemaRegistry("CONFLUENT_SCHEMA_REGISTRY"), Databricks("DATABRICKS"), + DatabricksEngine("DATABRICKS_ENGINE"), Db2I("DB2_I"), Db2Zos("DB2_ZOS"), Elasticsearch("ELASTICSEARCH"), @@ -80,12 +82,17 @@ public enum TechnologyType implements com.oracle.bmc.http.internal.BmcEnum { MysqlServer("MYSQL_SERVER"), MysqlHeatwaveOnAzure("MYSQL_HEATWAVE_ON_AZURE"), MysqlHeatwaveOnAws("MYSQL_HEATWAVE_ON_AWS"), + ApacheSpark("APACHE_SPARK"), PostgresqlServer("POSTGRESQL_SERVER"), Redis("REDIS"), Singlestoredb("SINGLESTOREDB"), SinglestoredbCloud("SINGLESTOREDB_CLOUD"), Snowflake("SNOWFLAKE"), YugabyteDb("YUGABYTE_DB"), + OciGenerativeAi("OCI_GENERATIVE_AI"), + Gemini("GEMINI"), + OpenAi("OPEN_AI"), + VoyageAi("VOYAGE_AI"), AiModel("AI_MODEL"), /** diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UcVolumeDatabricksEngineArtifactLocation.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UcVolumeDatabricksEngineArtifactLocation.java new file mode 100644 index 00000000000..76247cb9c46 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UcVolumeDatabricksEngineArtifactLocation.java @@ -0,0 +1,149 @@ +/** + * 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.goldengate.model; + +/** + * Represents a Unity Catalog volume location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UcVolumeDatabricksEngineArtifactLocation.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UcVolumeDatabricksEngineArtifactLocation + extends DatabricksEngineArtifactLocation { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Unity Catalog volume artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UcVolumeDatabricksEngineArtifactLocation build() { + UcVolumeDatabricksEngineArtifactLocation model = + new UcVolumeDatabricksEngineArtifactLocation( + this.shouldOverwriteExisting, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UcVolumeDatabricksEngineArtifactLocation model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UcVolumeDatabricksEngineArtifactLocation(Boolean shouldOverwriteExisting, String path) { + super(shouldOverwriteExisting); + this.path = path; + } + + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Unity Catalog volume artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("UcVolumeDatabricksEngineArtifactLocation("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UcVolumeDatabricksEngineArtifactLocation)) { + return false; + } + + UcVolumeDatabricksEngineArtifactLocation other = + (UcVolumeDatabricksEngineArtifactLocation) o; + return java.util.Objects.equals(this.path, other.path) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UcVolumeDatabricksEngineArtifactLocationSummary.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UcVolumeDatabricksEngineArtifactLocationSummary.java new file mode 100644 index 00000000000..5a20a63e705 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UcVolumeDatabricksEngineArtifactLocationSummary.java @@ -0,0 +1,150 @@ +/** + * 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.goldengate.model; + +/** + * Summary of a Unity Catalog volume location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UcVolumeDatabricksEngineArtifactLocationSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UcVolumeDatabricksEngineArtifactLocationSummary + extends DatabricksEngineArtifactLocationSummary { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Unity Catalog volume artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UcVolumeDatabricksEngineArtifactLocationSummary build() { + UcVolumeDatabricksEngineArtifactLocationSummary model = + new UcVolumeDatabricksEngineArtifactLocationSummary( + this.shouldOverwriteExisting, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UcVolumeDatabricksEngineArtifactLocationSummary model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UcVolumeDatabricksEngineArtifactLocationSummary( + Boolean shouldOverwriteExisting, String path) { + super(shouldOverwriteExisting); + this.path = path; + } + + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Unity Catalog volume artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("UcVolumeDatabricksEngineArtifactLocationSummary("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UcVolumeDatabricksEngineArtifactLocationSummary)) { + return false; + } + + UcVolumeDatabricksEngineArtifactLocationSummary other = + (UcVolumeDatabricksEngineArtifactLocationSummary) o; + return java.util.Objects.equals(this.path, other.path) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateAiProviderConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateAiProviderConnectionDetails.java new file mode 100644 index 00000000000..1400c9bb384 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateAiProviderConnectionDetails.java @@ -0,0 +1,291 @@ +/** + * 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.goldengate.model; + +/** + * The information to update an AI Provider Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateAiProviderConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateAiProviderConnectionDetails extends UpdateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private UpdateAiModelAuthDetails authDetails; + + public Builder authDetails(UpdateAiModelAuthDetails authDetails) { + this.authDetails = authDetails; + this.__explicitlySet__.add("authDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateAiProviderConnectionDetails build() { + UpdateAiProviderConnectionDetails model = + new UpdateAiProviderConnectionDetails( + this.displayName, + this.description, + this.freeformTags, + this.definedTags, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.securityAttributes, + this.authDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateAiProviderConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("authDetails")) { + this.authDetails(model.getAuthDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateAiProviderConnectionDetails( + String displayName, + String description, + java.util.Map freeformTags, + java.util.Map> definedTags, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + java.util.Map> securityAttributes, + UpdateAiModelAuthDetails authDetails) { + super( + displayName, + description, + freeformTags, + definedTags, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + securityAttributes); + this.authDetails = authDetails; + } + + @com.fasterxml.jackson.annotation.JsonProperty("authDetails") + private final UpdateAiModelAuthDetails authDetails; + + public UpdateAiModelAuthDetails getAuthDetails() { + return authDetails; + } + + @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("UpdateAiProviderConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", authDetails=").append(String.valueOf(this.authDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateAiProviderConnectionDetails)) { + return false; + } + + UpdateAiProviderConnectionDetails other = (UpdateAiProviderConnectionDetails) o; + return java.util.Objects.equals(this.authDetails, other.authDetails) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.authDetails == null ? 43 : this.authDetails.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..8fd2049959b --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.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.goldengate.model; + +/** + * The information to update an Azure Data Lake Storage Gen2 location used to share Databricks + * application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails + extends UpdateDatabricksEngineArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @param storageAccount the value to set + * @return this builder + */ + public Builder storageAccount(String storageAccount) { + this.storageAccount = storageAccount; + this.__explicitlySet__.add("storageAccount"); + return this; + } + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @param filesystem the value to set + * @return this builder + */ + public Builder filesystem(String filesystem) { + this.filesystem = filesystem; + this.__explicitlySet__.add("filesystem"); + return this; + } + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @param endpointSuffix the value to set + * @return this builder + */ + public Builder endpointSuffix(String endpointSuffix) { + this.endpointSuffix = endpointSuffix; + this.__explicitlySet__.add("endpointSuffix"); + return this; + } + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") + private char[] accountKey; + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param accountKey the value to set + * @return this builder + */ + public Builder accountKey(char[] accountKey) { + this.accountKey = accountKey; + this.__explicitlySet__.add("accountKey"); + return this; + } + + public Builder accountKey(String accountKey) { + this.accountKey = accountKey != null ? accountKey.toCharArray() : null; + this.__explicitlySet__.add("accountKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' + * field must not be provided. + * + * @param accountKeySecretId the value to set + * @return this builder + */ + public Builder accountKeySecretId(String accountKeySecretId) { + this.accountKeySecretId = accountKeySecretId; + this.__explicitlySet__.add("accountKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails build() { + UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails model = + new UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails( + this.shouldOverwriteExisting, + this.storageAccount, + this.filesystem, + this.path, + this.endpointSuffix, + this.accountKey, + this.accountKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("storageAccount")) { + this.storageAccount(model.getStorageAccount()); + } + if (model.wasPropertyExplicitlySet("filesystem")) { + this.filesystem(model.getFilesystem()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("endpointSuffix")) { + this.endpointSuffix(model.getEndpointSuffix()); + } + if (model.wasPropertyExplicitlySet("accountKey")) { + this.accountKey(model.getAccountKey()); + } + if (model.wasPropertyExplicitlySet("accountKeySecretId")) { + this.accountKeySecretId(model.getAccountKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails( + Boolean shouldOverwriteExisting, + String storageAccount, + String filesystem, + String path, + String endpointSuffix, + String accountKey, + String accountKeySecretId) { + super(shouldOverwriteExisting); + this.storageAccount = storageAccount; + this.filesystem = filesystem; + this.path = path; + this.endpointSuffix = endpointSuffix; + this.accountKey = accountKey != null ? accountKey.toCharArray() : null; + this.accountKeySecretId = accountKeySecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails( + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + Boolean shouldOverwriteExisting, + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") String storageAccount, + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") String filesystem, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") String endpointSuffix, + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") char[] accountKey, + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + String accountKeySecretId) { + super(shouldOverwriteExisting); + this.storageAccount = storageAccount; + this.filesystem = filesystem; + this.path = path; + this.endpointSuffix = endpointSuffix; + this.accountKey = accountKey; + this.accountKeySecretId = accountKeySecretId; + } + + /** Azure Data Lake Storage Gen2 storage-account name. */ + @com.fasterxml.jackson.annotation.JsonProperty("storageAccount") + private final String storageAccount; + + /** + * Azure Data Lake Storage Gen2 storage-account name. + * + * @return the value + */ + public String getStorageAccount() { + return storageAccount; + } + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + */ + @com.fasterxml.jackson.annotation.JsonProperty("filesystem") + private final String filesystem; + + /** + * Azure Data Lake Storage Gen2 filesystem containing the application artifacts. Example: + * "ggs-artifacts" + * + * @return the value + */ + public String getFilesystem() { + return filesystem; + } + + /** Artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** Endpoint suffix. Defaults to dfs.core.windows.net. */ + @com.fasterxml.jackson.annotation.JsonProperty("endpointSuffix") + private final String endpointSuffix; + + /** + * Endpoint suffix. Defaults to dfs.core.windows.net. + * + * @return the value + */ + public String getEndpointSuffix() { + return endpointSuffix; + } + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in Connections" + * deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") + private final char[] accountKey; + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getAccountKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAccountKey() { + return accountKey != null ? new String(accountKey) : null; + } + + /** + * Storage account access key. Deprecated: This field is deprecated and replaced by + * "accountKeySecretId". This change follows the GoldenGate "Plain Text Fields in Connections" + * deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKey") + public char[] getAccountKey__AsCharArray() { + return accountKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accountKeySecretId") + private final String accountKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the storage account access key. Note: When provided, 'accountKey' field + * must not be provided. + * + * @return the value + */ + public String getAccountKeySecretId() { + return accountKeySecretId; + } + + @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("UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", storageAccount=").append(String.valueOf(this.storageAccount)); + sb.append(", filesystem=").append(String.valueOf(this.filesystem)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", endpointSuffix=").append(String.valueOf(this.endpointSuffix)); + sb.append(", accountKey=").append(""); + sb.append(", accountKeySecretId=").append(String.valueOf(this.accountKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails)) { + return false; + } + + UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails other = + (UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.storageAccount, other.storageAccount) + && java.util.Objects.equals(this.filesystem, other.filesystem) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.endpointSuffix, other.endpointSuffix) + && java.util.Objects.equals(this.accountKey, other.accountKey) + && java.util.Objects.equals(this.accountKeySecretId, other.accountKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.storageAccount == null ? 43 : this.storageAccount.hashCode()); + result = (result * PRIME) + (this.filesystem == null ? 43 : this.filesystem.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = + (result * PRIME) + + (this.endpointSuffix == null ? 43 : this.endpointSuffix.hashCode()); + result = (result * PRIME) + (this.accountKey == null ? 43 : this.accountKey.hashCode()); + result = + (result * PRIME) + + (this.accountKeySecretId == null + ? 43 + : this.accountKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateConnectionDetails.java index 60762f829bd..674a24bac17 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateConnectionDetails.java @@ -34,6 +34,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateAmazonRedshiftConnectionDetails.class, name = "AMAZON_REDSHIFT"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateSparkConnectionDetails.class, + name = "SPARK"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateOciObjectStorageConnectionDetails.class, name = "OCI_OBJECT_STORAGE"), @@ -73,6 +76,12 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateKafkaConnectionDetails.class, name = "KAFKA"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateAiProviderConnectionDetails.class, + name = "AI_PROVIDER"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateDatabricksEngineConnectionDetails.class, + name = "DATABRICKS_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateAzureDataLakeStorageConnectionDetails.class, name = "AZURE_DATA_LAKE_STORAGE"), @@ -109,6 +118,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateGenericConnectionDetails.class, name = "GENERIC"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateOracleAiDataPlatformEngineConnectionDetails.class, + name = "ORACLE_AI_DATA_PLATFORM_ENGINE"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = UpdateAzureSynapseConnectionDetails.class, name = "AZURE_SYNAPSE_ANALYTICS") diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..c04087cd8fb --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineArtifactLocationDetails.java @@ -0,0 +1,122 @@ +/** + * 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.goldengate.model; + +/** + * The information to update a location used to share Databricks application artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = UpdateDatabricksEngineArtifactLocationDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails.class, + name = "OCI_OBJECT_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails.class, + name = "AZURE_DATE_LAKE_STORAGE"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateUcVolumeDatabricksEngineArtifactLocationDetails.class, + name = "UC_VOLUME") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class UpdateDatabricksEngineArtifactLocationDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected UpdateDatabricksEngineArtifactLocationDetails(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged application artifact replaces an existing file or object with the + * same name at the configured destination. The artifact is typically a GGFAB pipeline package + * or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("UpdateDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineArtifactLocationDetails)) { + return false; + } + + UpdateDatabricksEngineArtifactLocationDetails other = + (UpdateDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineConnectionDetails.java new file mode 100644 index 00000000000..5882e5fadcd --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineConnectionDetails.java @@ -0,0 +1,735 @@ +/** + * 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.goldengate.model; + +/** + * The information to update a Databricks Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateDatabricksEngineConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDatabricksEngineConnectionDetails extends UpdateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** Used authentication mechanism to access the Databricks Engine REST API. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private DatabricksEngineConnection.AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType( + DatabricksEngineConnection.AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable + * for authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authToken") + private char[] authToken; + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable + * for authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param authToken the value to set + * @return this builder + */ + public Builder authToken(char[] authToken) { + this.authToken = authToken; + this.__explicitlySet__.add("authToken"); + return this; + } + + public Builder authToken(String authToken) { + this.authToken = authToken != null ? authToken.toCharArray() : null; + this.__explicitlySet__.add("authToken"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType + * == PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @param authTokenSecretId the value to set + * @return this builder + */ + public Builder authTokenSecretId(String authTokenSecretId) { + this.authTokenSecretId = authTokenSecretId; + this.__explicitlySet__.add("authTokenSecretId"); + return this; + } + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @param clientId the value to set + * @return this builder + */ + public Builder clientId(String clientId) { + this.clientId = clientId; + this.__explicitlySet__.add("clientId"); + return this; + } + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") + private char[] clientSecret; + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param clientSecret the value to set + * @return this builder + */ + public Builder clientSecret(char[] clientSecret) { + this.clientSecret = clientSecret; + this.__explicitlySet__.add("clientSecret"); + return this; + } + + public Builder clientSecret(String clientSecret) { + this.clientSecret = clientSecret != null ? clientSecret.toCharArray() : null; + this.__explicitlySet__.add("clientSecret"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @param clientSecretSecretId the value to set + * @return this builder + */ + public Builder clientSecretSecretId(String clientSecretSecretId) { + this.clientSecretSecretId = clientSecretSecretId; + this.__explicitlySet__.add("clientSecretSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private UpdateDatabricksEngineArtifactLocationDetails artifactLocation; + + public Builder artifactLocation( + UpdateDatabricksEngineArtifactLocationDetails artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDatabricksEngineConnectionDetails build() { + UpdateDatabricksEngineConnectionDetails model = + new UpdateDatabricksEngineConnectionDetails( + this.displayName, + this.description, + this.freeformTags, + this.definedTags, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.securityAttributes, + this.authenticationType, + this.workspaceUrl, + this.authToken, + this.authTokenSecretId, + this.clientId, + this.clientSecret, + this.clientSecretSecretId, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateDatabricksEngineConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + if (model.wasPropertyExplicitlySet("authToken")) { + this.authToken(model.getAuthToken()); + } + if (model.wasPropertyExplicitlySet("authTokenSecretId")) { + this.authTokenSecretId(model.getAuthTokenSecretId()); + } + if (model.wasPropertyExplicitlySet("clientId")) { + this.clientId(model.getClientId()); + } + if (model.wasPropertyExplicitlySet("clientSecret")) { + this.clientSecret(model.getClientSecret()); + } + if (model.wasPropertyExplicitlySet("clientSecretSecretId")) { + this.clientSecretSecretId(model.getClientSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateDatabricksEngineConnectionDetails( + String displayName, + String description, + java.util.Map freeformTags, + java.util.Map> definedTags, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + java.util.Map> securityAttributes, + DatabricksEngineConnection.AuthenticationType authenticationType, + String workspaceUrl, + String authToken, + String authTokenSecretId, + String clientId, + String clientSecret, + String clientSecretSecretId, + UpdateDatabricksEngineArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + freeformTags, + definedTags, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + securityAttributes); + this.authenticationType = authenticationType; + this.workspaceUrl = workspaceUrl; + this.authToken = authToken != null ? authToken.toCharArray() : null; + this.authTokenSecretId = authTokenSecretId; + this.clientId = clientId; + this.clientSecret = clientSecret != null ? clientSecret.toCharArray() : null; + this.clientSecretSecretId = clientSecretSecretId; + this.artifactLocation = artifactLocation; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateDatabricksEngineConnectionDetails( + @com.fasterxml.jackson.annotation.JsonProperty("displayName") String displayName, + @com.fasterxml.jackson.annotation.JsonProperty("description") String description, + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + java.util.Map freeformTags, + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + java.util.Map> definedTags, + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") String vaultId, + @com.fasterxml.jackson.annotation.JsonProperty("keyId") String keyId, + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") java.util.List nsgIds, + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") String subnetId, + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + RoutingMethod routingMethod, + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + Boolean doesUseSecretIds, + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + java.util.Map> securityAttributes, + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + DatabricksEngineConnection.AuthenticationType authenticationType, + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") String workspaceUrl, + @com.fasterxml.jackson.annotation.JsonProperty("authToken") char[] authToken, + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + String authTokenSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("clientId") String clientId, + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") char[] clientSecret, + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + String clientSecretSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + UpdateDatabricksEngineArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + freeformTags, + definedTags, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + securityAttributes); + this.authenticationType = authenticationType; + this.workspaceUrl = workspaceUrl; + this.authToken = authToken; + this.authTokenSecretId = authTokenSecretId; + this.clientId = clientId; + this.clientSecret = clientSecret; + this.clientSecretSecretId = clientSecretSecretId; + this.artifactLocation = artifactLocation; + } + + /** Used authentication mechanism to access the Databricks Engine REST API. */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final DatabricksEngineConnection.AuthenticationType authenticationType; + + /** + * Used authentication mechanism to access the Databricks Engine REST API. + * + * @return the value + */ + public DatabricksEngineConnection.AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Databricks workspace base URL for the REST API. e.g.: + * 'https://.azuredatabricks.net/api/2.0/' e.g.: + * 'https://.cloud.databricks.com/api/2.0/' + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable for + * authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authToken") + private final char[] authToken; + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable for + * authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated + * and replaced by "authTokenSecretId". This change follows the GoldenGate "Plain + * Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getAuthToken__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAuthToken() { + return authToken != null ? new String(authToken) : null; + } + + /** + * Personal access token used to connect to the Databricks Engine REST API. Only applicable for + * authenticationType == PERSONAL_ACCESS_TOKEN. Deprecated: This field is deprecated and + * replaced by "authTokenSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("authToken") + public char[] getAuthToken__AsCharArray() { + return authToken; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authTokenSecretId") + private final String authTokenSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the personal access token is stored. Only applicable for authenticationType == + * PERSONAL_ACCESS_TOKEN. Note: When provided, 'authToken' field must not be provided. + * + * @return the value + */ + public String getAuthTokenSecretId() { + return authTokenSecretId; + } + + /** OAuth client id, only applicable for authenticationType == OAUTH_M2M */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private final String clientId; + + /** + * OAuth client id, only applicable for authenticationType == OAUTH_M2M + * + * @return the value + */ + public String getClientId() { + return clientId; + } + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") + private final char[] clientSecret; + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M + * Deprecated: This field is deprecated and replaced by "clientSecretSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getClientSecret__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getClientSecret() { + return clientSecret != null ? new String(clientSecret) : null; + } + + /** + * OAuth client secret, only applicable for authenticationType == OAUTH_M2M Deprecated: This + * field is deprecated and replaced by "clientSecretSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecret") + public char[] getClientSecret__AsCharArray() { + return clientSecret; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretSecretId") + private final String clientSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret where the client secret is stored. Only applicable for authenticationType == + * OAUTH_M2M. Note: When provided, 'clientSecret' field must not be provided. + * + * @return the value + */ + public String getClientSecretSecretId() { + return clientSecretSecretId; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final UpdateDatabricksEngineArtifactLocationDetails artifactLocation; + + public UpdateDatabricksEngineArtifactLocationDetails getArtifactLocation() { + return artifactLocation; + } + + @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("UpdateDatabricksEngineConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(", authToken=").append(""); + sb.append(", authTokenSecretId=").append(String.valueOf(this.authTokenSecretId)); + sb.append(", clientId=").append(String.valueOf(this.clientId)); + sb.append(", clientSecret=").append(""); + sb.append(", clientSecretSecretId=").append(String.valueOf(this.clientSecretSecretId)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineConnectionDetails)) { + return false; + } + + UpdateDatabricksEngineConnectionDetails other = (UpdateDatabricksEngineConnectionDetails) o; + return java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && java.util.Objects.equals(this.authToken, other.authToken) + && java.util.Objects.equals(this.authTokenSecretId, other.authTokenSecretId) + && java.util.Objects.equals(this.clientId, other.clientId) + && java.util.Objects.equals(this.clientSecret, other.clientSecret) + && java.util.Objects.equals(this.clientSecretSecretId, other.clientSecretSecretId) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + result = (result * PRIME) + (this.authToken == null ? 43 : this.authToken.hashCode()); + result = + (result * PRIME) + + (this.authTokenSecretId == null ? 43 : this.authTokenSecretId.hashCode()); + result = (result * PRIME) + (this.clientId == null ? 43 : this.clientId.hashCode()); + result = (result * PRIME) + (this.clientSecret == null ? 43 : this.clientSecret.hashCode()); + result = + (result * PRIME) + + (this.clientSecretSecretId == null + ? 43 + : this.clientSecretSecretId.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..2607d03baa7 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineOciObjectStorageConfigDetails.java @@ -0,0 +1,88 @@ +/** + * 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.goldengate.model; + +/** + * Configuration for updating an OCI Object Storage Databricks Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType", + defaultImpl = UpdateDatabricksEngineOciObjectStorageConfigDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.class, + name = "CUSTOMER_SECRET_KEY"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.class, + name = "USER_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateDatabricksEngineParOciObjectStorageConfigDetails.class, + name = "PRE_AUTHENTICATED_REQUEST"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.class, + name = "RESOURCE_PRINCIPAL") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class UpdateDatabricksEngineOciObjectStorageConfigDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected UpdateDatabricksEngineOciObjectStorageConfigDetails() { + super(); + } + + @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("UpdateDatabricksEngineOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineOciObjectStorageConfigDetails)) { + return false; + } + + UpdateDatabricksEngineOciObjectStorageConfigDetails other = + (UpdateDatabricksEngineOciObjectStorageConfigDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineParOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineParOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..aa45319bdff --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineParOciObjectStorageConfigDetails.java @@ -0,0 +1,240 @@ +/** + * 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.goldengate.model; + +/** + * Pre-authenticated request URL details for updating an OCI Object Storage Databricks Engine + * artifact location. When updating the PAR URL, provide exactly one of {@code parUrl} or {@code + * parUrlSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateDatabricksEngineParOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDatabricksEngineParOciObjectStorageConfigDetails + extends UpdateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param parUrl the value to set + * @return this builder + */ + public Builder parUrl(char[] parUrl) { + this.parUrl = parUrl; + this.__explicitlySet__.add("parUrl"); + return this; + } + + public Builder parUrl(String parUrl) { + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.__explicitlySet__.add("parUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @param parUrlSecretId the value to set + * @return this builder + */ + public Builder parUrlSecretId(String parUrlSecretId) { + this.parUrlSecretId = parUrlSecretId; + this.__explicitlySet__.add("parUrlSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDatabricksEngineParOciObjectStorageConfigDetails build() { + UpdateDatabricksEngineParOciObjectStorageConfigDetails model = + new UpdateDatabricksEngineParOciObjectStorageConfigDetails( + this.parUrl, this.parUrlSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateDatabricksEngineParOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("parUrl")) { + this.parUrl(model.getParUrl()); + } + if (model.wasPropertyExplicitlySet("parUrlSecretId")) { + this.parUrlSecretId(model.getParUrlSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateDatabricksEngineParOciObjectStorageConfigDetails( + String parUrl, String parUrlSecretId) { + super(); + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.parUrlSecretId = parUrlSecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateDatabricksEngineParOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") char[] parUrl, + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + String parUrlSecretId) { + super(); + this.parUrl = parUrl; + this.parUrlSecretId = parUrlSecretId; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private final char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getParUrl__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getParUrl() { + return parUrl != null ? new String(parUrl) : null; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + public char[] getParUrl__AsCharArray() { + return parUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private final String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @return the value + */ + public String getParUrlSecretId() { + return parUrlSecretId; + } + + @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("UpdateDatabricksEngineParOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", parUrl=").append(""); + sb.append(", parUrlSecretId=").append(String.valueOf(this.parUrlSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineParOciObjectStorageConfigDetails)) { + return false; + } + + UpdateDatabricksEngineParOciObjectStorageConfigDetails other = + (UpdateDatabricksEngineParOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.parUrl, other.parUrl) + && java.util.Objects.equals(this.parUrlSecretId, other.parUrlSecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.parUrl == null ? 43 : this.parUrl.hashCode()); + result = + (result * PRIME) + + (this.parUrlSecretId == null ? 43 : this.parUrlSecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..f3d949447d0 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,256 @@ +/** + * 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.goldengate.model; + +/** + * Resource-principal authentication and location details for updating an OCI Object Storage + * Databricks Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = + UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails + extends UpdateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails build() { + UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails model = + new UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails( + this.region, this.namespace, this.bucket, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails( + String region, String namespace, String bucket, String path) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails)) { + return false; + } + + UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails other = + (UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..54792d6d292 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.java @@ -0,0 +1,460 @@ +/** + * 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.goldengate.model; + +/** + * Secret-key authentication and location details for updating an OCI Object Storage Databricks + * Engine artifact location. When updating the secret key, provide exactly one of {@code + * secretAccessKey} or {@code secretAccessKeySecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails + extends UpdateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + * + * @param accessKeyId the value to set + * @return this builder + */ + public Builder accessKeyId(String accessKeyId) { + this.accessKeyId = accessKeyId; + this.__explicitlySet__.add("accessKeyId"); + return this; + } + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param secretAccessKey the value to set + * @return this builder + */ + public Builder secretAccessKey(char[] secretAccessKey) { + this.secretAccessKey = secretAccessKey; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + + public Builder secretAccessKey(String secretAccessKey) { + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + * + * @param secretAccessKeySecretId the value to set + * @return this builder + */ + public Builder secretAccessKeySecretId(String secretAccessKeySecretId) { + this.secretAccessKeySecretId = secretAccessKeySecretId; + this.__explicitlySet__.add("secretAccessKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails build() { + UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails model = + new UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.accessKeyId, + this.secretAccessKey, + this.secretAccessKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("accessKeyId")) { + this.accessKeyId(model.getAccessKeyId()); + } + if (model.wasPropertyExplicitlySet("secretAccessKey")) { + this.secretAccessKey(model.getSecretAccessKey()); + } + if (model.wasPropertyExplicitlySet("secretAccessKeySecretId")) { + this.secretAccessKeySecretId(model.getSecretAccessKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String accessKeyId, + String secretAccessKey, + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") String accessKeyId, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + char[] secretAccessKey, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private final String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + * + * @return the value + */ + public String getAccessKeyId() { + return accessKeyId; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private final char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getSecretAccessKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSecretAccessKey() { + return secretAccessKey != null ? new String(secretAccessKey) : null; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + public char[] getSecretAccessKey__AsCharArray() { + return secretAccessKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private final String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + * + * @return the value + */ + public String getSecretAccessKeySecretId() { + return secretAccessKeySecretId; + } + + @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("UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", accessKeyId=").append(String.valueOf(this.accessKeyId)); + sb.append(", secretAccessKey=").append(""); + sb.append(", secretAccessKeySecretId=") + .append(String.valueOf(this.secretAccessKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails)) { + return false; + } + + UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails other = + (UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.accessKeyId, other.accessKeyId) + && java.util.Objects.equals(this.secretAccessKey, other.secretAccessKey) + && java.util.Objects.equals( + this.secretAccessKeySecretId, other.secretAccessKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.accessKeyId == null ? 43 : this.accessKeyId.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKey == null ? 43 : this.secretAccessKey.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKeySecretId == null + ? 43 + : this.secretAccessKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..d1bd438ba93 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,721 @@ +/** + * 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.goldengate.model; + +/** + * User-principal authentication and location details for updating an OCI Object Storage Databricks + * Engine artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails + extends UpdateDatabricksEngineOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Databricks application artifacts. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @param tenancyId the value to set + * @return this builder + */ + public Builder tenancyId(String tenancyId) { + this.tenancyId = tenancyId; + this.__explicitlySet__.add("tenancyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + * + * @param userId the value to set + * @return this builder + */ + public Builder userId(String userId) { + this.userId = userId; + this.__explicitlySet__.add("userId"); + return this; + } + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyFile the value to set + * @return this builder + */ + public Builder privateKeyFile(char[] privateKeyFile) { + this.privateKeyFile = privateKeyFile; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + + public Builder privateKeyFile(String privateKeyFile) { + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + * + * @param privateKeyFileSecretId the value to set + * @return this builder + */ + public Builder privateKeyFileSecretId(String privateKeyFileSecretId) { + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.__explicitlySet__.add("privateKeyFileSecretId"); + return this; + } + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyPassphrase the value to set + * @return this builder + */ + public Builder privateKeyPassphrase(char[] privateKeyPassphrase) { + this.privateKeyPassphrase = privateKeyPassphrase; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + + public Builder privateKeyPassphrase(String privateKeyPassphrase) { + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @param privateKeyPassphraseSecretId the value to set + * @return this builder + */ + public Builder privateKeyPassphraseSecretId(String privateKeyPassphraseSecretId) { + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.__explicitlySet__.add("privateKeyPassphraseSecretId"); + return this; + } + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @param publicKeyFingerprint the value to set + * @return this builder + */ + public Builder publicKeyFingerprint(String publicKeyFingerprint) { + this.publicKeyFingerprint = publicKeyFingerprint; + this.__explicitlySet__.add("publicKeyFingerprint"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails build() { + UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails model = + new UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.tenancyId, + this.userId, + this.privateKeyFile, + this.privateKeyFileSecretId, + this.privateKeyPassphrase, + this.privateKeyPassphraseSecretId, + this.publicKeyFingerprint); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy( + UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("tenancyId")) { + this.tenancyId(model.getTenancyId()); + } + if (model.wasPropertyExplicitlySet("userId")) { + this.userId(model.getUserId()); + } + if (model.wasPropertyExplicitlySet("privateKeyFile")) { + this.privateKeyFile(model.getPrivateKeyFile()); + } + if (model.wasPropertyExplicitlySet("privateKeyFileSecretId")) { + this.privateKeyFileSecretId(model.getPrivateKeyFileSecretId()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphrase")) { + this.privateKeyPassphrase(model.getPrivateKeyPassphrase()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphraseSecretId")) { + this.privateKeyPassphraseSecretId(model.getPrivateKeyPassphraseSecretId()); + } + if (model.wasPropertyExplicitlySet("publicKeyFingerprint")) { + this.publicKeyFingerprint(model.getPublicKeyFingerprint()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String tenancyId, + String userId, + String privateKeyFile, + String privateKeyFileSecretId, + String privateKeyPassphrase, + String privateKeyPassphraseSecretId, + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") String tenancyId, + @com.fasterxml.jackson.annotation.JsonProperty("userId") String userId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") char[] privateKeyFile, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + String privateKeyFileSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + char[] privateKeyPassphrase, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + String privateKeyPassphraseSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = privateKeyPassphrase; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Databricks application artifacts. + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** Object path used for Databricks application artifacts. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Databricks application artifacts. + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private final String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @return the value + */ + public String getTenancyId() { + return tenancyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private final String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + * + * @return the value + */ + public String getUserId() { + return userId; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private final char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyFile__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyFile() { + return privateKeyFile != null ? new String(privateKeyFile) : null; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + public char[] getPrivateKeyFile__AsCharArray() { + return privateKeyFile; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private final String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyFileSecretId() { + return privateKeyFileSecretId; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private final char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyPassphrase__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyPassphrase() { + return privateKeyPassphrase != null ? new String(privateKeyPassphrase) : null; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + public char[] getPrivateKeyPassphrase__AsCharArray() { + return privateKeyPassphrase; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private final String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyPassphraseSecretId() { + return privateKeyPassphraseSecretId; + } + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private final String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @return the value + */ + public String getPublicKeyFingerprint() { + return publicKeyFingerprint; + } + + @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("UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", tenancyId=").append(String.valueOf(this.tenancyId)); + sb.append(", userId=").append(String.valueOf(this.userId)); + sb.append(", privateKeyFile=").append(""); + sb.append(", privateKeyFileSecretId=").append(String.valueOf(this.privateKeyFileSecretId)); + sb.append(", privateKeyPassphrase=").append(""); + sb.append(", privateKeyPassphraseSecretId=") + .append(String.valueOf(this.privateKeyPassphraseSecretId)); + sb.append(", publicKeyFingerprint=").append(String.valueOf(this.publicKeyFingerprint)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails)) { + return false; + } + + UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails other = + (UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.tenancyId, other.tenancyId) + && java.util.Objects.equals(this.userId, other.userId) + && java.util.Objects.equals(this.privateKeyFile, other.privateKeyFile) + && java.util.Objects.equals( + this.privateKeyFileSecretId, other.privateKeyFileSecretId) + && java.util.Objects.equals(this.privateKeyPassphrase, other.privateKeyPassphrase) + && java.util.Objects.equals( + this.privateKeyPassphraseSecretId, other.privateKeyPassphraseSecretId) + && java.util.Objects.equals(this.publicKeyFingerprint, other.publicKeyFingerprint) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.tenancyId == null ? 43 : this.tenancyId.hashCode()); + result = (result * PRIME) + (this.userId == null ? 43 : this.userId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFile == null ? 43 : this.privateKeyFile.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFileSecretId == null + ? 43 + : this.privateKeyFileSecretId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphrase == null + ? 43 + : this.privateKeyPassphrase.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphraseSecretId == null + ? 43 + : this.privateKeyPassphraseSecretId.hashCode()); + result = + (result * PRIME) + + (this.publicKeyFingerprint == null + ? 43 + : this.publicKeyFingerprint.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciGenAiModelAuthDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciGenAiModelAuthDetails.java index 08f67dc4626..aecb29bb572 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciGenAiModelAuthDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciGenAiModelAuthDetails.java @@ -89,14 +89,14 @@ public Builder keyFingerprint(String keyFingerprint) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -296,14 +296,14 @@ public String getKeyFingerprint() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageConnectionDetails.java index 29f8343bed4..2ed2b27ae63 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageConnectionDetails.java @@ -148,14 +148,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -564,14 +564,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..4f7290174ec --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails.java @@ -0,0 +1,144 @@ +/** + * 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.goldengate.model; + +/** + * The information to update an OCI Object Storage location used to share Databricks application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails + extends UpdateDatabricksEngineArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private UpdateDatabricksEngineOciObjectStorageConfigDetails configuration; + + public Builder configuration( + UpdateDatabricksEngineOciObjectStorageConfigDetails configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails build() { + UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails model = + new UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails( + Boolean shouldOverwriteExisting, + UpdateDatabricksEngineOciObjectStorageConfigDetails configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final UpdateDatabricksEngineOciObjectStorageConfigDetails configuration; + + public UpdateDatabricksEngineOciObjectStorageConfigDetails getConfiguration() { + return configuration; + } + + @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("UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails)) { + return false; + } + + UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails other = + (UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageSparkArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageSparkArtifactLocationDetails.java new file mode 100644 index 00000000000..e800825864e --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOciObjectStorageSparkArtifactLocationDetails.java @@ -0,0 +1,143 @@ +/** + * 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.goldengate.model; + +/** + * The information to update an OCI Object Storage location used to share Spark application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateOciObjectStorageSparkArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateOciObjectStorageSparkArtifactLocationDetails + extends UpdateSparkArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private UpdateSparkOciObjectStorageConfigDetails configuration; + + public Builder configuration(UpdateSparkOciObjectStorageConfigDetails configuration) { + this.configuration = configuration; + this.__explicitlySet__.add("configuration"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateOciObjectStorageSparkArtifactLocationDetails build() { + UpdateOciObjectStorageSparkArtifactLocationDetails model = + new UpdateOciObjectStorageSparkArtifactLocationDetails( + this.shouldOverwriteExisting, this.configuration); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateOciObjectStorageSparkArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("configuration")) { + this.configuration(model.getConfiguration()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateOciObjectStorageSparkArtifactLocationDetails( + Boolean shouldOverwriteExisting, + UpdateSparkOciObjectStorageConfigDetails configuration) { + super(shouldOverwriteExisting); + this.configuration = configuration; + } + + @com.fasterxml.jackson.annotation.JsonProperty("configuration") + private final UpdateSparkOciObjectStorageConfigDetails configuration; + + public UpdateSparkOciObjectStorageConfigDetails getConfiguration() { + return configuration; + } + + @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("UpdateOciObjectStorageSparkArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", configuration=").append(String.valueOf(this.configuration)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateOciObjectStorageSparkArtifactLocationDetails)) { + return false; + } + + UpdateOciObjectStorageSparkArtifactLocationDetails other = + (UpdateOciObjectStorageSparkArtifactLocationDetails) o; + return java.util.Objects.equals(this.configuration, other.configuration) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.configuration == null ? 43 : this.configuration.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOggDeploymentDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOggDeploymentDetails.java index 2a64fef1e3e..ae94bf52301 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOggDeploymentDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOggDeploymentDetails.java @@ -5,7 +5,7 @@ package com.oracle.bmc.goldengate.model; /** - * Deployment Details for updating an OggDeployment
+ * Deployment Details for updating an OggDeployment.
* 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 diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformConnectionDetails.java index 99b19c17d59..5d024e4a4bb 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformConnectionDetails.java @@ -163,14 +163,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -600,14 +600,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformEngineConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformEngineConnectionDetails.java new file mode 100644 index 00000000000..0374346177f --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleAiDataPlatformEngineConnectionDetails.java @@ -0,0 +1,306 @@ +/** + * 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.goldengate.model; + +/** + * The information to update an Oracle AI Data Platform Engine Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateOracleAiDataPlatformEngineConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateOracleAiDataPlatformEngineConnectionDetails + extends UpdateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @param workspaceUrl the value to set + * @return this builder + */ + public Builder workspaceUrl(String workspaceUrl) { + this.workspaceUrl = workspaceUrl; + this.__explicitlySet__.add("workspaceUrl"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateOracleAiDataPlatformEngineConnectionDetails build() { + UpdateOracleAiDataPlatformEngineConnectionDetails model = + new UpdateOracleAiDataPlatformEngineConnectionDetails( + this.displayName, + this.description, + this.freeformTags, + this.definedTags, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.securityAttributes, + this.workspaceUrl); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateOracleAiDataPlatformEngineConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("workspaceUrl")) { + this.workspaceUrl(model.getWorkspaceUrl()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateOracleAiDataPlatformEngineConnectionDetails( + String displayName, + String description, + java.util.Map freeformTags, + java.util.Map> definedTags, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + java.util.Map> securityAttributes, + String workspaceUrl) { + super( + displayName, + description, + freeformTags, + definedTags, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + securityAttributes); + this.workspaceUrl = workspaceUrl; + } + + /** Oracle AI Data Platform workspace URL. */ + @com.fasterxml.jackson.annotation.JsonProperty("workspaceUrl") + private final String workspaceUrl; + + /** + * Oracle AI Data Platform workspace URL. + * + * @return the value + */ + public String getWorkspaceUrl() { + return workspaceUrl; + } + + @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("UpdateOracleAiDataPlatformEngineConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", workspaceUrl=").append(String.valueOf(this.workspaceUrl)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateOracleAiDataPlatformEngineConnectionDetails)) { + return false; + } + + UpdateOracleAiDataPlatformEngineConnectionDetails other = + (UpdateOracleAiDataPlatformEngineConnectionDetails) o; + return java.util.Objects.equals(this.workspaceUrl, other.workspaceUrl) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.workspaceUrl == null ? 43 : this.workspaceUrl.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleNosqlConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleNosqlConnectionDetails.java index ea77101e77f..257ce0a3c27 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleNosqlConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateOracleNosqlConnectionDetails.java @@ -148,14 +148,14 @@ public Builder tenancyId(String tenancyId) { } /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @param region the value to set * @return this builder @@ -564,14 +564,14 @@ public String getTenancyId() { /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. */ @com.fasterxml.jackson.annotation.JsonProperty("region") private final String region; /** * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will - * default to the default region. + * default to the current region. * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSnowflakeConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSnowflakeConnectionDetails.java index 2b67e7a7179..ff16f5c92ad 100644 --- a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSnowflakeConnectionDetails.java +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSnowflakeConnectionDetails.java @@ -186,6 +186,10 @@ public Builder username(String username) { * field is deprecated and replaced by "passwordSecretId". This change follows the * GoldenGate "Plain Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle + * GoldenGate Snowflake connections will support only key-pair authentication. See the + * Snowflake documentation for details: + * https://docs.snowflake.com/en/user-guide/security-mfa-rollout */ @com.fasterxml.jackson.annotation.JsonProperty("password") private char[] password; @@ -195,6 +199,10 @@ public Builder username(String username) { * field is deprecated and replaced by "passwordSecretId". This change follows the * GoldenGate "Plain Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle + * GoldenGate Snowflake connections will support only key-pair authentication. See the + * Snowflake documentation for details: + * https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @param password the value to set * @return this builder @@ -213,7 +221,10 @@ public Builder password(String password) { /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the * Secret that stores the password Oracle GoldenGate uses to connect to Snowflake platform. - * Note: When provided, 'password' field must not be provided. + * Note: When provided, 'password' field must not be provided. Deprecated: Snowflake is + * phasing out password authentication for legacy service users. Oracle GoldenGate Snowflake + * connections will support only key-pair authentication. See the Snowflake documentation + * for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout */ @com.fasterxml.jackson.annotation.JsonProperty("passwordSecretId") private String passwordSecretId; @@ -221,7 +232,10 @@ public Builder password(String password) { /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the * Secret that stores the password Oracle GoldenGate uses to connect to Snowflake platform. - * Note: When provided, 'password' field must not be provided. + * Note: When provided, 'password' field must not be provided. Deprecated: Snowflake is + * phasing out password authentication for legacy service users. Oracle GoldenGate Snowflake + * connections will support only key-pair authentication. See the Snowflake documentation + * for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @param passwordSecretId the value to set * @return this builder @@ -598,6 +612,9 @@ public String getUsername() { * is deprecated and replaced by "passwordSecretId". This change follows the GoldenGate "Plain * Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle GoldenGate + * Snowflake connections will support only key-pair authentication. See the Snowflake + * documentation for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout */ @com.fasterxml.jackson.annotation.JsonProperty("password") private final char[] password; @@ -607,6 +624,9 @@ public String getUsername() { * is deprecated and replaced by "passwordSecretId". This change follows the * GoldenGate "Plain Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle GoldenGate + * Snowflake connections will support only key-pair authentication. See the Snowflake + * documentation for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @return the value * @deprecated Use getPassword__AsCharArray() instead. @@ -622,6 +642,9 @@ public String getPassword() { * is deprecated and replaced by "passwordSecretId". This change follows the GoldenGate "Plain * Text Fields in Connections" deprecation: * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * Snowflake is phasing out password authentication for legacy service users. Oracle GoldenGate + * Snowflake connections will support only key-pair authentication. See the Snowflake + * documentation for details: https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @return the value */ @@ -633,7 +656,10 @@ public char[] getPassword__AsCharArray() { /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the * Secret that stores the password Oracle GoldenGate uses to connect to Snowflake platform. - * Note: When provided, 'password' field must not be provided. + * Note: When provided, 'password' field must not be provided. Deprecated: Snowflake is phasing + * out password authentication for legacy service users. Oracle GoldenGate Snowflake connections + * will support only key-pair authentication. See the Snowflake documentation for details: + * https://docs.snowflake.com/en/user-guide/security-mfa-rollout */ @com.fasterxml.jackson.annotation.JsonProperty("passwordSecretId") private final String passwordSecretId; @@ -641,7 +667,10 @@ public char[] getPassword__AsCharArray() { /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the * Secret that stores the password Oracle GoldenGate uses to connect to Snowflake platform. - * Note: When provided, 'password' field must not be provided. + * Note: When provided, 'password' field must not be provided. Deprecated: Snowflake is phasing + * out password authentication for legacy service users. Oracle GoldenGate Snowflake connections + * will support only key-pair authentication. See the Snowflake documentation for details: + * https://docs.snowflake.com/en/user-guide/security-mfa-rollout * * @return the value */ diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkArtifactLocationDetails.java new file mode 100644 index 00000000000..8e0494f48c9 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkArtifactLocationDetails.java @@ -0,0 +1,116 @@ +/** + * 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.goldengate.model; + +/** + * The information to update a location used to share Spark application artifacts with a remote + * cluster.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType", + defaultImpl = UpdateSparkArtifactLocationDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateOciObjectStorageSparkArtifactLocationDetails.class, + name = "OCI_OBJECT_STORAGE") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class UpdateSparkArtifactLocationDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"shouldOverwriteExisting"}) + protected UpdateSparkArtifactLocationDetails(Boolean shouldOverwriteExisting) { + super(); + this.shouldOverwriteExisting = shouldOverwriteExisting; + } + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + */ + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private final Boolean shouldOverwriteExisting; + + /** + * Controls whether a staged Spark application artifact replaces an existing file or object with + * the same name at the configured destination. The artifact is typically a GGFAB pipeline + * package or one of its dependency files. + * + *

When set to {@code true}, the existing file or object is replaced with the newly staged + * version. When set to {@code false}, staging fails or skips the upload rather than replacing + * it. This setting does not replace the entire target directory or prefix. It allows an updated + * pipeline or dependency to be deployed when artifact names remain the same across versions. + * + * @return the value + */ + public Boolean getShouldOverwriteExisting() { + return shouldOverwriteExisting; + } + + @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("UpdateSparkArtifactLocationDetails("); + sb.append("super=").append(super.toString()); + sb.append("shouldOverwriteExisting=").append(String.valueOf(this.shouldOverwriteExisting)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkArtifactLocationDetails)) { + return false; + } + + UpdateSparkArtifactLocationDetails other = (UpdateSparkArtifactLocationDetails) o; + return java.util.Objects.equals(this.shouldOverwriteExisting, other.shouldOverwriteExisting) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.shouldOverwriteExisting == null + ? 43 + : this.shouldOverwriteExisting.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkConnectionDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkConnectionDetails.java new file mode 100644 index 00000000000..cd07a6432e3 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkConnectionDetails.java @@ -0,0 +1,1858 @@ +/** + * 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.goldengate.model; + +/** + * The information to update a Spark Connection.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSparkConnectionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "connectionType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSparkConnectionDetails extends UpdateConnectionDetails { + @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("description") + private String description; + + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") + private String vaultId; + + public Builder vaultId(String vaultId) { + this.vaultId = vaultId; + this.__explicitlySet__.add("vaultId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("keyId") + private String keyId; + + public Builder keyId(String keyId) { + this.keyId = keyId; + this.__explicitlySet__.add("keyId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") + private java.util.List nsgIds; + + public Builder nsgIds(java.util.List nsgIds) { + this.nsgIds = nsgIds; + this.__explicitlySet__.add("nsgIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") + private String subnetId; + + public Builder subnetId(String subnetId) { + this.subnetId = subnetId; + this.__explicitlySet__.add("subnetId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + private RoutingMethod routingMethod; + + public Builder routingMethod(RoutingMethod routingMethod) { + this.routingMethod = routingMethod; + this.__explicitlySet__.add("routingMethod"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + private Boolean doesUseSecretIds; + + public Builder doesUseSecretIds(Boolean doesUseSecretIds) { + this.doesUseSecretIds = doesUseSecretIds; + this.__explicitlySet__.add("doesUseSecretIds"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + private java.util.Map> securityAttributes; + + public Builder securityAttributes( + java.util.Map> securityAttributes) { + this.securityAttributes = securityAttributes; + this.__explicitlySet__.add("securityAttributes"); + return this; + } + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private SparkConnection.SubmitMode submitMode; + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + * + * @param submitMode the value to set + * @return this builder + */ + public Builder submitMode(SparkConnection.SubmitMode submitMode) { + this.submitMode = submitMode; + this.__explicitlySet__.add("submitMode"); + return this; + } + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private SparkConnection.AuthenticationType authenticationType; + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + * + * @param authenticationType the value to set + * @return this builder + */ + public Builder authenticationType(SparkConnection.AuthenticationType authenticationType) { + this.authenticationType = authenticationType; + this.__explicitlySet__.add("authenticationType"); + return this; + } + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, + * TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, + * and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private SparkConnection.SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, + * TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, + * and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + * + * @param securityProtocol the value to set + * @return this builder + */ + public Builder securityProtocol(SparkConnection.SecurityProtocol securityProtocol) { + this.securityProtocol = securityProtocol; + this.__explicitlySet__.add("securityProtocol"); + return this; + } + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. + * e.g.: 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @param clusterEndpoint the value to set + * @return this builder + */ + public Builder clusterEndpoint(String clusterEndpoint) { + this.clusterEndpoint = clusterEndpoint; + this.__explicitlySet__.add("clusterEndpoint"); + return this; + } + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @param restEndpoint the value to set + * @return this builder + */ + public Builder restEndpoint(String restEndpoint) { + this.restEndpoint = restEndpoint; + this.__explicitlySet__.add("restEndpoint"); + return this; + } + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") + private char[] authSecret; + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param authSecret the value to set + * @return this builder + */ + public Builder authSecret(char[] authSecret) { + this.authSecret = authSecret; + this.__explicitlySet__.add("authSecret"); + return this; + } + + public Builder authSecret(String authSecret) { + this.authSecret = authSecret != null ? authSecret.toCharArray() : null; + this.__explicitlySet__.add("authSecret"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when + * authenticationType is SHARED_SECRET. Note: When provided, 'authSecret' field must not be + * provided. + * + * @param authSecretSecretId the value to set + * @return this builder + */ + public Builder authSecretSecretId(String authSecretSecretId) { + this.authSecretSecretId = authSecretSecretId; + this.__explicitlySet__.add("authSecretSecretId"); + return this; + } + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. Defaults to AES_CTR_NOPADDING when not provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private SparkConnection.RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is + * AES_RPC. Defaults to AES_CTR_NOPADDING when not provided. + * + * @param rpcCipher the value to set + * @return this builder + */ + public Builder rpcCipher(SparkConnection.RpcCipher rpcCipher) { + this.rpcCipher = rpcCipher; + this.__explicitlySet__.add("rpcCipher"); + return this; + } + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the + * Spark master's REST endpoint is protected by the JWS filter. Applicable only when + * submitMode is REST and the cluster enforces REST request signing. This setting is + * independent of authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + private char[] restAuthSecretKey; + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the + * Spark master's REST endpoint is protected by the JWS filter. Applicable only when + * submitMode is REST and the cluster enforces REST request signing. This setting is + * independent of authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param restAuthSecretKey the value to set + * @return this builder + */ + public Builder restAuthSecretKey(char[] restAuthSecretKey) { + this.restAuthSecretKey = restAuthSecretKey; + this.__explicitlySet__.add("restAuthSecretKey"); + return this; + } + + public Builder restAuthSecretKey(String restAuthSecretKey) { + this.restAuthSecretKey = + restAuthSecretKey != null ? restAuthSecretKey.toCharArray() : null; + this.__explicitlySet__.add("restAuthSecretKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @param restAuthSecretKeySecretId the value to set + * @return this builder + */ + public Builder restAuthSecretKeySecretId(String restAuthSecretKeySecretId) { + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.__explicitlySet__.add("restAuthSecretKeySecretId"); + return this; + } + /** + * The base64 encoded content of the trust store used to validate the Spark server + * certificate. Applicable when securityProtocol is TLS. Provide this when the server + * certificate is not already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") + private char[] trustStore; + + /** + * The base64 encoded content of the trust store used to validate the Spark server + * certificate. Applicable when securityProtocol is TLS. Provide this when the server + * certificate is not already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param trustStore the value to set + * @return this builder + */ + public Builder trustStore(char[] trustStore) { + this.trustStore = trustStore; + this.__explicitlySet__.add("trustStore"); + return this; + } + + public Builder trustStore(String trustStore) { + this.trustStore = trustStore != null ? trustStore.toCharArray() : null; + this.__explicitlySet__.add("trustStore"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. + * Provide this when the server certificate is not already trusted by the JVM. Note: When + * provided, 'trustStore' field must not be provided. + * + * @param trustStoreSecretId the value to set + * @return this builder + */ + public Builder trustStoreSecretId(String trustStoreSecretId) { + this.trustStoreSecretId = trustStoreSecretId; + this.__explicitlySet__.add("trustStoreSecretId"); + return this; + } + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store + * is provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". + * This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + private char[] trustStorePassword; + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store + * is provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". + * This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param trustStorePassword the value to set + * @return this builder + */ + public Builder trustStorePassword(char[] trustStorePassword) { + this.trustStorePassword = trustStorePassword; + this.__explicitlySet__.add("trustStorePassword"); + return this; + } + + public Builder trustStorePassword(String trustStorePassword) { + this.trustStorePassword = + trustStorePassword != null ? trustStorePassword.toCharArray() : null; + this.__explicitlySet__.add("trustStorePassword"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and + * a trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When + * provided, 'trustStorePassword' field must not be provided. + * + * @param trustStorePasswordSecretId the value to set + * @return this builder + */ + public Builder trustStorePasswordSecretId(String trustStorePasswordSecretId) { + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.__explicitlySet__.add("trustStorePasswordSecretId"); + return this; + } + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and + * a trust store is provided. Defaults to JKS when not provided. Provide this only when a + * trust store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private SparkConnection.TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and + * a trust store is provided. Defaults to JKS when not provided. Provide this only when a + * trust store is provided. + * + * @param trustStoreType the value to set + * @return this builder + */ + public Builder trustStoreType(SparkConnection.TrustStoreType trustStoreType) { + this.trustStoreType = trustStoreType; + this.__explicitlySet__.add("trustStoreType"); + return this; + } + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") + private char[] keyStore; + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param keyStore the value to set + * @return this builder + */ + public Builder keyStore(char[] keyStore) { + this.keyStore = keyStore; + this.__explicitlySet__.add("keyStore"); + return this; + } + + public Builder keyStore(String keyStore) { + this.keyStore = keyStore != null ? keyStore.toCharArray() : null; + this.__explicitlySet__.add("keyStore"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @param keyStoreSecretId the value to set + * @return this builder + */ + public Builder keyStoreSecretId(String keyStoreSecretId) { + this.keyStoreSecretId = keyStoreSecretId; + this.__explicitlySet__.add("keyStoreSecretId"); + return this; + } + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client + * key store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + private char[] keyStorePassword; + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client + * key store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param keyStorePassword the value to set + * @return this builder + */ + public Builder keyStorePassword(char[] keyStorePassword) { + this.keyStorePassword = keyStorePassword; + this.__explicitlySet__.add("keyStorePassword"); + return this; + } + + public Builder keyStorePassword(String keyStorePassword) { + this.keyStorePassword = + keyStorePassword != null ? keyStorePassword.toCharArray() : null; + this.__explicitlySet__.add("keyStorePassword"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS + * and a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: + * When provided, 'keyStorePassword' field must not be provided. + * + * @param keyStorePasswordSecretId the value to set + * @return this builder + */ + public Builder keyStorePasswordSecretId(String keyStorePasswordSecretId) { + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.__explicitlySet__.add("keyStorePasswordSecretId"); + return this; + } + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and + * a client key store is provided. Defaults to JKS when not provided. Provide this only when + * a client key store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private SparkConnection.KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and + * a client key store is provided. Defaults to JKS when not provided. Provide this only when + * a client key store is provided. + * + * @param keyStoreType the value to set + * @return this builder + */ + public Builder keyStoreType(SparkConnection.KeyStoreType keyStoreType) { + this.keyStoreType = keyStoreType; + this.__explicitlySet__.add("keyStoreType"); + return this; + } + /** + * Password for the certificate private key inside the client key store. Provide this only + * when it differs from the key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") + private char[] sslKeyPassword; + + /** + * Password for the certificate private key inside the client key store. Provide this only + * when it differs from the key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param sslKeyPassword the value to set + * @return this builder + */ + public Builder sslKeyPassword(char[] sslKeyPassword) { + this.sslKeyPassword = sslKeyPassword; + this.__explicitlySet__.add("sslKeyPassword"); + return this; + } + + public Builder sslKeyPassword(String sslKeyPassword) { + this.sslKeyPassword = sslKeyPassword != null ? sslKeyPassword.toCharArray() : null; + this.__explicitlySet__.add("sslKeyPassword"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and + * a client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @param sslKeyPasswordSecretId the value to set + * @return this builder + */ + public Builder sslKeyPasswordSecretId(String sslKeyPasswordSecretId) { + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.__explicitlySet__.add("sslKeyPasswordSecretId"); + return this; + } + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private SparkConnection.TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + * + * @param tlsProtocol the value to set + * @return this builder + */ + public Builder tlsProtocol(SparkConnection.TlsProtocol tlsProtocol) { + this.tlsProtocol = tlsProtocol; + this.__explicitlySet__.add("tlsProtocol"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private UpdateSparkArtifactLocationDetails artifactLocation; + + public Builder artifactLocation(UpdateSparkArtifactLocationDetails artifactLocation) { + this.artifactLocation = artifactLocation; + this.__explicitlySet__.add("artifactLocation"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSparkConnectionDetails build() { + UpdateSparkConnectionDetails model = + new UpdateSparkConnectionDetails( + this.displayName, + this.description, + this.freeformTags, + this.definedTags, + this.vaultId, + this.keyId, + this.nsgIds, + this.subnetId, + this.routingMethod, + this.doesUseSecretIds, + this.securityAttributes, + this.submitMode, + this.authenticationType, + this.securityProtocol, + this.clusterEndpoint, + this.restEndpoint, + this.authSecret, + this.authSecretSecretId, + this.rpcCipher, + this.restAuthSecretKey, + this.restAuthSecretKeySecretId, + this.trustStore, + this.trustStoreSecretId, + this.trustStorePassword, + this.trustStorePasswordSecretId, + this.trustStoreType, + this.keyStore, + this.keyStoreSecretId, + this.keyStorePassword, + this.keyStorePasswordSecretId, + this.keyStoreType, + this.sslKeyPassword, + this.sslKeyPasswordSecretId, + this.tlsProtocol, + this.artifactLocation); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSparkConnectionDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("vaultId")) { + this.vaultId(model.getVaultId()); + } + if (model.wasPropertyExplicitlySet("keyId")) { + this.keyId(model.getKeyId()); + } + if (model.wasPropertyExplicitlySet("nsgIds")) { + this.nsgIds(model.getNsgIds()); + } + if (model.wasPropertyExplicitlySet("subnetId")) { + this.subnetId(model.getSubnetId()); + } + if (model.wasPropertyExplicitlySet("routingMethod")) { + this.routingMethod(model.getRoutingMethod()); + } + if (model.wasPropertyExplicitlySet("doesUseSecretIds")) { + this.doesUseSecretIds(model.getDoesUseSecretIds()); + } + if (model.wasPropertyExplicitlySet("securityAttributes")) { + this.securityAttributes(model.getSecurityAttributes()); + } + if (model.wasPropertyExplicitlySet("submitMode")) { + this.submitMode(model.getSubmitMode()); + } + if (model.wasPropertyExplicitlySet("authenticationType")) { + this.authenticationType(model.getAuthenticationType()); + } + if (model.wasPropertyExplicitlySet("securityProtocol")) { + this.securityProtocol(model.getSecurityProtocol()); + } + if (model.wasPropertyExplicitlySet("clusterEndpoint")) { + this.clusterEndpoint(model.getClusterEndpoint()); + } + if (model.wasPropertyExplicitlySet("restEndpoint")) { + this.restEndpoint(model.getRestEndpoint()); + } + if (model.wasPropertyExplicitlySet("authSecret")) { + this.authSecret(model.getAuthSecret()); + } + if (model.wasPropertyExplicitlySet("authSecretSecretId")) { + this.authSecretSecretId(model.getAuthSecretSecretId()); + } + if (model.wasPropertyExplicitlySet("rpcCipher")) { + this.rpcCipher(model.getRpcCipher()); + } + if (model.wasPropertyExplicitlySet("restAuthSecretKey")) { + this.restAuthSecretKey(model.getRestAuthSecretKey()); + } + if (model.wasPropertyExplicitlySet("restAuthSecretKeySecretId")) { + this.restAuthSecretKeySecretId(model.getRestAuthSecretKeySecretId()); + } + if (model.wasPropertyExplicitlySet("trustStore")) { + this.trustStore(model.getTrustStore()); + } + if (model.wasPropertyExplicitlySet("trustStoreSecretId")) { + this.trustStoreSecretId(model.getTrustStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStorePassword")) { + this.trustStorePassword(model.getTrustStorePassword()); + } + if (model.wasPropertyExplicitlySet("trustStorePasswordSecretId")) { + this.trustStorePasswordSecretId(model.getTrustStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("trustStoreType")) { + this.trustStoreType(model.getTrustStoreType()); + } + if (model.wasPropertyExplicitlySet("keyStore")) { + this.keyStore(model.getKeyStore()); + } + if (model.wasPropertyExplicitlySet("keyStoreSecretId")) { + this.keyStoreSecretId(model.getKeyStoreSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStorePassword")) { + this.keyStorePassword(model.getKeyStorePassword()); + } + if (model.wasPropertyExplicitlySet("keyStorePasswordSecretId")) { + this.keyStorePasswordSecretId(model.getKeyStorePasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("keyStoreType")) { + this.keyStoreType(model.getKeyStoreType()); + } + if (model.wasPropertyExplicitlySet("sslKeyPassword")) { + this.sslKeyPassword(model.getSslKeyPassword()); + } + if (model.wasPropertyExplicitlySet("sslKeyPasswordSecretId")) { + this.sslKeyPasswordSecretId(model.getSslKeyPasswordSecretId()); + } + if (model.wasPropertyExplicitlySet("tlsProtocol")) { + this.tlsProtocol(model.getTlsProtocol()); + } + if (model.wasPropertyExplicitlySet("artifactLocation")) { + this.artifactLocation(model.getArtifactLocation()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateSparkConnectionDetails( + String displayName, + String description, + java.util.Map freeformTags, + java.util.Map> definedTags, + String vaultId, + String keyId, + java.util.List nsgIds, + String subnetId, + RoutingMethod routingMethod, + Boolean doesUseSecretIds, + java.util.Map> securityAttributes, + SparkConnection.SubmitMode submitMode, + SparkConnection.AuthenticationType authenticationType, + SparkConnection.SecurityProtocol securityProtocol, + String clusterEndpoint, + String restEndpoint, + String authSecret, + String authSecretSecretId, + SparkConnection.RpcCipher rpcCipher, + String restAuthSecretKey, + String restAuthSecretKeySecretId, + String trustStore, + String trustStoreSecretId, + String trustStorePassword, + String trustStorePasswordSecretId, + SparkConnection.TrustStoreType trustStoreType, + String keyStore, + String keyStoreSecretId, + String keyStorePassword, + String keyStorePasswordSecretId, + SparkConnection.KeyStoreType keyStoreType, + String sslKeyPassword, + String sslKeyPasswordSecretId, + SparkConnection.TlsProtocol tlsProtocol, + UpdateSparkArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + freeformTags, + definedTags, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + securityAttributes); + this.submitMode = submitMode; + this.authenticationType = authenticationType; + this.securityProtocol = securityProtocol; + this.clusterEndpoint = clusterEndpoint; + this.restEndpoint = restEndpoint; + this.authSecret = authSecret != null ? authSecret.toCharArray() : null; + this.authSecretSecretId = authSecretSecretId; + this.rpcCipher = rpcCipher; + this.restAuthSecretKey = restAuthSecretKey != null ? restAuthSecretKey.toCharArray() : null; + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.trustStore = trustStore != null ? trustStore.toCharArray() : null; + this.trustStoreSecretId = trustStoreSecretId; + this.trustStorePassword = + trustStorePassword != null ? trustStorePassword.toCharArray() : null; + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.trustStoreType = trustStoreType; + this.keyStore = keyStore != null ? keyStore.toCharArray() : null; + this.keyStoreSecretId = keyStoreSecretId; + this.keyStorePassword = keyStorePassword != null ? keyStorePassword.toCharArray() : null; + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.keyStoreType = keyStoreType; + this.sslKeyPassword = sslKeyPassword != null ? sslKeyPassword.toCharArray() : null; + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.tlsProtocol = tlsProtocol; + this.artifactLocation = artifactLocation; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateSparkConnectionDetails( + @com.fasterxml.jackson.annotation.JsonProperty("displayName") String displayName, + @com.fasterxml.jackson.annotation.JsonProperty("description") String description, + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + java.util.Map freeformTags, + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + java.util.Map> definedTags, + @com.fasterxml.jackson.annotation.JsonProperty("vaultId") String vaultId, + @com.fasterxml.jackson.annotation.JsonProperty("keyId") String keyId, + @com.fasterxml.jackson.annotation.JsonProperty("nsgIds") java.util.List nsgIds, + @com.fasterxml.jackson.annotation.JsonProperty("subnetId") String subnetId, + @com.fasterxml.jackson.annotation.JsonProperty("routingMethod") + RoutingMethod routingMethod, + @com.fasterxml.jackson.annotation.JsonProperty("doesUseSecretIds") + Boolean doesUseSecretIds, + @com.fasterxml.jackson.annotation.JsonProperty("securityAttributes") + java.util.Map> securityAttributes, + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + SparkConnection.SubmitMode submitMode, + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + SparkConnection.AuthenticationType authenticationType, + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + SparkConnection.SecurityProtocol securityProtocol, + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + String clusterEndpoint, + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") String restEndpoint, + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") char[] authSecret, + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + String authSecretSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + SparkConnection.RpcCipher rpcCipher, + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + char[] restAuthSecretKey, + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + String restAuthSecretKeySecretId, + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") char[] trustStore, + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + String trustStoreSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + char[] trustStorePassword, + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + String trustStorePasswordSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + SparkConnection.TrustStoreType trustStoreType, + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") char[] keyStore, + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + String keyStoreSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + char[] keyStorePassword, + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + String keyStorePasswordSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + SparkConnection.KeyStoreType keyStoreType, + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") char[] sslKeyPassword, + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + String sslKeyPasswordSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + SparkConnection.TlsProtocol tlsProtocol, + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + UpdateSparkArtifactLocationDetails artifactLocation) { + super( + displayName, + description, + freeformTags, + definedTags, + vaultId, + keyId, + nsgIds, + subnetId, + routingMethod, + doesUseSecretIds, + securityAttributes); + this.submitMode = submitMode; + this.authenticationType = authenticationType; + this.securityProtocol = securityProtocol; + this.clusterEndpoint = clusterEndpoint; + this.restEndpoint = restEndpoint; + this.authSecret = authSecret; + this.authSecretSecretId = authSecretSecretId; + this.rpcCipher = rpcCipher; + this.restAuthSecretKey = restAuthSecretKey; + this.restAuthSecretKeySecretId = restAuthSecretKeySecretId; + this.trustStore = trustStore; + this.trustStoreSecretId = trustStoreSecretId; + this.trustStorePassword = trustStorePassword; + this.trustStorePasswordSecretId = trustStorePasswordSecretId; + this.trustStoreType = trustStoreType; + this.keyStore = keyStore; + this.keyStoreSecretId = keyStoreSecretId; + this.keyStorePassword = keyStorePassword; + this.keyStorePasswordSecretId = keyStorePasswordSecretId; + this.keyStoreType = keyStoreType; + this.sslKeyPassword = sslKeyPassword; + this.sslKeyPasswordSecretId = sslKeyPasswordSecretId; + this.tlsProtocol = tlsProtocol; + this.artifactLocation = artifactLocation; + } + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + */ + @com.fasterxml.jackson.annotation.JsonProperty("submitMode") + private final SparkConnection.SubmitMode submitMode; + + /** + * Selects the submission channel. SUBMIT uses the Spark master RPC endpoint. REST uses the + * Spark standalone REST submission gateway. + * + * @return the value + */ + public SparkConnection.SubmitMode getSubmitMode() { + return submitMode; + } + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authenticationType") + private final SparkConnection.AuthenticationType authenticationType; + + /** + * Authentication type for Spark. AES_RPC and SASL_ENCRYPTED securityProtocol values require + * authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is + * configured with spark.authenticate=true. + * + * @return the value + */ + public SparkConnection.AuthenticationType getAuthenticationType() { + return authenticationType; + } + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, TLS + * uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and + * SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + */ + @com.fasterxml.jackson.annotation.JsonProperty("securityProtocol") + private final SparkConnection.SecurityProtocol securityProtocol; + + /** + * Security protocol for Spark submission traffic. PLAINTEXT uses an unencrypted channel, TLS + * uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and + * SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require + * authenticationType to be SHARED_SECRET. + * + * @return the value + */ + public SparkConnection.SecurityProtocol getSecurityProtocol() { + return securityProtocol; + } + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + */ + @com.fasterxml.jackson.annotation.JsonProperty("clusterEndpoint") + private final String clusterEndpoint; + + /** + * Spark master URL used for job submission. Required for both submitMode SUBMIT and REST. e.g.: + * 'spark://spark-master.example.com:7077' High availability can be configured with a + * comma-separated list, for example: 'spark://h1.example.com:7077,h2.example.com:7077' + * + * @return the value + */ + public String getClusterEndpoint() { + return clusterEndpoint; + } + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restEndpoint") + private final String restEndpoint; + + /** + * Spark standalone REST submission base URL. e.g.: 'https://spark-master.example.com:6066' + * Applicable only and required when submitMode is REST. + * + * @return the value + */ + public String getRestEndpoint() { + return restEndpoint; + } + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") + private final char[] authSecret; + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. <p> Deprecated: This field is deprecated and replaced by + * "authSecretSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getAuthSecret__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getAuthSecret() { + return authSecret != null ? new String(authSecret) : null; + } + + /** + * The shared secret used for Spark authentication. Applicable when authenticationType is + * SHARED_SECRET. + * + *

Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecret") + public char[] getAuthSecret__AsCharArray() { + return authSecret; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("authSecretSecretId") + private final String authSecretSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the Spark authentication shared secret. Applicable when authenticationType + * is SHARED_SECRET. Note: When provided, 'authSecret' field must not be provided. + * + * @return the value + */ + public String getAuthSecretSecretId() { + return authSecretSecretId; + } + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * Defaults to AES_CTR_NOPADDING when not provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("rpcCipher") + private final SparkConnection.RpcCipher rpcCipher; + + /** + * Cipher transform used for Spark RPC encryption. Applicable when securityProtocol is AES_RPC. + * Defaults to AES_CTR_NOPADDING when not provided. + * + * @return the value + */ + public SparkConnection.RpcCipher getRpcCipher() { + return rpcCipher; + } + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark + * master's REST endpoint is protected by the JWS filter. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + private final char[] restAuthSecretKey; + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark + * master's REST endpoint is protected by the JWS filter. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. <p> Deprecated: This field is deprecated and replaced by + * "restAuthSecretKeySecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getRestAuthSecretKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getRestAuthSecretKey() { + return restAuthSecretKey != null ? new String(restAuthSecretKey) : null; + } + + /** + * The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark + * master's REST endpoint is protected by the JWS filter. Applicable only when submitMode is + * REST and the cluster enforces REST request signing. This setting is independent of + * authenticationType. + * + *

Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKey") + public char[] getRestAuthSecretKey__AsCharArray() { + return restAuthSecretKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("restAuthSecretKeySecretId") + private final String restAuthSecretKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the REST submission signing key. Applicable only when submitMode is REST + * and the cluster enforces REST request signing. This setting is independent of + * authenticationType. Note: When provided, 'restAuthSecretKey' field must not be provided. + * + * @return the value + */ + public String getRestAuthSecretKeySecretId() { + return restAuthSecretKeySecretId; + } + + /** + * The base64 encoded content of the trust store used to validate the Spark server certificate. + * Applicable when securityProtocol is TLS. Provide this when the server certificate is not + * already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") + private final char[] trustStore; + + /** + * The base64 encoded content of the trust store used to validate the Spark server certificate. + * Applicable when securityProtocol is TLS. Provide this when the server certificate is not + * already trusted by the JVM. <p> Deprecated: This field is deprecated and replaced by + * "trustStoreSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getTrustStore__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getTrustStore() { + return trustStore != null ? new String(trustStore) : null; + } + + /** + * The base64 encoded content of the trust store used to validate the Spark server certificate. + * Applicable when securityProtocol is TLS. Provide this when the server certificate is not + * already trusted by the JVM. + * + *

Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStore") + public char[] getTrustStore__AsCharArray() { + return trustStore; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreSecretId") + private final String trustStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store content. Applicable when securityProtocol is TLS. Provide + * this when the server certificate is not already trusted by the JVM. Note: When provided, + * 'trustStore' field must not be provided. + * + * @return the value + */ + public String getTrustStoreSecretId() { + return trustStoreSecretId; + } + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store is + * provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + private final char[] trustStorePassword; + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store is + * provided. Required when 'trustStore' is provided. <p> Deprecated: This field is + * deprecated and replaced by "trustStorePasswordSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getTrustStorePassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getTrustStorePassword() { + return trustStorePassword != null ? new String(trustStorePassword) : null; + } + + /** + * Password for the trust store. Applicable when securityProtocol is TLS and a trust store is + * provided. Required when 'trustStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePassword") + public char[] getTrustStorePassword__AsCharArray() { + return trustStorePassword; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStorePasswordSecretId") + private final String trustStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the trust store password. Applicable when securityProtocol is TLS and a + * trust store is provided. Required when 'trustStoreSecretId' is provided. Note: When provided, + * 'trustStorePassword' field must not be provided. + * + * @return the value + */ + public String getTrustStorePasswordSecretId() { + return trustStorePasswordSecretId; + } + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and a + * trust store is provided. Defaults to JKS when not provided. Provide this only when a trust + * store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("trustStoreType") + private final SparkConnection.TrustStoreType trustStoreType; + + /** + * Trust store format used by the Spark client. Applicable when securityProtocol is TLS and a + * trust store is provided. Defaults to JKS when not provided. Provide this only when a trust + * store is provided. + * + * @return the value + */ + public SparkConnection.TrustStoreType getTrustStoreType() { + return trustStoreType; + } + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") + private final char[] keyStore; + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. <p> Deprecated: This field is deprecated and replaced by + * "keyStoreSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getKeyStore__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getKeyStore() { + return keyStore != null ? new String(keyStore) : null; + } + + /** + * The base64 encoded content of the client key store used for mutual TLS. Provide this only + * when the target cluster requires client certificate authentication. Applicable when + * securityProtocol is TLS. + * + *

Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStore") + public char[] getKeyStore__AsCharArray() { + return keyStore; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreSecretId") + private final String keyStoreSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store content. Applicable when securityProtocol is TLS. + * Note: When provided, 'keyStore' field must not be provided. + * + * @return the value + */ + public String getKeyStoreSecretId() { + return keyStoreSecretId; + } + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client key + * store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + private final char[] keyStorePassword; + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client key + * store is provided. Required when 'keyStore' is provided. <p> Deprecated: This + * field is deprecated and replaced by "keyStorePasswordSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getKeyStorePassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getKeyStorePassword() { + return keyStorePassword != null ? new String(keyStorePassword) : null; + } + + /** + * Password for the client key store. Applicable when securityProtocol is TLS and a client key + * store is provided. Required when 'keyStore' is provided. + * + *

Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePassword") + public char[] getKeyStorePassword__AsCharArray() { + return keyStorePassword; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStorePasswordSecretId") + private final String keyStorePasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the client key store password. Applicable when securityProtocol is TLS and + * a client key store is provided. Required when 'keyStoreSecretId' is provided. Note: When + * provided, 'keyStorePassword' field must not be provided. + * + * @return the value + */ + public String getKeyStorePasswordSecretId() { + return keyStorePasswordSecretId; + } + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and a + * client key store is provided. Defaults to JKS when not provided. Provide this only when a + * client key store is provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("keyStoreType") + private final SparkConnection.KeyStoreType keyStoreType; + + /** + * Client key store format used for mutual TLS. Applicable when securityProtocol is TLS and a + * client key store is provided. Defaults to JKS when not provided. Provide this only when a + * client key store is provided. + * + * @return the value + */ + public SparkConnection.KeyStoreType getKeyStoreType() { + return keyStoreType; + } + + /** + * Password for the certificate private key inside the client key store. Provide this only when + * it differs from the key store password. Applicable when securityProtocol is TLS and a client + * key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") + private final char[] sslKeyPassword; + + /** + * Password for the certificate private key inside the client key store. Provide this only when + * it differs from the key store password. Applicable when securityProtocol is TLS and a client + * key store is provided. <p> Deprecated: This field is deprecated and replaced by + * "sslKeyPasswordSecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getSslKeyPassword__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSslKeyPassword() { + return sslKeyPassword != null ? new String(sslKeyPassword) : null; + } + + /** + * Password for the certificate private key inside the client key store. Provide this only when + * it differs from the key store password. Applicable when securityProtocol is TLS and a client + * key store is provided. + * + *

Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPassword") + public char[] getSslKeyPassword__AsCharArray() { + return sslKeyPassword; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("sslKeyPasswordSecretId") + private final String sslKeyPasswordSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the private key password. Applicable when securityProtocol is TLS and a + * client key store is provided. Note: When provided, 'sslKeyPassword' field must not be + * provided. + * + * @return the value + */ + public String getSslKeyPasswordSecretId() { + return sslKeyPasswordSecretId; + } + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tlsProtocol") + private final SparkConnection.TlsProtocol tlsProtocol; + + /** + * TLS protocol negotiated by the Spark client. Applicable when securityProtocol is TLS. + * Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster. + * + * @return the value + */ + public SparkConnection.TlsProtocol getTlsProtocol() { + return tlsProtocol; + } + + @com.fasterxml.jackson.annotation.JsonProperty("artifactLocation") + private final UpdateSparkArtifactLocationDetails artifactLocation; + + public UpdateSparkArtifactLocationDetails getArtifactLocation() { + return artifactLocation; + } + + @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("UpdateSparkConnectionDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", submitMode=").append(String.valueOf(this.submitMode)); + sb.append(", authenticationType=").append(String.valueOf(this.authenticationType)); + sb.append(", securityProtocol=").append(String.valueOf(this.securityProtocol)); + sb.append(", clusterEndpoint=").append(String.valueOf(this.clusterEndpoint)); + sb.append(", restEndpoint=").append(String.valueOf(this.restEndpoint)); + sb.append(", authSecret=").append(""); + sb.append(", authSecretSecretId=").append(String.valueOf(this.authSecretSecretId)); + sb.append(", rpcCipher=").append(String.valueOf(this.rpcCipher)); + sb.append(", restAuthSecretKey=").append(""); + sb.append(", restAuthSecretKeySecretId=") + .append(String.valueOf(this.restAuthSecretKeySecretId)); + sb.append(", trustStore=").append(""); + sb.append(", trustStoreSecretId=").append(String.valueOf(this.trustStoreSecretId)); + sb.append(", trustStorePassword=").append(""); + sb.append(", trustStorePasswordSecretId=") + .append(String.valueOf(this.trustStorePasswordSecretId)); + sb.append(", trustStoreType=").append(String.valueOf(this.trustStoreType)); + sb.append(", keyStore=").append(""); + sb.append(", keyStoreSecretId=").append(String.valueOf(this.keyStoreSecretId)); + sb.append(", keyStorePassword=").append(""); + sb.append(", keyStorePasswordSecretId=") + .append(String.valueOf(this.keyStorePasswordSecretId)); + sb.append(", keyStoreType=").append(String.valueOf(this.keyStoreType)); + sb.append(", sslKeyPassword=").append(""); + sb.append(", sslKeyPasswordSecretId=").append(String.valueOf(this.sslKeyPasswordSecretId)); + sb.append(", tlsProtocol=").append(String.valueOf(this.tlsProtocol)); + sb.append(", artifactLocation=").append(String.valueOf(this.artifactLocation)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkConnectionDetails)) { + return false; + } + + UpdateSparkConnectionDetails other = (UpdateSparkConnectionDetails) o; + return java.util.Objects.equals(this.submitMode, other.submitMode) + && java.util.Objects.equals(this.authenticationType, other.authenticationType) + && java.util.Objects.equals(this.securityProtocol, other.securityProtocol) + && java.util.Objects.equals(this.clusterEndpoint, other.clusterEndpoint) + && java.util.Objects.equals(this.restEndpoint, other.restEndpoint) + && java.util.Objects.equals(this.authSecret, other.authSecret) + && java.util.Objects.equals(this.authSecretSecretId, other.authSecretSecretId) + && java.util.Objects.equals(this.rpcCipher, other.rpcCipher) + && java.util.Objects.equals(this.restAuthSecretKey, other.restAuthSecretKey) + && java.util.Objects.equals( + this.restAuthSecretKeySecretId, other.restAuthSecretKeySecretId) + && java.util.Objects.equals(this.trustStore, other.trustStore) + && java.util.Objects.equals(this.trustStoreSecretId, other.trustStoreSecretId) + && java.util.Objects.equals(this.trustStorePassword, other.trustStorePassword) + && java.util.Objects.equals( + this.trustStorePasswordSecretId, other.trustStorePasswordSecretId) + && java.util.Objects.equals(this.trustStoreType, other.trustStoreType) + && java.util.Objects.equals(this.keyStore, other.keyStore) + && java.util.Objects.equals(this.keyStoreSecretId, other.keyStoreSecretId) + && java.util.Objects.equals(this.keyStorePassword, other.keyStorePassword) + && java.util.Objects.equals( + this.keyStorePasswordSecretId, other.keyStorePasswordSecretId) + && java.util.Objects.equals(this.keyStoreType, other.keyStoreType) + && java.util.Objects.equals(this.sslKeyPassword, other.sslKeyPassword) + && java.util.Objects.equals( + this.sslKeyPasswordSecretId, other.sslKeyPasswordSecretId) + && java.util.Objects.equals(this.tlsProtocol, other.tlsProtocol) + && java.util.Objects.equals(this.artifactLocation, other.artifactLocation) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.submitMode == null ? 43 : this.submitMode.hashCode()); + result = + (result * PRIME) + + (this.authenticationType == null + ? 43 + : this.authenticationType.hashCode()); + result = + (result * PRIME) + + (this.securityProtocol == null ? 43 : this.securityProtocol.hashCode()); + result = + (result * PRIME) + + (this.clusterEndpoint == null ? 43 : this.clusterEndpoint.hashCode()); + result = (result * PRIME) + (this.restEndpoint == null ? 43 : this.restEndpoint.hashCode()); + result = (result * PRIME) + (this.authSecret == null ? 43 : this.authSecret.hashCode()); + result = + (result * PRIME) + + (this.authSecretSecretId == null + ? 43 + : this.authSecretSecretId.hashCode()); + result = (result * PRIME) + (this.rpcCipher == null ? 43 : this.rpcCipher.hashCode()); + result = + (result * PRIME) + + (this.restAuthSecretKey == null ? 43 : this.restAuthSecretKey.hashCode()); + result = + (result * PRIME) + + (this.restAuthSecretKeySecretId == null + ? 43 + : this.restAuthSecretKeySecretId.hashCode()); + result = (result * PRIME) + (this.trustStore == null ? 43 : this.trustStore.hashCode()); + result = + (result * PRIME) + + (this.trustStoreSecretId == null + ? 43 + : this.trustStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStorePassword == null + ? 43 + : this.trustStorePassword.hashCode()); + result = + (result * PRIME) + + (this.trustStorePasswordSecretId == null + ? 43 + : this.trustStorePasswordSecretId.hashCode()); + result = + (result * PRIME) + + (this.trustStoreType == null ? 43 : this.trustStoreType.hashCode()); + result = (result * PRIME) + (this.keyStore == null ? 43 : this.keyStore.hashCode()); + result = + (result * PRIME) + + (this.keyStoreSecretId == null ? 43 : this.keyStoreSecretId.hashCode()); + result = + (result * PRIME) + + (this.keyStorePassword == null ? 43 : this.keyStorePassword.hashCode()); + result = + (result * PRIME) + + (this.keyStorePasswordSecretId == null + ? 43 + : this.keyStorePasswordSecretId.hashCode()); + result = (result * PRIME) + (this.keyStoreType == null ? 43 : this.keyStoreType.hashCode()); + result = + (result * PRIME) + + (this.sslKeyPassword == null ? 43 : this.sslKeyPassword.hashCode()); + result = + (result * PRIME) + + (this.sslKeyPasswordSecretId == null + ? 43 + : this.sslKeyPasswordSecretId.hashCode()); + result = (result * PRIME) + (this.tlsProtocol == null ? 43 : this.tlsProtocol.hashCode()); + result = + (result * PRIME) + + (this.artifactLocation == null ? 43 : this.artifactLocation.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..c89d9ed57a5 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkOciObjectStorageConfigDetails.java @@ -0,0 +1,88 @@ +/** + * 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.goldengate.model; + +/** + * Configuration for updating an OCI Object Storage Spark artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType", + defaultImpl = UpdateSparkOciObjectStorageConfigDetails.class) +@com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateSparkParOciObjectStorageConfigDetails.class, + name = "PRE_AUTHENTICATED_REQUEST"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateSparkSecretKeyOciObjectStorageConfigDetails.class, + name = "CUSTOMER_SECRET_KEY"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateSparkUserPrincipalOciObjectStorageConfigDetails.class, + name = "USER_PRINCIPAL"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = UpdateSparkResourcePrincipalOciObjectStorageConfigDetails.class, + name = "RESOURCE_PRINCIPAL") +}) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public class UpdateSparkOciObjectStorageConfigDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({}) + protected UpdateSparkOciObjectStorageConfigDetails() { + super(); + } + + @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("UpdateSparkOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString()); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkOciObjectStorageConfigDetails)) { + return false; + } + + UpdateSparkOciObjectStorageConfigDetails other = + (UpdateSparkOciObjectStorageConfigDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkParOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkParOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..9c25f51ac60 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkParOciObjectStorageConfigDetails.java @@ -0,0 +1,238 @@ +/** + * 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.goldengate.model; + +/** + * Pre-authenticated request URL details for updating an OCI Object Storage Spark artifact location. + * When updating the PAR URL, provide exactly one of {@code parUrl} or {@code parUrlSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSparkParOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSparkParOciObjectStorageConfigDetails + extends UpdateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param parUrl the value to set + * @return this builder + */ + public Builder parUrl(char[] parUrl) { + this.parUrl = parUrl; + this.__explicitlySet__.add("parUrl"); + return this; + } + + public Builder parUrl(String parUrl) { + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.__explicitlySet__.add("parUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @param parUrlSecretId the value to set + * @return this builder + */ + public Builder parUrlSecretId(String parUrlSecretId) { + this.parUrlSecretId = parUrlSecretId; + this.__explicitlySet__.add("parUrlSecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSparkParOciObjectStorageConfigDetails build() { + UpdateSparkParOciObjectStorageConfigDetails model = + new UpdateSparkParOciObjectStorageConfigDetails( + this.parUrl, this.parUrlSecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSparkParOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("parUrl")) { + this.parUrl(model.getParUrl()); + } + if (model.wasPropertyExplicitlySet("parUrlSecretId")) { + this.parUrlSecretId(model.getParUrlSecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateSparkParOciObjectStorageConfigDetails(String parUrl, String parUrlSecretId) { + super(); + this.parUrl = parUrl != null ? parUrl.toCharArray() : null; + this.parUrlSecretId = parUrlSecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateSparkParOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") char[] parUrl, + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + String parUrlSecretId) { + super(); + this.parUrl = parUrl; + this.parUrlSecretId = parUrlSecretId; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + private final char[] parUrl; + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getParUrl__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getParUrl() { + return parUrl != null ? new String(parUrl) : null; + } + + /** + * A pre-authenticated request (PAR) URL that provides access to the artifact location. + * Deprecated: This field is deprecated and replaced by "parUrlSecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrl") + public char[] getParUrl__AsCharArray() { + return parUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("parUrlSecretId") + private final String parUrlSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the pre-authenticated request (PAR) URL. Note: When provided, {@code + * parUrl} must not be provided. + * + * @return the value + */ + public String getParUrlSecretId() { + return parUrlSecretId; + } + + @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("UpdateSparkParOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", parUrl=").append(""); + sb.append(", parUrlSecretId=").append(String.valueOf(this.parUrlSecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkParOciObjectStorageConfigDetails)) { + return false; + } + + UpdateSparkParOciObjectStorageConfigDetails other = + (UpdateSparkParOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.parUrl, other.parUrl) + && java.util.Objects.equals(this.parUrlSecretId, other.parUrlSecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.parUrl == null ? 43 : this.parUrl.hashCode()); + result = + (result * PRIME) + + (this.parUrlSecretId == null ? 43 : this.parUrlSecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkResourcePrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkResourcePrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..7be0c96f64e --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkResourcePrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,260 @@ +/** + * 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.goldengate.model; + +/** + * Resource-principal authentication and location details for updating an OCI Object Storage Spark + * artifact location.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSparkResourcePrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSparkResourcePrincipalOciObjectStorageConfigDetails + extends UpdateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSparkResourcePrincipalOciObjectStorageConfigDetails build() { + UpdateSparkResourcePrincipalOciObjectStorageConfigDetails model = + new UpdateSparkResourcePrincipalOciObjectStorageConfigDetails( + this.region, this.namespace, this.bucket, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSparkResourcePrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateSparkResourcePrincipalOciObjectStorageConfigDetails( + String region, String namespace, String bucket, String path) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("UpdateSparkResourcePrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkResourcePrincipalOciObjectStorageConfigDetails)) { + return false; + } + + UpdateSparkResourcePrincipalOciObjectStorageConfigDetails other = + (UpdateSparkResourcePrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkSecretKeyOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkSecretKeyOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..a756ef92f4f --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkSecretKeyOciObjectStorageConfigDetails.java @@ -0,0 +1,466 @@ +/** + * 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.goldengate.model; + +/** + * Secret-key authentication and location details for updating an OCI Object Storage Spark artifact + * location. When updating the secret key, provide exactly one of {@code secretAccessKey} or {@code + * secretAccessKeySecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSparkSecretKeyOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSparkSecretKeyOciObjectStorageConfigDetails + extends UpdateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: + * Despite the "Id" suffix, this value is not an OCI OCID. + * + * @param accessKeyId the value to set + * @return this builder + */ + public Builder accessKeyId(String accessKeyId) { + this.accessKeyId = accessKeyId; + this.__explicitlySet__.add("accessKeyId"); + return this; + } + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param secretAccessKey the value to set + * @return this builder + */ + public Builder secretAccessKey(char[] secretAccessKey) { + this.secretAccessKey = secretAccessKey; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + + public Builder secretAccessKey(String secretAccessKey) { + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.__explicitlySet__.add("secretAccessKey"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} + * must not be provided. + * + * @param secretAccessKeySecretId the value to set + * @return this builder + */ + public Builder secretAccessKeySecretId(String secretAccessKeySecretId) { + this.secretAccessKeySecretId = secretAccessKeySecretId; + this.__explicitlySet__.add("secretAccessKeySecretId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSparkSecretKeyOciObjectStorageConfigDetails build() { + UpdateSparkSecretKeyOciObjectStorageConfigDetails model = + new UpdateSparkSecretKeyOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.accessKeyId, + this.secretAccessKey, + this.secretAccessKeySecretId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSparkSecretKeyOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("accessKeyId")) { + this.accessKeyId(model.getAccessKeyId()); + } + if (model.wasPropertyExplicitlySet("secretAccessKey")) { + this.secretAccessKey(model.getSecretAccessKey()); + } + if (model.wasPropertyExplicitlySet("secretAccessKeySecretId")) { + this.secretAccessKeySecretId(model.getSecretAccessKeySecretId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateSparkSecretKeyOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String accessKeyId, + String secretAccessKey, + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey != null ? secretAccessKey.toCharArray() : null; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateSparkSecretKeyOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") String accessKeyId, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + char[] secretAccessKey, + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + String secretAccessKeySecretId) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.accessKeyId = accessKeyId; + this.secretAccessKey = secretAccessKey; + this.secretAccessKeySecretId = secretAccessKeySecretId; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + */ + @com.fasterxml.jackson.annotation.JsonProperty("accessKeyId") + private final String accessKeyId; + + /** + * Access key identifier used for OCI Object Storage secret-key authentication. Note: Despite + * the "Id" suffix, this value is not an OCI OCID. + * + * @return the value + */ + public String getAccessKeyId() { + return accessKeyId; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + private final char[] secretAccessKey; + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows + * the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getSecretAccessKey__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getSecretAccessKey() { + return secretAccessKey != null ? new String(secretAccessKey) : null; + } + + /** + * Secret access key used for OCI Object Storage secret-key authentication. Deprecated: This + * field is deprecated and replaced by "secretAccessKeySecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKey") + public char[] getSecretAccessKey__AsCharArray() { + return secretAccessKey; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("secretAccessKeySecretId") + private final String secretAccessKeySecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the secret access key. Note: When provided, {@code secretAccessKey} must + * not be provided. + * + * @return the value + */ + public String getSecretAccessKeySecretId() { + return secretAccessKeySecretId; + } + + @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("UpdateSparkSecretKeyOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", accessKeyId=").append(String.valueOf(this.accessKeyId)); + sb.append(", secretAccessKey=").append(""); + sb.append(", secretAccessKeySecretId=") + .append(String.valueOf(this.secretAccessKeySecretId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkSecretKeyOciObjectStorageConfigDetails)) { + return false; + } + + UpdateSparkSecretKeyOciObjectStorageConfigDetails other = + (UpdateSparkSecretKeyOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.accessKeyId, other.accessKeyId) + && java.util.Objects.equals(this.secretAccessKey, other.secretAccessKey) + && java.util.Objects.equals( + this.secretAccessKeySecretId, other.secretAccessKeySecretId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.accessKeyId == null ? 43 : this.accessKeyId.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKey == null ? 43 : this.secretAccessKey.hashCode()); + result = + (result * PRIME) + + (this.secretAccessKeySecretId == null + ? 43 + : this.secretAccessKeySecretId.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkUserPrincipalOciObjectStorageConfigDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkUserPrincipalOciObjectStorageConfigDetails.java new file mode 100644 index 00000000000..71ec7f2dfa7 --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateSparkUserPrincipalOciObjectStorageConfigDetails.java @@ -0,0 +1,728 @@ +/** + * 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.goldengate.model; + +/** + * User-principal authentication and location details for updating an OCI Object Storage Spark + * artifact location. When updating the private key, provide exactly one of {@code privateKeyFile} + * or {@code privateKeyFileSecretId}. If updating the passphrase, provide at most one of {@code + * privateKeyPassphrase} or {@code privateKeyPassphraseSecretId}.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateSparkUserPrincipalOciObjectStorageConfigDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "authenticationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateSparkUserPrincipalOciObjectStorageConfigDetails + extends UpdateSparkOciObjectStorageConfigDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @param region the value to set + * @return this builder + */ + public Builder region(String region) { + this.region = region; + this.__explicitlySet__.add("region"); + return this; + } + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @param namespace the value to set + * @return this builder + */ + public Builder namespace(String namespace) { + this.namespace = namespace; + this.__explicitlySet__.add("namespace"); + return this; + } + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @param bucket the value to set + * @return this builder + */ + public Builder bucket(String bucket) { + this.bucket = bucket; + this.__explicitlySet__.add("bucket"); + return this; + } + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Object path used for Spark application artifacts. Example: + * "spark-apps/order-analysis/1.2.0" + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @param tenancyId the value to set + * @return this builder + */ + public Builder tenancyId(String tenancyId) { + this.tenancyId = tenancyId; + this.__explicitlySet__.add("tenancyId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * OCI user whose API key is used to access the artifact location. If not provided it will + * default to the current user. + * + * @param userId the value to set + * @return this builder + */ + public Builder userId(String userId) { + this.userId = userId; + this.__explicitlySet__.add("userId"); + return this; + } + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * Deprecated: This field is deprecated and replaced by "privateKeyFileSecretId". This + * change follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyFile the value to set + * @return this builder + */ + public Builder privateKeyFile(char[] privateKeyFile) { + this.privateKeyFile = privateKeyFile; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + + public Builder privateKeyFile(String privateKeyFile) { + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.__explicitlySet__.add("privateKeyFile"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the + * API key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: + * When provided, 'privateKeyFile' field must not be provided. + * + * @param privateKeyFileSecretId the value to set + * @return this builder + */ + public Builder privateKeyFileSecretId(String privateKeyFileSecretId) { + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.__explicitlySet__.add("privateKeyFileSecretId"); + return this; + } + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @param privateKeyPassphrase the value to set + * @return this builder + */ + public Builder privateKeyPassphrase(char[] privateKeyPassphrase) { + this.privateKeyPassphrase = privateKeyPassphrase; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + + public Builder privateKeyPassphrase(String privateKeyPassphrase) { + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.__explicitlySet__.add("privateKeyPassphrase"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @param privateKeyPassphraseSecretId the value to set + * @return this builder + */ + public Builder privateKeyPassphraseSecretId(String privateKeyPassphraseSecretId) { + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.__explicitlySet__.add("privateKeyPassphraseSecretId"); + return this; + } + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @param publicKeyFingerprint the value to set + * @return this builder + */ + public Builder publicKeyFingerprint(String publicKeyFingerprint) { + this.publicKeyFingerprint = publicKeyFingerprint; + this.__explicitlySet__.add("publicKeyFingerprint"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateSparkUserPrincipalOciObjectStorageConfigDetails build() { + UpdateSparkUserPrincipalOciObjectStorageConfigDetails model = + new UpdateSparkUserPrincipalOciObjectStorageConfigDetails( + this.region, + this.namespace, + this.bucket, + this.path, + this.tenancyId, + this.userId, + this.privateKeyFile, + this.privateKeyFileSecretId, + this.privateKeyPassphrase, + this.privateKeyPassphraseSecretId, + this.publicKeyFingerprint); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateSparkUserPrincipalOciObjectStorageConfigDetails model) { + if (model.wasPropertyExplicitlySet("region")) { + this.region(model.getRegion()); + } + if (model.wasPropertyExplicitlySet("namespace")) { + this.namespace(model.getNamespace()); + } + if (model.wasPropertyExplicitlySet("bucket")) { + this.bucket(model.getBucket()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + if (model.wasPropertyExplicitlySet("tenancyId")) { + this.tenancyId(model.getTenancyId()); + } + if (model.wasPropertyExplicitlySet("userId")) { + this.userId(model.getUserId()); + } + if (model.wasPropertyExplicitlySet("privateKeyFile")) { + this.privateKeyFile(model.getPrivateKeyFile()); + } + if (model.wasPropertyExplicitlySet("privateKeyFileSecretId")) { + this.privateKeyFileSecretId(model.getPrivateKeyFileSecretId()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphrase")) { + this.privateKeyPassphrase(model.getPrivateKeyPassphrase()); + } + if (model.wasPropertyExplicitlySet("privateKeyPassphraseSecretId")) { + this.privateKeyPassphraseSecretId(model.getPrivateKeyPassphraseSecretId()); + } + if (model.wasPropertyExplicitlySet("publicKeyFingerprint")) { + this.publicKeyFingerprint(model.getPublicKeyFingerprint()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateSparkUserPrincipalOciObjectStorageConfigDetails( + String region, + String namespace, + String bucket, + String path, + String tenancyId, + String userId, + String privateKeyFile, + String privateKeyFileSecretId, + String privateKeyPassphrase, + String privateKeyPassphraseSecretId, + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile != null ? privateKeyFile.toCharArray() : null; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = + privateKeyPassphrase != null ? privateKeyPassphrase.toCharArray() : null; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public UpdateSparkUserPrincipalOciObjectStorageConfigDetails( + @com.fasterxml.jackson.annotation.JsonProperty("region") String region, + @com.fasterxml.jackson.annotation.JsonProperty("namespace") String namespace, + @com.fasterxml.jackson.annotation.JsonProperty("bucket") String bucket, + @com.fasterxml.jackson.annotation.JsonProperty("path") String path, + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") String tenancyId, + @com.fasterxml.jackson.annotation.JsonProperty("userId") String userId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") char[] privateKeyFile, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + String privateKeyFileSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + char[] privateKeyPassphrase, + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + String privateKeyPassphraseSecretId, + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + String publicKeyFingerprint) { + super(); + this.region = region; + this.namespace = namespace; + this.bucket = bucket; + this.path = path; + this.tenancyId = tenancyId; + this.userId = userId; + this.privateKeyFile = privateKeyFile; + this.privateKeyFileSecretId = privateKeyFileSecretId; + this.privateKeyPassphrase = privateKeyPassphrase; + this.privateKeyPassphraseSecretId = privateKeyPassphraseSecretId; + this.publicKeyFingerprint = publicKeyFingerprint; + } + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + */ + @com.fasterxml.jackson.annotation.JsonProperty("region") + private final String region; + + /** + * The name of the region. e.g.: us-ashburn-1 If the region is not provided, backend will + * default to the current region. + * + * @return the value + */ + public String getRegion() { + return region; + } + + /** The OCI Object Storage namespace containing the bucket. Example: "mynamespace" */ + @com.fasterxml.jackson.annotation.JsonProperty("namespace") + private final String namespace; + + /** + * The OCI Object Storage namespace containing the bucket. Example: "mynamespace" + * + * @return the value + */ + public String getNamespace() { + return namespace; + } + + /** Bucket containing Spark application artifacts. Example: "spark-artifacts" */ + @com.fasterxml.jackson.annotation.JsonProperty("bucket") + private final String bucket; + + /** + * Bucket containing Spark application artifacts. Example: "spark-artifacts" + * + * @return the value + */ + public String getBucket() { + return bucket; + } + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Object path used for Spark application artifacts. Example: "spark-apps/order-analysis/1.2.0" + * + * @return the value + */ + public String getPath() { + return path; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + */ + @com.fasterxml.jackson.annotation.JsonProperty("tenancyId") + private final String tenancyId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * related OCI tenancy. + * + * @return the value + */ + public String getTenancyId() { + return tenancyId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + */ + @com.fasterxml.jackson.annotation.JsonProperty("userId") + private final String userId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OCI + * user whose API key is used to access the artifact location. If not provided it will default + * to the current user. + * + * @return the value + */ + public String getUserId() { + return userId; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + private final char[] privateKeyFile; + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change + * follows the GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyFile__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyFile() { + return privateKeyFile != null ? new String(privateKeyFile) : null; + } + + /** + * The base64 encoded content of the private key file (PEM file) corresponding to the API key of + * the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Deprecated: + * This field is deprecated and replaced by "privateKeyFileSecretId". This change follows the + * GoldenGate "Plain Text Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFile") + public char[] getPrivateKeyFile__AsCharArray() { + return privateKeyFile; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyFileSecretId") + private final String privateKeyFileSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the content of the private key file (PEM file) corresponding to the API + * key of the fingerprint. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm Note: When + * provided, 'privateKeyFile' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyFileSecretId() { + return privateKeyFileSecretId; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + private final char[] privateKeyPassphrase; + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text + * Fields in Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + * @deprecated Use getPrivateKeyPassphrase__AsCharArray() instead. + */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore + public String getPrivateKeyPassphrase() { + return privateKeyPassphrase != null ? new String(privateKeyPassphrase) : null; + } + + /** + * The passphrase of the private key. Deprecated: This field is deprecated and replaced by + * "privateKeyPassphraseSecretId". This change follows the GoldenGate "Plain Text Fields in + * Connections" deprecation: + * https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphrase") + public char[] getPrivateKeyPassphrase__AsCharArray() { + return privateKeyPassphrase; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + */ + @com.fasterxml.jackson.annotation.JsonProperty("privateKeyPassphraseSecretId") + private final String privateKeyPassphraseSecretId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Secret that stores the passphrase of the private key. Note: When provided, + * 'privateKeyPassphrase' field must not be provided. + * + * @return the value + */ + public String getPrivateKeyPassphraseSecretId() { + return privateKeyPassphraseSecretId; + } + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicKeyFingerprint") + private final String publicKeyFingerprint; + + /** + * The fingerprint of the API Key of the user specified by the userId. See documentation: + * https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm + * + * @return the value + */ + public String getPublicKeyFingerprint() { + return publicKeyFingerprint; + } + + @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("UpdateSparkUserPrincipalOciObjectStorageConfigDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", region=").append(String.valueOf(this.region)); + sb.append(", namespace=").append(String.valueOf(this.namespace)); + sb.append(", bucket=").append(String.valueOf(this.bucket)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(", tenancyId=").append(String.valueOf(this.tenancyId)); + sb.append(", userId=").append(String.valueOf(this.userId)); + sb.append(", privateKeyFile=").append(""); + sb.append(", privateKeyFileSecretId=").append(String.valueOf(this.privateKeyFileSecretId)); + sb.append(", privateKeyPassphrase=").append(""); + sb.append(", privateKeyPassphraseSecretId=") + .append(String.valueOf(this.privateKeyPassphraseSecretId)); + sb.append(", publicKeyFingerprint=").append(String.valueOf(this.publicKeyFingerprint)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateSparkUserPrincipalOciObjectStorageConfigDetails)) { + return false; + } + + UpdateSparkUserPrincipalOciObjectStorageConfigDetails other = + (UpdateSparkUserPrincipalOciObjectStorageConfigDetails) o; + return java.util.Objects.equals(this.region, other.region) + && java.util.Objects.equals(this.namespace, other.namespace) + && java.util.Objects.equals(this.bucket, other.bucket) + && java.util.Objects.equals(this.path, other.path) + && java.util.Objects.equals(this.tenancyId, other.tenancyId) + && java.util.Objects.equals(this.userId, other.userId) + && java.util.Objects.equals(this.privateKeyFile, other.privateKeyFile) + && java.util.Objects.equals( + this.privateKeyFileSecretId, other.privateKeyFileSecretId) + && java.util.Objects.equals(this.privateKeyPassphrase, other.privateKeyPassphrase) + && java.util.Objects.equals( + this.privateKeyPassphraseSecretId, other.privateKeyPassphraseSecretId) + && java.util.Objects.equals(this.publicKeyFingerprint, other.publicKeyFingerprint) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.region == null ? 43 : this.region.hashCode()); + result = (result * PRIME) + (this.namespace == null ? 43 : this.namespace.hashCode()); + result = (result * PRIME) + (this.bucket == null ? 43 : this.bucket.hashCode()); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + result = (result * PRIME) + (this.tenancyId == null ? 43 : this.tenancyId.hashCode()); + result = (result * PRIME) + (this.userId == null ? 43 : this.userId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFile == null ? 43 : this.privateKeyFile.hashCode()); + result = + (result * PRIME) + + (this.privateKeyFileSecretId == null + ? 43 + : this.privateKeyFileSecretId.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphrase == null + ? 43 + : this.privateKeyPassphrase.hashCode()); + result = + (result * PRIME) + + (this.privateKeyPassphraseSecretId == null + ? 43 + : this.privateKeyPassphraseSecretId.hashCode()); + result = + (result * PRIME) + + (this.publicKeyFingerprint == null + ? 43 + : this.publicKeyFingerprint.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateUcVolumeDatabricksEngineArtifactLocationDetails.java b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateUcVolumeDatabricksEngineArtifactLocationDetails.java new file mode 100644 index 00000000000..90eb703137a --- /dev/null +++ b/bmc-goldengate/src/main/java/com/oracle/bmc/goldengate/model/UpdateUcVolumeDatabricksEngineArtifactLocationDetails.java @@ -0,0 +1,151 @@ +/** + * 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.goldengate.model; + +/** + * The information to update a Unity Catalog volume location used to share Databricks application + * artifacts.
+ * 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: 20200407") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateUcVolumeDatabricksEngineArtifactLocationDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "locationType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateUcVolumeDatabricksEngineArtifactLocationDetails + extends UpdateDatabricksEngineArtifactLocationDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("shouldOverwriteExisting") + private Boolean shouldOverwriteExisting; + + public Builder shouldOverwriteExisting(Boolean shouldOverwriteExisting) { + this.shouldOverwriteExisting = shouldOverwriteExisting; + this.__explicitlySet__.add("shouldOverwriteExisting"); + return this; + } + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private String path; + + /** + * Unity Catalog volume artifact path. + * + * @param path the value to set + * @return this builder + */ + public Builder path(String path) { + this.path = path; + this.__explicitlySet__.add("path"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateUcVolumeDatabricksEngineArtifactLocationDetails build() { + UpdateUcVolumeDatabricksEngineArtifactLocationDetails model = + new UpdateUcVolumeDatabricksEngineArtifactLocationDetails( + this.shouldOverwriteExisting, this.path); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateUcVolumeDatabricksEngineArtifactLocationDetails model) { + if (model.wasPropertyExplicitlySet("shouldOverwriteExisting")) { + this.shouldOverwriteExisting(model.getShouldOverwriteExisting()); + } + if (model.wasPropertyExplicitlySet("path")) { + this.path(model.getPath()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public UpdateUcVolumeDatabricksEngineArtifactLocationDetails( + Boolean shouldOverwriteExisting, String path) { + super(shouldOverwriteExisting); + this.path = path; + } + + /** Unity Catalog volume artifact path. */ + @com.fasterxml.jackson.annotation.JsonProperty("path") + private final String path; + + /** + * Unity Catalog volume artifact path. + * + * @return the value + */ + public String getPath() { + return path; + } + + @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("UpdateUcVolumeDatabricksEngineArtifactLocationDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(", path=").append(String.valueOf(this.path)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateUcVolumeDatabricksEngineArtifactLocationDetails)) { + return false; + } + + UpdateUcVolumeDatabricksEngineArtifactLocationDetails other = + (UpdateUcVolumeDatabricksEngineArtifactLocationDetails) o; + return java.util.Objects.equals(this.path, other.path) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.path == null ? 43 : this.path.hashCode()); + return result; + } +} diff --git a/bmc-goldengate/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-goldengate/reflect-config.json b/bmc-goldengate/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-goldengate/reflect-config.json index 0f11c76c891..1ebf5417c5e 100644 --- a/bmc-goldengate/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-goldengate/reflect-config.json +++ b/bmc-goldengate/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-goldengate/reflect-config.json @@ -153,6 +153,40 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AiProviderConnection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AiProviderConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AiProviderConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AiProviderConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AiProviderConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.AiProviderSummary", @@ -377,6 +411,34 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AzureDataLakeStorageDatabricksEngineArtifactLocation", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AzureDataLakeStorageDatabricksEngineArtifactLocation$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AzureDataLakeStorageDatabricksEngineArtifactLocationSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.AzureDataLakeStorageDatabricksEngineArtifactLocationSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.AzureDataLakeStorageIcebergStorage", @@ -828,6 +890,20 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateAiProviderConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateAiProviderConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.CreateAmazonKinesisConnectionDetails", @@ -912,6 +988,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.CreateAzureDataLakeStorageIcebergStorageDetails", @@ -1029,6 +1119,90 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineParOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineParOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineSecretKeyOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.CreateDb2ConnectionDetails", @@ -1435,6 +1609,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateOciObjectStorageDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateOciObjectStorageDatabricksEngineArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.CreateOciObjectStorageS3ApiIcebergStorageDetails", @@ -1449,6 +1637,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateOciObjectStorageSparkArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateOciObjectStorageSparkArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.CreateOggDeploymentDetails", @@ -1477,6 +1679,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateOracleAiDataPlatformEngineConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.CreateOracleAiDataPlatformEngineConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.CreateOracleConnectionDetails", @@ -1584,191 +1800,418 @@ }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.CreateZeroEtlPipelineDetails", + "name": "com.oracle.bmc.goldengate.model.CreateSparkArtifactLocationDetails", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.CreateZeroEtlPipelineDetails$Builder", + "name": "com.oracle.bmc.goldengate.model.CreateSparkConnectionDetails", "allDeclaredFields": true, "allDeclaredMethods": true, - "allDeclaredConstructors": true + "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.CredentialStore", + "name": "com.oracle.bmc.goldengate.model.CreateSparkConnectionDetails$Builder", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistration", + "name": "com.oracle.bmc.goldengate.model.CreateSparkOciObjectStorageConfigDetails", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistration$Builder", + "name": "com.oracle.bmc.goldengate.model.CreateSparkParOciObjectStorageConfigDetails", "allDeclaredFields": true, "allDeclaredMethods": true, - "allDeclaredConstructors": true + "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistration$SessionMode", + "name": "com.oracle.bmc.goldengate.model.CreateSparkParOciObjectStorageConfigDetails$Builder", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationCollection", + "name": "com.oracle.bmc.goldengate.model.CreateSparkResourcePrincipalOciObjectStorageConfigDetails", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationCollection$Builder", + "name": "com.oracle.bmc.goldengate.model.CreateSparkResourcePrincipalOciObjectStorageConfigDetails$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationSummary", + "name": "com.oracle.bmc.goldengate.model.CreateSparkSecretKeyOciObjectStorageConfigDetails", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationSummary$Builder", + "name": "com.oracle.bmc.goldengate.model.CreateSparkSecretKeyOciObjectStorageConfigDetails$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationSummary$SessionMode", - "allDeclaredFields": true, - "allDeclaredMethods": true - }, - { - "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabricksConnection", + "name": "com.oracle.bmc.goldengate.model.CreateSparkUserPrincipalOciObjectStorageConfigDetails", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabricksConnection$Builder", + "name": "com.oracle.bmc.goldengate.model.CreateSparkUserPrincipalOciObjectStorageConfigDetails$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabricksConnection$TechnologyType", + "name": "com.oracle.bmc.goldengate.model.CreateUcVolumeDatabricksEngineArtifactLocationDetails", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabricksConnection$AuthenticationType", + "name": "com.oracle.bmc.goldengate.model.CreateUcVolumeDatabricksEngineArtifactLocationDetails$Builder", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabricksConnectionSummary", + "name": "com.oracle.bmc.goldengate.model.CreateZeroEtlPipelineDetails", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DatabricksConnectionSummary$Builder", + "name": "com.oracle.bmc.goldengate.model.CreateZeroEtlPipelineDetails$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Day", + "name": "com.oracle.bmc.goldengate.model.CredentialStore", "allDeclaredFields": true, "allDeclaredMethods": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Db2Connection", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistration", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Db2Connection$Builder", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistration$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Db2Connection$TechnologyType", - "allDeclaredFields": true, - "allDeclaredMethods": true - }, - { - "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Db2Connection$SecurityProtocol", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistration$SessionMode", "allDeclaredFields": true, "allDeclaredMethods": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Db2ConnectionSummary", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationCollection", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.Db2ConnectionSummary$Builder", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationCollection$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentBackupDetails", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationSummary", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentBackupDetails$Builder", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationSummary$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentUpgradeDetails", + "name": "com.oracle.bmc.goldengate.model.DatabaseRegistrationSummary$SessionMode", "allDeclaredFields": true, - "allDeclaredMethods": true, - "queryAllDeclaredConstructors": true + "allDeclaredMethods": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentUpgradeDetails$Builder", + "name": "com.oracle.bmc.goldengate.model.DatabricksConnection", "allDeclaredFields": true, "allDeclaredMethods": true, - "allDeclaredConstructors": true + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksConnection$AuthenticationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineArtifactLocation", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineArtifactLocationSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineArtifactLocationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineConnection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineConnection$AuthenticationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineOciObjectStorageConfig$AuthenticationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineParOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineParOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineResourcePrincipalOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineResourcePrincipalOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineSecretKeyOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineSecretKeyOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineUserPrincipalOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DatabricksEngineUserPrincipalOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Day", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Db2Connection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Db2Connection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Db2Connection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Db2Connection$SecurityProtocol", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Db2ConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.Db2ConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentBackupDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentBackupDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentUpgradeDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.DefaultCancelDeploymentUpgradeDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, @@ -3543,123 +3986,213 @@ }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorage", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageDatabricksEngineArtifactLocation", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorage$Builder", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageDatabricksEngineArtifactLocation$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorageSummary", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageDatabricksEngineArtifactLocationSummary", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorageSummary$Builder", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageDatabricksEngineArtifactLocationSummary$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OggDeployment", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorage", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OggDeployment$Builder", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorage$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OperationStatus", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorageSummary", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OperationType", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageS3ApiIcebergStorageSummary$Builder", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnection", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageSparkArtifactLocation", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnection$Builder", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageSparkArtifactLocation$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnection$TechnologyType", - "allDeclaredFields": true, - "allDeclaredMethods": true - }, - { - "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnectionSummary", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageSparkArtifactLocationSummary", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnectionSummary$Builder", + "name": "com.oracle.bmc.goldengate.model.OciObjectStorageSparkArtifactLocationSummary$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleConnection", + "name": "com.oracle.bmc.goldengate.model.OggDeployment", "allDeclaredFields": true, "allDeclaredMethods": true, "queryAllDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleConnection$Builder", + "name": "com.oracle.bmc.goldengate.model.OggDeployment$Builder", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleConnection$TechnologyType", + "name": "com.oracle.bmc.goldengate.model.OperationStatus", "allDeclaredFields": true, "allDeclaredMethods": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleConnection$AuthenticationMode", + "name": "com.oracle.bmc.goldengate.model.OperationType", "allDeclaredFields": true, "allDeclaredMethods": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, - "name": "com.oracle.bmc.goldengate.model.OracleConnection$SessionMode", + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnection", "allDeclaredFields": true, - "allDeclaredMethods": true + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformEngineConnection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformEngineConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformEngineConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformEngineConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleAiDataPlatformEngineConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleConnection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleConnection$AuthenticationMode", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.OracleConnection$SessionMode", + "allDeclaredFields": true, + "allDeclaredMethods": true }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, @@ -4383,6 +4916,171 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkArtifactLocation", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkArtifactLocationSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkArtifactLocationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$TechnologyType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$SubmitMode", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$AuthenticationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$SecurityProtocol", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$RpcCipher", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$TrustStoreType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$KeyStoreType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnection$TlsProtocol", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnectionSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkConnectionSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkOciObjectStorageConfig$AuthenticationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkParOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkParOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkResourcePrincipalOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkResourcePrincipalOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkSecretKeyOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkSecretKeyOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkUserPrincipalOciObjectStorageConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.SparkUserPrincipalOciObjectStorageConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.StartDeploymentDetails", @@ -4651,6 +5349,34 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UcVolumeDatabricksEngineArtifactLocation", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UcVolumeDatabricksEngineArtifactLocation$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UcVolumeDatabricksEngineArtifactLocationSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UcVolumeDatabricksEngineArtifactLocationSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateAiModelAuthDetails", @@ -4672,6 +5398,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateAiProviderConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateAiProviderConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateAmazonKinesisConnectionDetails", @@ -4756,6 +5496,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateAzureDataLakeStorageDatabricksEngineArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateAzureDataLakeStorageIcebergStorageDetails", @@ -4845,6 +5599,90 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineParOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineParOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineResourcePrincipalOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineSecretKeyOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateDatabricksEngineUserPrincipalOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateDb2ConnectionDetails", @@ -5251,6 +6089,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateOciObjectStorageDatabricksEngineArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateOciObjectStorageS3ApiIcebergStorageDetails", @@ -5265,6 +6117,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateOciObjectStorageSparkArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateOciObjectStorageSparkArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateOggDeploymentDetails", @@ -5293,6 +6159,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateOracleAiDataPlatformEngineConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateOracleAiDataPlatformEngineConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateOracleConnectionDetails", @@ -5398,6 +6278,104 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkConnectionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkConnectionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkParOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkParOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkResourcePrincipalOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkResourcePrincipalOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkSecretKeyOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkSecretKeyOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkUserPrincipalOciObjectStorageConfigDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateSparkUserPrincipalOciObjectStorageConfigDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateUcVolumeDatabricksEngineArtifactLocationDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.goldengate.model.UpdateUcVolumeDatabricksEngineArtifactLocationDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.goldengate.model.UpdateZeroEtlPipelineDetails", diff --git a/bmc-governancerulescontrolplane/pom.xml b/bmc-governancerulescontrolplane/pom.xml index e4380ed4641..9bbb7cc360e 100644 --- a/bmc-governancerulescontrolplane/pom.xml +++ b/bmc-governancerulescontrolplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-governancerulescontrolplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-healthchecks/pom.xml b/bmc-healthchecks/pom.xml index 27f6b65e41c..7607739c862 100644 --- a/bmc-healthchecks/pom.xml +++ b/bmc-healthchecks/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-healthchecks @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-identity/pom.xml b/bmc-identity/pom.xml index c25443b3b2f..a94732b9e3e 100644 --- a/bmc-identity/pom.xml +++ b/bmc-identity/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-identitydataplane/pom.xml b/bmc-identitydataplane/pom.xml index fd1ab705f19..7d6a7f8d921 100644 --- a/bmc-identitydataplane/pom.xml +++ b/bmc-identitydataplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-identitydataplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-identitydomains/pom.xml b/bmc-identitydomains/pom.xml index 73648e4e56f..d8309b11887 100644 --- a/bmc-identitydomains/pom.xml +++ b/bmc-identitydomains/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-identitydomains @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-integration/pom.xml b/bmc-integration/pom.xml index 24f33136887..cf39550af8d 100644 --- a/bmc-integration/pom.xml +++ b/bmc-integration/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-integration @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-iot/pom.xml b/bmc-iot/pom.xml index 7529df1915f..ac9915c040e 100644 --- a/bmc-iot/pom.xml +++ b/bmc-iot/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-iot @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-jms/pom.xml b/bmc-jms/pom.xml index 5fea13b03b1..3c0a78cc997 100644 --- a/bmc-jms/pom.xml +++ b/bmc-jms/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-jms @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-jmsjavadownloads/pom.xml b/bmc-jmsjavadownloads/pom.xml index 09183d43c77..94ea8e582bd 100644 --- a/bmc-jmsjavadownloads/pom.xml +++ b/bmc-jmsjavadownloads/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-jmsjavadownloads @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-jmsutils/pom.xml b/bmc-jmsutils/pom.xml index 29f53cb6cf0..0b1e2ad0151 100644 --- a/bmc-jmsutils/pom.xml +++ b/bmc-jmsutils/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-jmsutils @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-keymanagement/pom.xml b/bmc-keymanagement/pom.xml index 883984817e3..68f81810c1a 100644 --- a/bmc-keymanagement/pom.xml +++ b/bmc-keymanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-keymanagement @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-licensemanager/pom.xml b/bmc-licensemanager/pom.xml index cbe8bb211ec..3a7ec8be214 100644 --- a/bmc-licensemanager/pom.xml +++ b/bmc-licensemanager/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-licensemanager @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-limits/pom.xml b/bmc-limits/pom.xml index 90427d4dfd7..fa42e065b67 100644 --- a/bmc-limits/pom.xml +++ b/bmc-limits/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-limits @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-limitsincrease/pom.xml b/bmc-limitsincrease/pom.xml index 8d0156f3e93..f0550319d7d 100644 --- a/bmc-limitsincrease/pom.xml +++ b/bmc-limitsincrease/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-limitsincrease @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-loadbalancer/pom.xml b/bmc-loadbalancer/pom.xml index 9e1e4f28cf9..ef948c121bf 100644 --- a/bmc-loadbalancer/pom.xml +++ b/bmc-loadbalancer/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-lockbox/pom.xml b/bmc-lockbox/pom.xml index d1e2c3bca50..20a04711ad7 100644 --- a/bmc-lockbox/pom.xml +++ b/bmc-lockbox/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-lockbox @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-loganalytics/pom.xml b/bmc-loganalytics/pom.xml index d3b0bb3bbba..9fdadbb78b0 100644 --- a/bmc-loganalytics/pom.xml +++ b/bmc-loganalytics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-loganalytics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-logging/pom.xml b/bmc-logging/pom.xml index 777a0300fdb..6fac656dd13 100644 --- a/bmc-logging/pom.xml +++ b/bmc-logging/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-logging @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-loggingingestion/pom.xml b/bmc-loggingingestion/pom.xml index 94ca2be5c07..2389088ab1c 100644 --- a/bmc-loggingingestion/pom.xml +++ b/bmc-loggingingestion/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-loggingingestion @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-loggingsearch/pom.xml b/bmc-loggingsearch/pom.xml index dd3589c0087..eb651cde703 100644 --- a/bmc-loggingsearch/pom.xml +++ b/bmc-loggingsearch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-loggingsearch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-lustrefilestorage/pom.xml b/bmc-lustrefilestorage/pom.xml index 4ec177670c9..fd48b1cb130 100644 --- a/bmc-lustrefilestorage/pom.xml +++ b/bmc-lustrefilestorage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-lustrefilestorage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-managedkafka/pom.xml b/bmc-managedkafka/pom.xml index ec920c66d1e..04cf62ad0cc 100644 --- a/bmc-managedkafka/pom.xml +++ b/bmc-managedkafka/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-managedkafka @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-managementagent/pom.xml b/bmc-managementagent/pom.xml index 040da674604..91412e8b5a4 100644 --- a/bmc-managementagent/pom.xml +++ b/bmc-managementagent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-managementagent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-managementdashboard/pom.xml b/bmc-managementdashboard/pom.xml index 651660424ed..856847dfcac 100644 --- a/bmc-managementdashboard/pom.xml +++ b/bmc-managementdashboard/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-managementdashboard @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-marketplace/pom.xml b/bmc-marketplace/pom.xml index 4e14050cd8f..4a0e1e2b449 100644 --- a/bmc-marketplace/pom.xml +++ b/bmc-marketplace/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-marketplace @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-marketplaceprivateoffer/pom.xml b/bmc-marketplaceprivateoffer/pom.xml index 7857e05c9ce..59c44739476 100644 --- a/bmc-marketplaceprivateoffer/pom.xml +++ b/bmc-marketplaceprivateoffer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-marketplaceprivateoffer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-marketplacepublisher/pom.xml b/bmc-marketplacepublisher/pom.xml index eba798560e7..53ecd8ab0db 100644 --- a/bmc-marketplacepublisher/pom.xml +++ b/bmc-marketplacepublisher/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-marketplacepublisher @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-mediaservices/pom.xml b/bmc-mediaservices/pom.xml index 9b880714d07..4d2d8698523 100644 --- a/bmc-mediaservices/pom.xml +++ b/bmc-mediaservices/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-mediaservices @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-mngdmac/pom.xml b/bmc-mngdmac/pom.xml index 47dc0c12d3c..6878e24b31d 100644 --- a/bmc-mngdmac/pom.xml +++ b/bmc-mngdmac/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-mngdmac @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-modeldeployment/pom.xml b/bmc-modeldeployment/pom.xml index 186ea88bc62..41565d45d0c 100644 --- a/bmc-modeldeployment/pom.xml +++ b/bmc-modeldeployment/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-modeldeployment @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-monitoring/pom.xml b/bmc-monitoring/pom.xml index c66ce8f7e48..48f5251cfb0 100644 --- a/bmc-monitoring/pom.xml +++ b/bmc-monitoring/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-monitoring @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-multicloud/pom.xml b/bmc-multicloud/pom.xml index e6bfe81014a..9ad00210b1c 100644 --- a/bmc-multicloud/pom.xml +++ b/bmc-multicloud/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-multicloud @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-mysql/pom.xml b/bmc-mysql/pom.xml index 24ee5f924aa..6800432b32a 100644 --- a/bmc-mysql/pom.xml +++ b/bmc-mysql/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-mysql @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-networkfirewall/pom.xml b/bmc-networkfirewall/pom.xml index 168947c266b..683ff5bb2ef 100644 --- a/bmc-networkfirewall/pom.xml +++ b/bmc-networkfirewall/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-networkfirewall @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-networkloadbalancer/pom.xml b/bmc-networkloadbalancer/pom.xml index 04c62d9014e..b13a81159f4 100644 --- a/bmc-networkloadbalancer/pom.xml +++ b/bmc-networkloadbalancer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-networkloadbalancer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-nosql/pom.xml b/bmc-nosql/pom.xml index 3a402875e98..4617a8bebd2 100644 --- a/bmc-nosql/pom.xml +++ b/bmc-nosql/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-nosql @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ 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 7dd44f9b7eb..99faf840286 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.98.0 + 3.99.0 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-objectstorage-generated - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-objectstorage-extensions - 3.98.0 + 3.99.0 diff --git a/bmc-objectstorage/bmc-objectstorage-extensions/pom.xml b/bmc-objectstorage/bmc-objectstorage-extensions/pom.xml index 0536a59a2ea..171f6631a98 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.98.0 + 3.99.0 ../pom.xml @@ -25,17 +25,17 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-objectstorage-generated - 3.98.0 + 3.99.0 org.slf4j diff --git a/bmc-objectstorage/bmc-objectstorage-generated/pom.xml b/bmc-objectstorage/bmc-objectstorage-generated/pom.xml index 87bd7709be6..715b6be66e6 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.98.0 + 3.99.0 ../pom.xml @@ -19,7 +19,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 diff --git a/bmc-objectstorage/pom.xml b/bmc-objectstorage/pom.xml index 5b3408eee51..4a2b70a0c87 100644 --- a/bmc-objectstorage/pom.xml +++ b/bmc-objectstorage/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml diff --git a/bmc-oce/pom.xml b/bmc-oce/pom.xml index 47ab90a30bd..e2d792397ec 100644 --- a/bmc-oce/pom.xml +++ b/bmc-oce/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-oce @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ocicontrolcenter/pom.xml b/bmc-ocicontrolcenter/pom.xml index 3e925773834..54405d529c6 100644 --- a/bmc-ocicontrolcenter/pom.xml +++ b/bmc-ocicontrolcenter/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ocicontrolcenter @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ociproductcatalog/pom.xml b/bmc-ociproductcatalog/pom.xml index 505d4ac25e1..3eca15aad07 100644 --- a/bmc-ociproductcatalog/pom.xml +++ b/bmc-ociproductcatalog/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ociproductcatalog @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ocvp/pom.xml b/bmc-ocvp/pom.xml index 5040645d86c..edc7f686696 100644 --- a/bmc-ocvp/pom.xml +++ b/bmc-ocvp/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ocvp @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-oda/pom.xml b/bmc-oda/pom.xml index b5d9981d74c..fccc1f94363 100644 --- a/bmc-oda/pom.xml +++ b/bmc-oda/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-oda @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-onesubscription/pom.xml b/bmc-onesubscription/pom.xml index 04e66616af3..390a3455aba 100644 --- a/bmc-onesubscription/pom.xml +++ b/bmc-onesubscription/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-onesubscription @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingSchedule.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingSchedule.java index bbb0a239731..5c2e455b81f 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingSchedule.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingSchedule.java @@ -65,8 +65,8 @@ public interface BillingSchedule extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This list API returns all billing schedules for given subscription id and for a particular - * Subscribed Service if provided + * This list API returns all billing schedules for a given subscription ID, and for a particular + * subscribed service if provided. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingScheduleAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingScheduleAsync.java index 16173c287db..ea731bfc17a 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingScheduleAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/BillingScheduleAsync.java @@ -60,8 +60,8 @@ public interface BillingScheduleAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This list API returns all billing schedules for given subscription id and for a particular - * Subscribed Service if provided + * This list API returns all billing schedules for a given subscription ID, and for a particular + * subscribed service if provided. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Commitment.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Commitment.java index c489a1352a5..d8a7b964273 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Commitment.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Commitment.java @@ -65,7 +65,7 @@ public interface Commitment extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This API returns the commitment details corresponding to the id provided + * Returns the commitment details corresponding to the provided ID. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation @@ -80,7 +80,7 @@ public interface Commitment extends AutoCloseable { GetCommitmentResponse getCommitment(GetCommitmentRequest request); /** - * This list API returns all commitments for a particular Subscribed Service + * Returns all commitments for a particular subscribed service. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/CommitmentAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/CommitmentAsync.java index 59c3364331f..f4f453441d2 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/CommitmentAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/CommitmentAsync.java @@ -60,7 +60,7 @@ public interface CommitmentAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This API returns the commitment details corresponding to the id provided + * Returns the commitment details corresponding to the provided ID. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. @@ -75,7 +75,7 @@ java.util.concurrent.Future getCommitment( handler); /** - * This list API returns all commitments for a particular Subscribed Service + * Returns all commitments for a particular subscribed service. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsage.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsage.java index 7d576f56913..580ee051add 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsage.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsage.java @@ -65,7 +65,7 @@ public interface ComputedUsage extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This is an API which returns Computed Usage corresponding to the id passed + * Returns computed usage corresponding to the passed ID. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation @@ -81,9 +81,9 @@ public interface ComputedUsage extends AutoCloseable { GetComputedUsageResponse getComputedUsage(GetComputedUsageRequest request); /** - * This is a collection API which returns a list of aggregated computed usage details (there can - * be multiple Parent Products under a given SubID each of which is represented under - * Subscription Service Line # in SPM). + * Collection API that returns a list of aggregated computed usage details (there can be + * multiple parent products under a given SubID, each of which is represented under the + * subscription service line # in SPM). * * @param request The request object containing the details to send * @return A response object containing details about the completed operation @@ -100,7 +100,7 @@ ListAggregatedComputedUsagesResponse listAggregatedComputedUsages( ListAggregatedComputedUsagesRequest request); /** - * This is a collection API which returns a list of Computed Usages for given filters. + * Collection API that returns a list of computed usages for the given filters. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsageAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsageAsync.java index 5c62fda81b5..91e3a3eab2a 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsageAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/ComputedUsageAsync.java @@ -60,7 +60,7 @@ public interface ComputedUsageAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This is an API which returns Computed Usage corresponding to the id passed + * Returns computed usage corresponding to the passed ID. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. @@ -75,9 +75,9 @@ java.util.concurrent.Future getComputedUsage( handler); /** - * This is a collection API which returns a list of aggregated computed usage details (there can - * be multiple Parent Products under a given SubID each of which is represented under - * Subscription Service Line # in SPM). + * Collection API that returns a list of aggregated computed usage details (there can be + * multiple parent products under a given SubID, each of which is represented under the + * subscription service line # in SPM). * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. @@ -94,7 +94,7 @@ java.util.concurrent.Future listAggregated handler); /** - * This is a collection API which returns a list of Computed Usages for given filters. + * Collection API that returns a list of computed usages for the given filters. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummary.java index fca65da9dfd..a2ba27ed871 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummary.java @@ -65,8 +65,7 @@ public interface InvoiceSummary extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This is a collection API which returns a list of Invoiced Computed Usages for given - * Invoiceline id. + * Collection API that returns a list of invoiced computed usages for the given invoice line ID. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation @@ -83,7 +82,7 @@ ListInvoicelineComputedUsagesResponse listInvoicelineComputedUsages( ListInvoicelineComputedUsagesRequest request); /** - * This is a collection API which returns a list of Invoices for given filters. + * Collection API that returns a list of invoices according to the given filters. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummaryAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummaryAsync.java index 7bf7e9388ce..b4097ea4e9e 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummaryAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/InvoiceSummaryAsync.java @@ -60,8 +60,7 @@ public interface InvoiceSummaryAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This is a collection API which returns a list of Invoiced Computed Usages for given - * Invoiceline id. + * Collection API that returns a list of invoiced computed usages for the given invoice line ID. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. @@ -79,7 +78,7 @@ public interface InvoiceSummaryAsync extends AutoCloseable { handler); /** - * This is a collection API which returns a list of Invoices for given filters. + * Collection API that returns a list of invoices according to the given filters. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscription.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscription.java index 1a4507d5acb..48a403ed8ef 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscription.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscription.java @@ -65,7 +65,7 @@ public interface OrganizationSubscription extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * API that returns data for the list of subscription ids returned from Organizations API + * Returns data for the list of subscription IDs returned from the Organizations API. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscriptionAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscriptionAsync.java index e8580681b2d..6225d40ac3d 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscriptionAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/OrganizationSubscriptionAsync.java @@ -60,7 +60,7 @@ public interface OrganizationSubscriptionAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * API that returns data for the list of subscription ids returned from Organizations API + * Returns data for the list of subscription IDs returned from the Organizations API. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Ratecard.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Ratecard.java index c764f05707c..0ac8e9277dd 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Ratecard.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Ratecard.java @@ -65,8 +65,8 @@ public interface Ratecard extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * List API that returns all ratecards for given Subscription Id and Account ID (if provided) - * and for a particular date range + * Returns all rate cards for a given subscription ID and account ID (if provided), and for a + * particular date range. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/RatecardAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/RatecardAsync.java index 721fbff6d2f..eb5c4b7eea0 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/RatecardAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/RatecardAsync.java @@ -60,8 +60,8 @@ public interface RatecardAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * List API that returns all ratecards for given Subscription Id and Account ID (if provided) - * and for a particular date range + * Returns all rate cards for a given subscription ID and account ID (if provided), and for a + * particular date range. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedService.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedService.java index 7defd2d0edc..440fe2d6cfd 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedService.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedService.java @@ -65,7 +65,7 @@ public interface SubscribedService extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This API returns the subscribed service details corresponding to the id provided + * Returns the subscribed service details corresponding to the provided ID. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation @@ -81,7 +81,7 @@ public interface SubscribedService extends AutoCloseable { GetSubscribedServiceResponse getSubscribedService(GetSubscribedServiceRequest request); /** - * This list API returns all subscribed services for given Subscription ID + * Returns all subscribed services for a given Subscription ID. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedServiceAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedServiceAsync.java index 012d850a1f8..5aa66c11d5c 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedServiceAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscribedServiceAsync.java @@ -60,7 +60,7 @@ public interface SubscribedServiceAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This API returns the subscribed service details corresponding to the id provided + * Returns the subscribed service details corresponding to the provided ID. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. @@ -76,7 +76,7 @@ java.util.concurrent.Future getSubscribedService( handler); /** - * This list API returns all subscribed services for given Subscription ID + * Returns all subscribed services for a given Subscription ID. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Subscription.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Subscription.java index c3f01b4022b..f0fd24ba38f 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Subscription.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/Subscription.java @@ -65,11 +65,27 @@ public interface Subscription extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This list API returns all subscriptions for a given plan number or subscription id or buyer - * email and provides additional parameters to include ratecard and commitment details. This API - * expects exactly one of the above mentioned parameters as input. If more than one parameters - * are provided the API will throw a 400 - invalid parameters exception and if no parameters are - * provided it will throw a 400 - missing parameter exception + * Returns the commitment summary for a subscription. + * + * @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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 + * GetSubscriptionDetails API. + */ + GetSubscriptionDetailsResponse getSubscriptionDetails(GetSubscriptionDetailsRequest request); + + /** + * Returns all subscriptions for a given plan number, subscription ID, or buyer email, and + * provides additional parameters, to include rate card and commitment details. Exactly one of + * the these parameters is expected as input. If more than one parameter is provided, a 400 - + * invalid parameters exception is thrown, and if no parameters are provided, a 400 - missing + * parameter exception is thrown. * * @param request The request object containing the details to send * @return A response object containing details about the completed operation @@ -84,6 +100,24 @@ public interface Subscription extends AutoCloseable { */ ListSubscriptionsResponse listSubscriptions(ListSubscriptionsRequest request); + /** + * Returns revenue invoice consumption details for authorization orders that draw down from the + * requested subscription. It includes authorization-order subscription IDs but excludes the + * requested subscription ID itself. + * + * @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 will not retry by default, users + * can also use RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION provided by the SDK to + * enable retries for it. 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 ListUsageLedgers + * API. + */ + ListUsageLedgersResponse listUsageLedgers(ListUsageLedgersRequest 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} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsync.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsync.java index 5b608ffdce4..f5a3e556ab1 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsync.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsync.java @@ -60,11 +60,27 @@ public interface SubscriptionAsync extends AutoCloseable { void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); /** - * This list API returns all subscriptions for a given plan number or subscription id or buyer - * email and provides additional parameters to include ratecard and commitment details. This API - * expects exactly one of the above mentioned parameters as input. If more than one parameters - * are provided the API will throw a 400 - invalid parameters exception and if no parameters are - * provided it will throw a 400 - missing parameter exception + * Returns the commitment summary for a subscription. + * + * @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 getSubscriptionDetails( + GetSubscriptionDetailsRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetSubscriptionDetailsRequest, GetSubscriptionDetailsResponse> + handler); + + /** + * Returns all subscriptions for a given plan number, subscription ID, or buyer email, and + * provides additional parameters, to include rate card and commitment details. Exactly one of + * the these parameters is expected as input. If more than one parameter is provided, a 400 - + * invalid parameters exception is thrown, and if no parameters are provided, a 400 - missing + * parameter exception is thrown. * * @param request The request object containing the details to send * @param handler The request handler to invoke upon completion, may be null. @@ -78,4 +94,21 @@ java.util.concurrent.Future listSubscriptions( com.oracle.bmc.responses.AsyncHandler< ListSubscriptionsRequest, ListSubscriptionsResponse> handler); + + /** + * Returns revenue invoice consumption details for authorization orders that draw down from the + * requested subscription. It includes authorization-order subscription IDs but excludes the + * requested subscription ID itself. + * + * @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 listUsageLedgers( + ListUsageLedgersRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); } diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsyncClient.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsyncClient.java index 3b8ec2fd1b8..1fd1e5582fa 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsyncClient.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionAsyncClient.java @@ -95,6 +95,35 @@ public void setRegion(String regionId) { super.setRegion(regionId); } + @Override + public java.util.concurrent.Future getSubscriptionDetails( + GetSubscriptionDetailsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetSubscriptionDetailsRequest, GetSubscriptionDetailsResponse> + handler) { + Objects.requireNonNull(request.getSubscriptionId(), "subscriptionId is required"); + + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + return clientCall(request, GetSubscriptionDetailsResponse::builder) + .logger(LOG, "getSubscriptionDetails") + .serviceDetails("Subscription", "GetSubscriptionDetails", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSubscriptionDetailsRequest::builder) + .basePath("/20190111") + .appendPathParam("subscriptionDetails") + .appendQueryParam("subscriptionId", request.getSubscriptionId()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.onesubscription.model.SubscriptionDetails.class, + GetSubscriptionDetailsResponse.Builder::subscriptionDetails) + .handleResponseHeaderString( + "opc-request-id", GetSubscriptionDetailsResponse.Builder::opcRequestId) + .callAsync(handler); + } + @Override public java.util.concurrent.Future listSubscriptions( ListSubscriptionsRequest request, @@ -131,6 +160,46 @@ public java.util.concurrent.Future listSubscriptions( .callAsync(handler); } + @Override + public java.util.concurrent.Future listUsageLedgers( + ListUsageLedgersRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListUsageLedgersRequest, ListUsageLedgersResponse> + handler) { + + Validate.notBlank(request.getSubscriptionId(), "subscriptionId must not be blank"); + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + return clientCall(request, ListUsageLedgersResponse::builder) + .logger(LOG, "listUsageLedgers") + .serviceDetails("Subscription", "ListUsageLedgers", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListUsageLedgersRequest::builder) + .basePath("/20190111") + .appendPathParam("subscriptionDetails") + .appendPathParam(request.getSubscriptionId()) + .appendPathParam("usageLedger") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendQueryParam( + "timeConsumptionGreaterThanOrEqualTo", + request.getTimeConsumptionGreaterThanOrEqualTo()) + .appendQueryParam("timeConsumptionLessThan", request.getTimeConsumptionLessThan()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBodyList( + com.oracle.bmc.onesubscription.model.UsageLedgerSummary.class, + ListUsageLedgersResponse.Builder::items) + .handleResponseHeaderString( + "opc-next-page", ListUsageLedgersResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListUsageLedgersResponse.Builder::opcRequestId) + .callAsync(handler); + } + /** * Create a new client instance. * diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionClient.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionClient.java index df99e6abd05..c184f7c6179 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionClient.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionClient.java @@ -89,6 +89,32 @@ public void setRegion(String regionId) { super.setRegion(regionId); } + @Override + public GetSubscriptionDetailsResponse getSubscriptionDetails( + GetSubscriptionDetailsRequest request) { + Objects.requireNonNull(request.getSubscriptionId(), "subscriptionId is required"); + + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + return clientCall(request, GetSubscriptionDetailsResponse::builder) + .logger(LOG, "getSubscriptionDetails") + .serviceDetails("Subscription", "GetSubscriptionDetails", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetSubscriptionDetailsRequest::builder) + .basePath("/20190111") + .appendPathParam("subscriptionDetails") + .appendQueryParam("subscriptionId", request.getSubscriptionId()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.onesubscription.model.SubscriptionDetails.class, + GetSubscriptionDetailsResponse.Builder::subscriptionDetails) + .handleResponseHeaderString( + "opc-request-id", GetSubscriptionDetailsResponse.Builder::opcRequestId) + .callSync(); + } + @Override public ListSubscriptionsResponse listSubscriptions(ListSubscriptionsRequest request) { Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); @@ -121,6 +147,42 @@ public ListSubscriptionsResponse listSubscriptions(ListSubscriptionsRequest requ .callSync(); } + @Override + public ListUsageLedgersResponse listUsageLedgers(ListUsageLedgersRequest request) { + + Validate.notBlank(request.getSubscriptionId(), "subscriptionId must not be blank"); + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + return clientCall(request, ListUsageLedgersResponse::builder) + .logger(LOG, "listUsageLedgers") + .serviceDetails("Subscription", "ListUsageLedgers", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListUsageLedgersRequest::builder) + .basePath("/20190111") + .appendPathParam("subscriptionDetails") + .appendPathParam(request.getSubscriptionId()) + .appendPathParam("usageLedger") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendQueryParam( + "timeConsumptionGreaterThanOrEqualTo", + request.getTimeConsumptionGreaterThanOrEqualTo()) + .appendQueryParam("timeConsumptionLessThan", request.getTimeConsumptionLessThan()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBodyList( + com.oracle.bmc.onesubscription.model.UsageLedgerSummary.class, + ListUsageLedgersResponse.Builder::items) + .handleResponseHeaderString( + "opc-next-page", ListUsageLedgersResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListUsageLedgersResponse.Builder::opcRequestId) + .callSync(); + } + @Override public SubscriptionPaginators getPaginators() { return paginators; diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionPaginators.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionPaginators.java index c582b041bc8..885c1b226f6 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionPaginators.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/SubscriptionPaginators.java @@ -160,4 +160,120 @@ public ListSubscriptionsResponse apply(ListSubscriptionsRequest request) { } }); } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listUsageLedgers 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 listUsageLedgersResponseIterator( + final ListUsageLedgersRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListUsageLedgersRequest.Builder, ListUsageLedgersRequest, ListUsageLedgersResponse>( + new java.util.function.Supplier() { + @Override + public ListUsageLedgersRequest.Builder get() { + return ListUsageLedgersRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListUsageLedgersResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListUsageLedgersRequest.Builder>, + ListUsageLedgersRequest>() { + @Override + public ListUsageLedgersRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListUsageLedgersRequest.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< + ListUsageLedgersRequest, ListUsageLedgersResponse>() { + @Override + public ListUsageLedgersResponse apply(ListUsageLedgersRequest request) { + return client.listUsageLedgers(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.onesubscription.model.UsageLedgerSummary} objects contained in responses from + * the listUsageLedgers 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.onesubscription.model.UsageLedgerSummary} objects contained in responses + * received from the service. + */ + public Iterable + listUsageLedgersRecordIterator(final ListUsageLedgersRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListUsageLedgersRequest.Builder, + ListUsageLedgersRequest, + ListUsageLedgersResponse, + com.oracle.bmc.onesubscription.model.UsageLedgerSummary>( + new java.util.function.Supplier() { + @Override + public ListUsageLedgersRequest.Builder get() { + return ListUsageLedgersRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListUsageLedgersResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListUsageLedgersRequest.Builder>, + ListUsageLedgersRequest>() { + @Override + public ListUsageLedgersRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListUsageLedgersRequest.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< + ListUsageLedgersRequest, ListUsageLedgersResponse>() { + @Override + public ListUsageLedgersResponse apply(ListUsageLedgersRequest request) { + return client.listUsageLedgers(request); + } + }, + new java.util.function.Function< + ListUsageLedgersResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListUsageLedgersResponse response) { + return response.getItems(); + } + }); + } } diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AggregatedComputedUsageSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AggregatedComputedUsageSummary.java index 4b0cf499c8c..d46fc7ab76d 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AggregatedComputedUsageSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AggregatedComputedUsageSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed Service Contract details
+ * Subscribed service contract details.
* 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 @@ -62,15 +62,15 @@ public AggregatedComputedUsageSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { /** - * Subscription Id is an identifier associated to the service used for filter the Computed - * Usage in SPM + * Subscription ID is an identifier associated with the service used for filtering the + * computed usage in SPM (Subscription Plan Management). */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") private String subscriptionId; /** - * Subscription Id is an identifier associated to the service used for filter the Computed - * Usage in SPM + * Subscription ID is an identifier associated with the service used for filtering the + * computed usage in SPM (Subscription Plan Management). * * @param subscriptionId the value to set * @return this builder @@ -80,12 +80,12 @@ public Builder subscriptionId(String subscriptionId) { this.__explicitlySet__.add("subscriptionId"); return this; } - /** Subscribed service line parent id */ + /** Subscribed service line parent ID. */ @com.fasterxml.jackson.annotation.JsonProperty("parentSubscribedServiceId") private String parentSubscribedServiceId; /** - * Subscribed service line parent id + * Subscribed service line parent ID. * * @param parentSubscribedServiceId the value to set * @return this builder @@ -149,12 +149,12 @@ public Builder planNumber(String planNumber) { this.__explicitlySet__.add("planNumber"); return this; } - /** Currency code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") private String currencyCode; /** - * Currency code + * Currency code. * * @param currencyCode the value to set * @return this builder @@ -164,12 +164,12 @@ public Builder currencyCode(String currencyCode) { this.__explicitlySet__.add("currencyCode"); return this; } - /** Inernal SPM Ratecard Id at line level */ + /** Inernal SPM rate card ID at line level. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardId") private String rateCardId; /** - * Inernal SPM Ratecard Id at line level + * Inernal SPM rate card ID at line level. * * @param rateCardId the value to set * @return this builder @@ -179,12 +179,12 @@ public Builder rateCardId(String rateCardId) { this.__explicitlySet__.add("rateCardId"); return this; } - /** Subscribed services pricing model */ + /** Subscribed services pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private PricingModel pricingModel; /** - * Subscribed services pricing model + * Subscribed services pricing model. * * @param pricingModel the value to set * @return this builder @@ -279,15 +279,15 @@ public Builder toBuilder() { } /** - * Subscription Id is an identifier associated to the service used for filter the Computed Usage - * in SPM + * Subscription ID is an identifier associated with the service used for filtering the computed + * usage in SPM (Subscription Plan Management). */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") private final String subscriptionId; /** - * Subscription Id is an identifier associated to the service used for filter the Computed Usage - * in SPM + * Subscription ID is an identifier associated with the service used for filtering the computed + * usage in SPM (Subscription Plan Management). * * @return the value */ @@ -295,12 +295,12 @@ public String getSubscriptionId() { return subscriptionId; } - /** Subscribed service line parent id */ + /** Subscribed service line parent ID. */ @com.fasterxml.jackson.annotation.JsonProperty("parentSubscribedServiceId") private final String parentSubscribedServiceId; /** - * Subscribed service line parent id + * Subscribed service line parent ID. * * @return the value */ @@ -354,12 +354,12 @@ public String getPlanNumber() { return planNumber; } - /** Currency code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") private final String currencyCode; /** - * Currency code + * Currency code. * * @return the value */ @@ -367,12 +367,12 @@ public String getCurrencyCode() { return currencyCode; } - /** Inernal SPM Ratecard Id at line level */ + /** Inernal SPM rate card ID at line level. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardId") private final String rateCardId; /** - * Inernal SPM Ratecard Id at line level + * Inernal SPM rate card ID at line level. * * @return the value */ @@ -380,7 +380,7 @@ public String getRateCardId() { return rateCardId; } - /** Subscribed services pricing model */ + /** Subscribed services pricing model. */ public enum PricingModel implements com.oracle.bmc.http.internal.BmcEnum { PayAsYouGo("PAY_AS_YOU_GO"), Monthly("MONTHLY"), @@ -429,12 +429,12 @@ public static PricingModel create(String key) { return UnknownEnumValue; } }; - /** Subscribed services pricing model */ + /** Subscribed services pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private final PricingModel pricingModel; /** - * Subscribed services pricing model + * Subscribed services pricing model. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AssociatedSubscriptions.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AssociatedSubscriptions.java new file mode 100644 index 00000000000..1071c6a015b --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/AssociatedSubscriptions.java @@ -0,0 +1,261 @@ +/** + * 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.onesubscription.model; + +/** + * Associated Subscriptions
+ * 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: 20190111") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AssociatedSubscriptions.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AssociatedSubscriptions + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "subscriptionNumber", + "timeValidFrom", + "timeValidTo", + "lifecycleState" + }) + public AssociatedSubscriptions( + String subscriptionNumber, + java.util.Date timeValidFrom, + java.util.Date timeValidTo, + String lifecycleState) { + super(); + this.subscriptionNumber = subscriptionNumber; + this.timeValidFrom = timeValidFrom; + this.timeValidTo = timeValidTo; + this.lifecycleState = lifecycleState; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Subscription Number */ + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionNumber") + private String subscriptionNumber; + + /** + * Subscription Number + * + * @param subscriptionNumber the value to set + * @return this builder + */ + public Builder subscriptionNumber(String subscriptionNumber) { + this.subscriptionNumber = subscriptionNumber; + this.__explicitlySet__.add("subscriptionNumber"); + return this; + } + /** Represents the valid from date of the subscription */ + @com.fasterxml.jackson.annotation.JsonProperty("timeValidFrom") + private java.util.Date timeValidFrom; + + /** + * Represents the valid from date of the subscription + * + * @param timeValidFrom the value to set + * @return this builder + */ + public Builder timeValidFrom(java.util.Date timeValidFrom) { + this.timeValidFrom = timeValidFrom; + this.__explicitlySet__.add("timeValidFrom"); + return this; + } + /** Represents the valid to date of the subscription */ + @com.fasterxml.jackson.annotation.JsonProperty("timeValidTo") + private java.util.Date timeValidTo; + + /** + * Represents the valid to date of the subscription + * + * @param timeValidTo the value to set + * @return this builder + */ + public Builder timeValidTo(java.util.Date timeValidTo) { + this.timeValidTo = timeValidTo; + this.__explicitlySet__.add("timeValidTo"); + return this; + } + /** Lifecycle status of the subscription */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private String lifecycleState; + + /** + * Lifecycle status of the subscription + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(String lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AssociatedSubscriptions build() { + AssociatedSubscriptions model = + new AssociatedSubscriptions( + this.subscriptionNumber, + this.timeValidFrom, + this.timeValidTo, + this.lifecycleState); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AssociatedSubscriptions model) { + if (model.wasPropertyExplicitlySet("subscriptionNumber")) { + this.subscriptionNumber(model.getSubscriptionNumber()); + } + if (model.wasPropertyExplicitlySet("timeValidFrom")) { + this.timeValidFrom(model.getTimeValidFrom()); + } + if (model.wasPropertyExplicitlySet("timeValidTo")) { + this.timeValidTo(model.getTimeValidTo()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Subscription Number */ + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionNumber") + private final String subscriptionNumber; + + /** + * Subscription Number + * + * @return the value + */ + public String getSubscriptionNumber() { + return subscriptionNumber; + } + + /** Represents the valid from date of the subscription */ + @com.fasterxml.jackson.annotation.JsonProperty("timeValidFrom") + private final java.util.Date timeValidFrom; + + /** + * Represents the valid from date of the subscription + * + * @return the value + */ + public java.util.Date getTimeValidFrom() { + return timeValidFrom; + } + + /** Represents the valid to date of the subscription */ + @com.fasterxml.jackson.annotation.JsonProperty("timeValidTo") + private final java.util.Date timeValidTo; + + /** + * Represents the valid to date of the subscription + * + * @return the value + */ + public java.util.Date getTimeValidTo() { + return timeValidTo; + } + + /** Lifecycle status of the subscription */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final String lifecycleState; + + /** + * Lifecycle status of the subscription + * + * @return the value + */ + public String getLifecycleState() { + return lifecycleState; + } + + @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("AssociatedSubscriptions("); + sb.append("super=").append(super.toString()); + sb.append("subscriptionNumber=").append(String.valueOf(this.subscriptionNumber)); + sb.append(", timeValidFrom=").append(String.valueOf(this.timeValidFrom)); + sb.append(", timeValidTo=").append(String.valueOf(this.timeValidTo)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AssociatedSubscriptions)) { + return false; + } + + AssociatedSubscriptions other = (AssociatedSubscriptions) o; + return java.util.Objects.equals(this.subscriptionNumber, other.subscriptionNumber) + && java.util.Objects.equals(this.timeValidFrom, other.timeValidFrom) + && java.util.Objects.equals(this.timeValidTo, other.timeValidTo) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.subscriptionNumber == null + ? 43 + : this.subscriptionNumber.hashCode()); + result = + (result * PRIME) + + (this.timeValidFrom == null ? 43 : this.timeValidFrom.hashCode()); + result = (result * PRIME) + (this.timeValidTo == null ? 43 : this.timeValidTo.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleProduct.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleProduct.java index 66c0e5e5784..99618307e53 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleProduct.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleProduct.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Product description
+ * Product description.
* 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 @@ -32,12 +32,12 @@ public BillingScheduleProduct(String partNumber, String name) { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Indicates the associated AR Invoice Number */ + /** Indicates the associated accounts receivable invoice number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private String partNumber; /** - * Indicates the associated AR Invoice Number + * Indicates the associated accounts receivable invoice number. * * @param partNumber the value to set * @return this builder @@ -47,12 +47,12 @@ public Builder partNumber(String partNumber) { this.__explicitlySet__.add("partNumber"); return this; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Product name + * Product name. * * @param name the value to set * @return this builder @@ -95,12 +95,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Indicates the associated AR Invoice Number */ + /** Indicates the associated accounts receivable invoice number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private final String partNumber; /** - * Indicates the associated AR Invoice Number + * Indicates the associated accounts receivable invoice number. * * @return the value */ @@ -108,12 +108,12 @@ public String getPartNumber() { return partNumber; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Product name + * Product name. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleSummary.java index 76c26b8b4f7..b3cdfcd009e 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/BillingScheduleSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Billing schedule details related to Subscription Id
+ * Billing schedule details related to subscription ID.
* 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 @@ -70,12 +70,12 @@ public BillingScheduleSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @param subscribedServiceId the value to set * @return this builder @@ -85,12 +85,12 @@ public Builder subscribedServiceId(String subscribedServiceId) { this.__explicitlySet__.add("subscribedServiceId"); return this; } - /** Billing schedule start date */ + /** Billing schedule start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Billing schedule start date + * Billing schedule start date. * * @param timeStart the value to set * @return this builder @@ -100,12 +100,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Billing schedule end date */ + /** Billing schedule end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Billing schedule end date + * Billing schedule end date. * * @param timeEnd the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Billing schedule invoicing date */ + /** Billing schedule invoicing date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeInvoicing") private java.util.Date timeInvoicing; /** - * Billing schedule invoicing date + * Billing schedule invoicing date. * * @param timeInvoicing the value to set * @return this builder @@ -130,12 +130,12 @@ public Builder timeInvoicing(java.util.Date timeInvoicing) { this.__explicitlySet__.add("timeInvoicing"); return this; } - /** Billing schedule invoice status */ + /** Billing schedule invoice status. */ @com.fasterxml.jackson.annotation.JsonProperty("invoiceStatus") private InvoiceStatus invoiceStatus; /** - * Billing schedule invoice status + * Billing schedule invoice status. * * @param invoiceStatus the value to set * @return this builder @@ -145,12 +145,12 @@ public Builder invoiceStatus(InvoiceStatus invoiceStatus) { this.__explicitlySet__.add("invoiceStatus"); return this; } - /** Billing schedule quantity */ + /** Billing schedule quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Billing schedule quantity + * Billing schedule quantity. * * @param quantity the value to set * @return this builder @@ -160,12 +160,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Billing schedule net unit price */ + /** Billing schedule net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Billing schedule net unit price + * Billing schedule net unit price. * * @param netUnitPrice the value to set * @return this builder @@ -175,12 +175,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Billing schedule line net amount */ + /** Billing schedule line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("amount") private String amount; /** - * Billing schedule line net amount + * Billing schedule line net amount. * * @param amount the value to set * @return this builder @@ -190,12 +190,12 @@ public Builder amount(String amount) { this.__explicitlySet__.add("amount"); return this; } - /** Billing frequency */ + /** Billing frequency. */ @com.fasterxml.jackson.annotation.JsonProperty("billingFrequency") private String billingFrequency; /** - * Billing frequency + * Billing frequency. * * @param billingFrequency the value to set * @return this builder @@ -205,12 +205,12 @@ public Builder billingFrequency(String billingFrequency) { this.__explicitlySet__.add("billingFrequency"); return this; } - /** Indicates the associated AR Invoice Number */ + /** Indicates the associated accounts receivable invoice number. */ @com.fasterxml.jackson.annotation.JsonProperty("arInvoiceNumber") private String arInvoiceNumber; /** - * Indicates the associated AR Invoice Number + * Indicates the associated accounts receivable invoice number. * * @param arInvoiceNumber the value to set * @return this builder @@ -221,13 +221,15 @@ public Builder arInvoiceNumber(String arInvoiceNumber) { return this; } /** - * Indicates the associated AR Customer transaction id a unique identifier existing on AR. + * Indicates the associated accounts receivable customer transaction ID, which is a unique + * identifier existing on the accounts receivable. */ @com.fasterxml.jackson.annotation.JsonProperty("arCustomerTransactionId") private String arCustomerTransactionId; /** - * Indicates the associated AR Customer transaction id a unique identifier existing on AR. + * Indicates the associated accounts receivable customer transaction ID, which is a unique + * identifier existing on the accounts receivable. * * @param arCustomerTransactionId the value to set * @return this builder @@ -237,12 +239,12 @@ public Builder arCustomerTransactionId(String arCustomerTransactionId) { this.__explicitlySet__.add("arCustomerTransactionId"); return this; } - /** Order number associated with the Subscribed Service */ + /** Order number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private String orderNumber; /** - * Order number associated with the Subscribed Service + * Order number associated with the subscribed service. * * @param orderNumber the value to set * @return this builder @@ -341,12 +343,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private final String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @return the value */ @@ -354,12 +356,12 @@ public String getSubscribedServiceId() { return subscribedServiceId; } - /** Billing schedule start date */ + /** Billing schedule start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Billing schedule start date + * Billing schedule start date. * * @return the value */ @@ -367,12 +369,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Billing schedule end date */ + /** Billing schedule end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Billing schedule end date + * Billing schedule end date. * * @return the value */ @@ -380,12 +382,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Billing schedule invoicing date */ + /** Billing schedule invoicing date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeInvoicing") private final java.util.Date timeInvoicing; /** - * Billing schedule invoicing date + * Billing schedule invoicing date. * * @return the value */ @@ -393,7 +395,7 @@ public java.util.Date getTimeInvoicing() { return timeInvoicing; } - /** Billing schedule invoice status */ + /** Billing schedule invoice status. */ public enum InvoiceStatus implements com.oracle.bmc.http.internal.BmcEnum { Invoiced("INVOICED"), NotInvoiced("NOT_INVOICED"), @@ -439,12 +441,12 @@ public static InvoiceStatus create(String key) { return UnknownEnumValue; } }; - /** Billing schedule invoice status */ + /** Billing schedule invoice status. */ @com.fasterxml.jackson.annotation.JsonProperty("invoiceStatus") private final InvoiceStatus invoiceStatus; /** - * Billing schedule invoice status + * Billing schedule invoice status. * * @return the value */ @@ -452,12 +454,12 @@ public InvoiceStatus getInvoiceStatus() { return invoiceStatus; } - /** Billing schedule quantity */ + /** Billing schedule quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Billing schedule quantity + * Billing schedule quantity. * * @return the value */ @@ -465,12 +467,12 @@ public String getQuantity() { return quantity; } - /** Billing schedule net unit price */ + /** Billing schedule net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Billing schedule net unit price + * Billing schedule net unit price. * * @return the value */ @@ -478,12 +480,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Billing schedule line net amount */ + /** Billing schedule line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("amount") private final String amount; /** - * Billing schedule line net amount + * Billing schedule line net amount. * * @return the value */ @@ -491,12 +493,12 @@ public String getAmount() { return amount; } - /** Billing frequency */ + /** Billing frequency. */ @com.fasterxml.jackson.annotation.JsonProperty("billingFrequency") private final String billingFrequency; /** - * Billing frequency + * Billing frequency. * * @return the value */ @@ -504,12 +506,12 @@ public String getBillingFrequency() { return billingFrequency; } - /** Indicates the associated AR Invoice Number */ + /** Indicates the associated accounts receivable invoice number. */ @com.fasterxml.jackson.annotation.JsonProperty("arInvoiceNumber") private final String arInvoiceNumber; /** - * Indicates the associated AR Invoice Number + * Indicates the associated accounts receivable invoice number. * * @return the value */ @@ -517,12 +519,16 @@ public String getArInvoiceNumber() { return arInvoiceNumber; } - /** Indicates the associated AR Customer transaction id a unique identifier existing on AR. */ + /** + * Indicates the associated accounts receivable customer transaction ID, which is a unique + * identifier existing on the accounts receivable. + */ @com.fasterxml.jackson.annotation.JsonProperty("arCustomerTransactionId") private final String arCustomerTransactionId; /** - * Indicates the associated AR Customer transaction id a unique identifier existing on AR. + * Indicates the associated accounts receivable customer transaction ID, which is a unique + * identifier existing on the accounts receivable. * * @return the value */ @@ -530,12 +536,12 @@ public String getArCustomerTransactionId() { return arCustomerTransactionId; } - /** Order number associated with the Subscribed Service */ + /** Order number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private final String orderNumber; /** - * Order number associated with the Subscribed Service + * Order number associated with the subscribed service. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/Commitment.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/Commitment.java index 3cb630899d2..1aa4c79bf08 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/Commitment.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/Commitment.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed Service commitment summary
+ * Subscribed service commitment summary.
* 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 @@ -53,12 +53,12 @@ public Commitment( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Commitment ID */ + /** SPM (Subscription Plan Management) internal commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM internal Commitment ID + * SPM (Subscription Plan Management) internal commitment ID. * * @param id the value to set * @return this builder @@ -68,12 +68,12 @@ public Builder id(String id) { this.__explicitlySet__.add("id"); return this; } - /** SPM internal Subscribed Service ID */ + /** SPM internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM internal subscribed service ID. * * @param subscribedServiceId the value to set * @return this builder @@ -83,12 +83,12 @@ public Builder subscribedServiceId(String subscribedServiceId) { this.__explicitlySet__.add("subscribedServiceId"); return this; } - /** Commitment start date */ + /** Commitment start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Commitment start date + * Commitment start date. * * @param timeStart the value to set * @return this builder @@ -98,12 +98,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Commitment end date */ + /** Commitment end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Commitment end date + * Commitment end date. * * @param timeEnd the value to set * @return this builder @@ -113,12 +113,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Commitment quantity */ + /** Commitment quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Commitment quantity + * Commitment quantity. * * @param quantity the value to set * @return this builder @@ -128,12 +128,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Commitment used amount */ + /** Commitment used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private String usedAmount; /** - * Commitment used amount + * Commitment used amount. * * @param usedAmount the value to set * @return this builder @@ -143,12 +143,12 @@ public Builder usedAmount(String usedAmount) { this.__explicitlySet__.add("usedAmount"); return this; } - /** Commitment available amount */ + /** Commitment available amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private String availableAmount; /** - * Commitment available amount + * Commitment available amount. * * @param availableAmount the value to set * @return this builder @@ -158,12 +158,12 @@ public Builder availableAmount(String availableAmount) { this.__explicitlySet__.add("availableAmount"); return this; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @param fundedAllocationValue the value to set * @return this builder @@ -233,12 +233,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Commitment ID */ + /** SPM (Subscription Plan Management) internal commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM internal Commitment ID + * SPM (Subscription Plan Management) internal commitment ID. * * @return the value */ @@ -246,12 +246,12 @@ public String getId() { return id; } - /** SPM internal Subscribed Service ID */ + /** SPM internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private final String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM internal subscribed service ID. * * @return the value */ @@ -259,12 +259,12 @@ public String getSubscribedServiceId() { return subscribedServiceId; } - /** Commitment start date */ + /** Commitment start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Commitment start date + * Commitment start date. * * @return the value */ @@ -272,12 +272,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Commitment end date */ + /** Commitment end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Commitment end date + * Commitment end date. * * @return the value */ @@ -285,12 +285,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Commitment quantity */ + /** Commitment quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Commitment quantity + * Commitment quantity. * * @return the value */ @@ -298,12 +298,12 @@ public String getQuantity() { return quantity; } - /** Commitment used amount */ + /** Commitment used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private final String usedAmount; /** - * Commitment used amount + * Commitment used amount. * * @return the value */ @@ -311,12 +311,12 @@ public String getUsedAmount() { return usedAmount; } - /** Commitment available amount */ + /** Commitment available amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private final String availableAmount; /** - * Commitment available amount + * Commitment available amount. * * @return the value */ @@ -324,12 +324,12 @@ public String getAvailableAmount() { return availableAmount; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private final String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentPeriod.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentPeriod.java new file mode 100644 index 00000000000..4a8e1050cf3 --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentPeriod.java @@ -0,0 +1,348 @@ +/** + * 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.onesubscription.model; + +/** + * Commitment period for the subscription.
+ * 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: 20190111") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = CommitmentPeriod.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CommitmentPeriod + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "commitmentPeriod", + "timeCommitmentPeriodStart", + "timeCommitmentPeriodEnd", + "amountCommitment", + "amountConsumed", + "amountAvailable" + }) + public CommitmentPeriod( + String commitmentPeriod, + java.util.Date timeCommitmentPeriodStart, + java.util.Date timeCommitmentPeriodEnd, + Double amountCommitment, + Double amountConsumed, + Double amountAvailable) { + super(); + this.commitmentPeriod = commitmentPeriod; + this.timeCommitmentPeriodStart = timeCommitmentPeriodStart; + this.timeCommitmentPeriodEnd = timeCommitmentPeriodEnd; + this.amountCommitment = amountCommitment; + this.amountConsumed = amountConsumed; + this.amountAvailable = amountAvailable; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Identifier for the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("commitmentPeriod") + private String commitmentPeriod; + + /** + * Identifier for the commitment period. + * + * @param commitmentPeriod the value to set + * @return this builder + */ + public Builder commitmentPeriod(String commitmentPeriod) { + this.commitmentPeriod = commitmentPeriod; + this.__explicitlySet__.add("commitmentPeriod"); + return this; + } + /** Start date and time of the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentPeriodStart") + private java.util.Date timeCommitmentPeriodStart; + + /** + * Start date and time of the commitment period. + * + * @param timeCommitmentPeriodStart the value to set + * @return this builder + */ + public Builder timeCommitmentPeriodStart(java.util.Date timeCommitmentPeriodStart) { + this.timeCommitmentPeriodStart = timeCommitmentPeriodStart; + this.__explicitlySet__.add("timeCommitmentPeriodStart"); + return this; + } + /** End date and time of the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentPeriodEnd") + private java.util.Date timeCommitmentPeriodEnd; + + /** + * End date and time of the commitment period. + * + * @param timeCommitmentPeriodEnd the value to set + * @return this builder + */ + public Builder timeCommitmentPeriodEnd(java.util.Date timeCommitmentPeriodEnd) { + this.timeCommitmentPeriodEnd = timeCommitmentPeriodEnd; + this.__explicitlySet__.add("timeCommitmentPeriodEnd"); + return this; + } + /** Total committed amount for the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountCommitment") + private Double amountCommitment; + + /** + * Total committed amount for the commitment period. + * + * @param amountCommitment the value to set + * @return this builder + */ + public Builder amountCommitment(Double amountCommitment) { + this.amountCommitment = amountCommitment; + this.__explicitlySet__.add("amountCommitment"); + return this; + } + /** Amount consumed during the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountConsumed") + private Double amountConsumed; + + /** + * Amount consumed during the commitment period. + * + * @param amountConsumed the value to set + * @return this builder + */ + public Builder amountConsumed(Double amountConsumed) { + this.amountConsumed = amountConsumed; + this.__explicitlySet__.add("amountConsumed"); + return this; + } + /** Amount remaining and available for the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAvailable") + private Double amountAvailable; + + /** + * Amount remaining and available for the commitment period. + * + * @param amountAvailable the value to set + * @return this builder + */ + public Builder amountAvailable(Double amountAvailable) { + this.amountAvailable = amountAvailable; + this.__explicitlySet__.add("amountAvailable"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CommitmentPeriod build() { + CommitmentPeriod model = + new CommitmentPeriod( + this.commitmentPeriod, + this.timeCommitmentPeriodStart, + this.timeCommitmentPeriodEnd, + this.amountCommitment, + this.amountConsumed, + this.amountAvailable); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CommitmentPeriod model) { + if (model.wasPropertyExplicitlySet("commitmentPeriod")) { + this.commitmentPeriod(model.getCommitmentPeriod()); + } + if (model.wasPropertyExplicitlySet("timeCommitmentPeriodStart")) { + this.timeCommitmentPeriodStart(model.getTimeCommitmentPeriodStart()); + } + if (model.wasPropertyExplicitlySet("timeCommitmentPeriodEnd")) { + this.timeCommitmentPeriodEnd(model.getTimeCommitmentPeriodEnd()); + } + if (model.wasPropertyExplicitlySet("amountCommitment")) { + this.amountCommitment(model.getAmountCommitment()); + } + if (model.wasPropertyExplicitlySet("amountConsumed")) { + this.amountConsumed(model.getAmountConsumed()); + } + if (model.wasPropertyExplicitlySet("amountAvailable")) { + this.amountAvailable(model.getAmountAvailable()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Identifier for the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("commitmentPeriod") + private final String commitmentPeriod; + + /** + * Identifier for the commitment period. + * + * @return the value + */ + public String getCommitmentPeriod() { + return commitmentPeriod; + } + + /** Start date and time of the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentPeriodStart") + private final java.util.Date timeCommitmentPeriodStart; + + /** + * Start date and time of the commitment period. + * + * @return the value + */ + public java.util.Date getTimeCommitmentPeriodStart() { + return timeCommitmentPeriodStart; + } + + /** End date and time of the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentPeriodEnd") + private final java.util.Date timeCommitmentPeriodEnd; + + /** + * End date and time of the commitment period. + * + * @return the value + */ + public java.util.Date getTimeCommitmentPeriodEnd() { + return timeCommitmentPeriodEnd; + } + + /** Total committed amount for the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountCommitment") + private final Double amountCommitment; + + /** + * Total committed amount for the commitment period. + * + * @return the value + */ + public Double getAmountCommitment() { + return amountCommitment; + } + + /** Amount consumed during the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountConsumed") + private final Double amountConsumed; + + /** + * Amount consumed during the commitment period. + * + * @return the value + */ + public Double getAmountConsumed() { + return amountConsumed; + } + + /** Amount remaining and available for the commitment period. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAvailable") + private final Double amountAvailable; + + /** + * Amount remaining and available for the commitment period. + * + * @return the value + */ + public Double getAmountAvailable() { + return amountAvailable; + } + + @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("CommitmentPeriod("); + sb.append("super=").append(super.toString()); + sb.append("commitmentPeriod=").append(String.valueOf(this.commitmentPeriod)); + sb.append(", timeCommitmentPeriodStart=") + .append(String.valueOf(this.timeCommitmentPeriodStart)); + sb.append(", timeCommitmentPeriodEnd=") + .append(String.valueOf(this.timeCommitmentPeriodEnd)); + sb.append(", amountCommitment=").append(String.valueOf(this.amountCommitment)); + sb.append(", amountConsumed=").append(String.valueOf(this.amountConsumed)); + sb.append(", amountAvailable=").append(String.valueOf(this.amountAvailable)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CommitmentPeriod)) { + return false; + } + + CommitmentPeriod other = (CommitmentPeriod) o; + return java.util.Objects.equals(this.commitmentPeriod, other.commitmentPeriod) + && java.util.Objects.equals( + this.timeCommitmentPeriodStart, other.timeCommitmentPeriodStart) + && java.util.Objects.equals( + this.timeCommitmentPeriodEnd, other.timeCommitmentPeriodEnd) + && java.util.Objects.equals(this.amountCommitment, other.amountCommitment) + && java.util.Objects.equals(this.amountConsumed, other.amountConsumed) + && java.util.Objects.equals(this.amountAvailable, other.amountAvailable) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.commitmentPeriod == null ? 43 : this.commitmentPeriod.hashCode()); + result = + (result * PRIME) + + (this.timeCommitmentPeriodStart == null + ? 43 + : this.timeCommitmentPeriodStart.hashCode()); + result = + (result * PRIME) + + (this.timeCommitmentPeriodEnd == null + ? 43 + : this.timeCommitmentPeriodEnd.hashCode()); + result = + (result * PRIME) + + (this.amountCommitment == null ? 43 : this.amountCommitment.hashCode()); + result = + (result * PRIME) + + (this.amountConsumed == null ? 43 : this.amountConsumed.hashCode()); + result = + (result * PRIME) + + (this.amountAvailable == null ? 43 : this.amountAvailable.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentService.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentService.java index 98e323b869e..2e939cdce39 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentService.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentService.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed service commitment details
+ * Subscribed service commitment details.
* 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 @@ -49,12 +49,12 @@ public CommitmentService( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Commitment start date */ + /** Commitment start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Commitment start date + * Commitment start date. * * @param timeStart the value to set * @return this builder @@ -64,12 +64,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Commitment end date */ + /** Commitment end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Commitment end date + * Commitment end date. * * @param timeEnd the value to set * @return this builder @@ -79,12 +79,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Commitment quantity */ + /** Commitment quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Commitment quantity + * Commitment quantity. * * @param quantity the value to set * @return this builder @@ -94,12 +94,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Commitment available amount */ + /** Commitment available amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private String availableAmount; /** - * Commitment available amount + * Commitment available amount. * * @param availableAmount the value to set * @return this builder @@ -109,12 +109,12 @@ public Builder availableAmount(String availableAmount) { this.__explicitlySet__.add("availableAmount"); return this; } - /** Commitment line net amount */ + /** Commitment line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("lineNetAmount") private String lineNetAmount; /** - * Commitment line net amount + * Commitment line net amount. * * @param lineNetAmount the value to set * @return this builder @@ -124,12 +124,12 @@ public Builder lineNetAmount(String lineNetAmount) { this.__explicitlySet__.add("lineNetAmount"); return this; } - /** Funded Allocation line value */ + /** Funded allocation line value. */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private String fundedAllocationValue; /** - * Funded Allocation line value + * Funded allocation line value. * * @param fundedAllocationValue the value to set * @return this builder @@ -191,12 +191,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Commitment start date */ + /** Commitment start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Commitment start date + * Commitment start date. * * @return the value */ @@ -204,12 +204,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Commitment end date */ + /** Commitment end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Commitment end date + * Commitment end date. * * @return the value */ @@ -217,12 +217,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Commitment quantity */ + /** Commitment quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Commitment quantity + * Commitment quantity. * * @return the value */ @@ -230,12 +230,12 @@ public String getQuantity() { return quantity; } - /** Commitment available amount */ + /** Commitment available amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private final String availableAmount; /** - * Commitment available amount + * Commitment available amount. * * @return the value */ @@ -243,12 +243,12 @@ public String getAvailableAmount() { return availableAmount; } - /** Commitment line net amount */ + /** Commitment line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("lineNetAmount") private final String lineNetAmount; /** - * Commitment line net amount + * Commitment line net amount. * * @return the value */ @@ -256,12 +256,12 @@ public String getLineNetAmount() { return lineNetAmount; } - /** Funded Allocation line value */ + /** Funded allocation line value. */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private final String fundedAllocationValue; /** - * Funded Allocation line value + * Funded allocation line value. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentSummary.java index c89d51127b4..ae39be8cbe8 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/CommitmentSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed Service commitment summary
+ * Subscribed service commitment summary.
* 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 @@ -55,12 +55,12 @@ public CommitmentSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Commitment ID */ + /** SPM (Subscription Plan Management) internal commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM internal Commitment ID + * SPM (Subscription Plan Management) internal commitment ID. * * @param id the value to set * @return this builder @@ -70,12 +70,12 @@ public Builder id(String id) { this.__explicitlySet__.add("id"); return this; } - /** SPM internal Subscribed Service ID */ + /** SPM internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM internal subscribed service ID. * * @param subscribedServiceId the value to set * @return this builder @@ -85,12 +85,12 @@ public Builder subscribedServiceId(String subscribedServiceId) { this.__explicitlySet__.add("subscribedServiceId"); return this; } - /** Commitment start date */ + /** Commitment start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Commitment start date + * Commitment start date. * * @param timeStart the value to set * @return this builder @@ -100,12 +100,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Commitment end date */ + /** Commitment end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Commitment end date + * Commitment end date. * * @param timeEnd the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Commitment quantity */ + /** Commitment quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Commitment quantity + * Commitment quantity. * * @param quantity the value to set * @return this builder @@ -130,12 +130,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Commitment used amount */ + /** Commitment used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private String usedAmount; /** - * Commitment used amount + * Commitment used amount. * * @param usedAmount the value to set * @return this builder @@ -145,12 +145,12 @@ public Builder usedAmount(String usedAmount) { this.__explicitlySet__.add("usedAmount"); return this; } - /** Commitment available amount */ + /** Commitment available amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private String availableAmount; /** - * Commitment available amount + * Commitment available amount. * * @param availableAmount the value to set * @return this builder @@ -160,12 +160,12 @@ public Builder availableAmount(String availableAmount) { this.__explicitlySet__.add("availableAmount"); return this; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @param fundedAllocationValue the value to set * @return this builder @@ -235,12 +235,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Commitment ID */ + /** SPM (Subscription Plan Management) internal commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM internal Commitment ID + * SPM (Subscription Plan Management) internal commitment ID. * * @return the value */ @@ -248,12 +248,12 @@ public String getId() { return id; } - /** SPM internal Subscribed Service ID */ + /** SPM internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private final String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM internal subscribed service ID. * * @return the value */ @@ -261,12 +261,12 @@ public String getSubscribedServiceId() { return subscribedServiceId; } - /** Commitment start date */ + /** Commitment start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Commitment start date + * Commitment start date. * * @return the value */ @@ -274,12 +274,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Commitment end date */ + /** Commitment end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Commitment end date + * Commitment end date. * * @return the value */ @@ -287,12 +287,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Commitment quantity */ + /** Commitment quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Commitment quantity + * Commitment quantity. * * @return the value */ @@ -300,12 +300,12 @@ public String getQuantity() { return quantity; } - /** Commitment used amount */ + /** Commitment used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private final String usedAmount; /** - * Commitment used amount + * Commitment used amount. * * @return the value */ @@ -313,12 +313,12 @@ public String getUsedAmount() { return usedAmount; } - /** Commitment available amount */ + /** Commitment available amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private final String availableAmount; /** - * Commitment available amount + * Commitment available amount. * * @return the value */ @@ -326,12 +326,12 @@ public String getAvailableAmount() { return availableAmount; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private final String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsage.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsage.java index 83ed6e1c23a..03267503956 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsage.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsage.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Computed Usage Summary object
+ * Computed usage summary object.
* 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 @@ -104,12 +104,12 @@ public ComputedUsage( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Computed Usage created time, expressed in RFC 3339 timestamp format. */ + /** Computed usage created time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * Computed Usage created time, expressed in RFC 3339 timestamp format. + * Computed usage created time, expressed in RFC 3339 timestamp format. * * @param timeCreated the value to set * @return this builder @@ -119,12 +119,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** Computed Usage updated time, expressed in RFC 3339 timestamp format. */ + /** Computed usage updated time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * Computed Usage updated time, expressed in RFC 3339 timestamp format. + * Computed usage updated time, expressed in RFC 3339 timestamp format. * * @param timeUpdated the value to set * @return this builder @@ -134,12 +134,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** Subscribed service line parent id */ + /** Subscribed service line parent ID. */ @com.fasterxml.jackson.annotation.JsonProperty("parentSubscribedServiceId") private String parentSubscribedServiceId; /** - * Subscribed service line parent id + * Subscribed service line parent ID. * * @param parentSubscribedServiceId the value to set * @return this builder @@ -158,12 +158,12 @@ public Builder parentProduct(ComputedUsageProduct parentProduct) { this.__explicitlySet__.add("parentProduct"); return this; } - /** Subscription plan number */ + /** Subscription plan number. */ @com.fasterxml.jackson.annotation.JsonProperty("planNumber") private String planNumber; /** - * Subscription plan number + * Subscription plan number. * * @param planNumber the value to set * @return this builder @@ -173,12 +173,12 @@ public Builder planNumber(String planNumber) { this.__explicitlySet__.add("planNumber"); return this; } - /** Currency code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") private String currencyCode; /** - * Currency code + * Currency code. * * @param currencyCode the value to set * @return this builder @@ -189,17 +189,17 @@ public Builder currencyCode(String currencyCode) { return this; } /** - * References the tier in the ratecard for that usage (OCI will be using the same reference - * to cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same + * reference to cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardTierdId") private String rateCardTierdId; /** - * References the tier in the ratecard for that usage (OCI will be using the same reference - * to cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same + * reference to cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. * * @param rateCardTierdId the value to set * @return this builder @@ -209,12 +209,12 @@ public Builder rateCardTierdId(String rateCardTierdId) { this.__explicitlySet__.add("rateCardTierdId"); return this; } - /** Ratecard Id at subscribed service level */ + /** Ratecard ID at subscribed service level. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardId") private String rateCardId; /** - * Ratecard Id at subscribed service level + * Ratecard ID at subscribed service level. * * @param rateCardId the value to set * @return this builder @@ -224,12 +224,12 @@ public Builder rateCardId(String rateCardId) { this.__explicitlySet__.add("rateCardId"); return this; } - /** SPM Internal compute records source . */ + /** SPM (Subscription Plan Management) internal compute records source. */ @com.fasterxml.jackson.annotation.JsonProperty("computeSource") private String computeSource; /** - * SPM Internal compute records source . + * SPM (Subscription Plan Management) internal compute records source. * * @param computeSource the value to set * @return this builder @@ -239,12 +239,12 @@ public Builder computeSource(String computeSource) { this.__explicitlySet__.add("computeSource"); return this; } - /** Data Center Attribute as sent by MQS to SPM. */ + /** Data center attribute as sent by the meterering system to SPM. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private String dataCenter; /** - * Data Center Attribute as sent by MQS to SPM. + * Data center attribute as sent by the meterering system to SPM. * * @param dataCenter the value to set * @return this builder @@ -255,13 +255,15 @@ public Builder dataCenter(String dataCenter) { return this; } /** - * MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. */ @com.fasterxml.jackson.annotation.JsonProperty("mqsMessageId") private String mqsMessageId; /** - * MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. * * @param mqsMessageId the value to set * @return this builder @@ -271,12 +273,12 @@ public Builder mqsMessageId(String mqsMessageId) { this.__explicitlySet__.add("mqsMessageId"); return this; } - /** SPM Internal computed usage Id , 32 character string */ + /** SPM internal computed usage ID, which is a 32-character string. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM Internal computed usage Id , 32 character string + * SPM internal computed usage ID, which is a 32-character string. * * @param id the value to set * @return this builder @@ -286,12 +288,12 @@ public Builder id(String id) { this.__explicitlySet__.add("id"); return this; } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @param quantity the value to set * @return this builder @@ -301,12 +303,16 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** SPM Internal usage Line number identifier in SPM coming from Metered Services entity. */ + /** + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. + */ @com.fasterxml.jackson.annotation.JsonProperty("usageNumber") private String usageNumber; /** - * SPM Internal usage Line number identifier in SPM coming from Metered Services entity. + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. * * @param usageNumber the value to set * @return this builder @@ -317,15 +323,15 @@ public Builder usageNumber(String usageNumber) { return this; } /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage line number identifier in SPM, originating from the metered + * services entity. */ @com.fasterxml.jackson.annotation.JsonProperty("originalUsageNumber") private String originalUsageNumber; /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage line number identifier in SPM, originating from the metered + * services entity. * * @param originalUsageNumber the value to set * @return this builder @@ -335,12 +341,12 @@ public Builder originalUsageNumber(String originalUsageNumber) { this.__explicitlySet__.add("originalUsageNumber"); return this; } - /** Subscribed service commitmentId. */ + /** Subscribed service commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServiceId") private String commitmentServiceId; /** - * Subscribed service commitmentId. + * Subscribed service commitment ID. * * @param commitmentServiceId the value to set * @return this builder @@ -350,12 +356,12 @@ public Builder commitmentServiceId(String commitmentServiceId) { this.__explicitlySet__.add("commitmentServiceId"); return this; } - /** Invoicing status for the aggregated compute usage */ + /** Invoicing status for the aggregated compute usage. */ @com.fasterxml.jackson.annotation.JsonProperty("isInvoiced") private Boolean isInvoiced; /** - * Invoicing status for the aggregated compute usage + * Invoicing status for the aggregated compute usage. * * @param isInvoiced the value to set * @return this builder @@ -380,12 +386,12 @@ public Builder type(Type type) { this.__explicitlySet__.add("type"); return this; } - /** Usae computation date, expressed in RFC 3339 timestamp format. */ + /** Usage computation date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeOfArrival") private java.util.Date timeOfArrival; /** - * Usae computation date, expressed in RFC 3339 timestamp format. + * Usage computation date, expressed in RFC 3339 timestamp format. * * @param timeOfArrival the value to set * @return this builder @@ -395,12 +401,12 @@ public Builder timeOfArrival(java.util.Date timeOfArrival) { this.__explicitlySet__.add("timeOfArrival"); return this; } - /** Metered Service date, expressed in RFC 3339 timestamp format. */ + /** Metered service date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private java.util.Date timeMeteredOn; /** - * Metered Service date, expressed in RFC 3339 timestamp format. + * Metered service date, expressed in RFC 3339 timestamp format. * * @param timeMeteredOn the value to set * @return this builder @@ -410,12 +416,12 @@ public Builder timeMeteredOn(java.util.Date timeMeteredOn) { this.__explicitlySet__.add("timeMeteredOn"); return this; } - /** Net Unit Price for the product in consideration, price actual. */ + /** Net unit price for the product in consideration, price actual. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Net Unit Price for the product in consideration, price actual. + * Net unit price for the product in consideration, price actual. * * @param netUnitPrice the value to set * @return this builder @@ -425,12 +431,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Computed Line Amount rounded. */ + /** Computed rounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costRounded") private String costRounded; /** - * Computed Line Amount rounded. + * Computed rounded line amount. * * @param costRounded the value to set * @return this builder @@ -440,12 +446,12 @@ public Builder costRounded(String costRounded) { this.__explicitlySet__.add("costRounded"); return this; } - /** Computed Line Amount not rounded */ + /** Computed unrounded line Amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private String cost; /** - * Computed Line Amount not rounded + * Computed unrounded line Amount. * * @param cost the value to set * @return this builder @@ -464,12 +470,12 @@ public Builder product(ComputedUsageProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Unit of Messure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private String unitOfMeasure; /** - * Unit of Messure + * Unit of measure. * * @param unitOfMeasure the value to set * @return this builder @@ -607,12 +613,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Computed Usage created time, expressed in RFC 3339 timestamp format. */ + /** Computed usage created time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * Computed Usage created time, expressed in RFC 3339 timestamp format. + * Computed usage created time, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -620,12 +626,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** Computed Usage updated time, expressed in RFC 3339 timestamp format. */ + /** Computed usage updated time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * Computed Usage updated time, expressed in RFC 3339 timestamp format. + * Computed usage updated time, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -633,12 +639,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** Subscribed service line parent id */ + /** Subscribed service line parent ID. */ @com.fasterxml.jackson.annotation.JsonProperty("parentSubscribedServiceId") private final String parentSubscribedServiceId; /** - * Subscribed service line parent id + * Subscribed service line parent ID. * * @return the value */ @@ -653,12 +659,12 @@ public ComputedUsageProduct getParentProduct() { return parentProduct; } - /** Subscription plan number */ + /** Subscription plan number. */ @com.fasterxml.jackson.annotation.JsonProperty("planNumber") private final String planNumber; /** - * Subscription plan number + * Subscription plan number. * * @return the value */ @@ -666,12 +672,12 @@ public String getPlanNumber() { return planNumber; } - /** Currency code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") private final String currencyCode; /** - * Currency code + * Currency code. * * @return the value */ @@ -680,17 +686,17 @@ public String getCurrencyCode() { } /** - * References the tier in the ratecard for that usage (OCI will be using the same reference to - * cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same reference to + * cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardTierdId") private final String rateCardTierdId; /** - * References the tier in the ratecard for that usage (OCI will be using the same reference to - * cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same reference to + * cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. * * @return the value */ @@ -698,12 +704,12 @@ public String getRateCardTierdId() { return rateCardTierdId; } - /** Ratecard Id at subscribed service level */ + /** Ratecard ID at subscribed service level. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardId") private final String rateCardId; /** - * Ratecard Id at subscribed service level + * Ratecard ID at subscribed service level. * * @return the value */ @@ -711,12 +717,12 @@ public String getRateCardId() { return rateCardId; } - /** SPM Internal compute records source . */ + /** SPM (Subscription Plan Management) internal compute records source. */ @com.fasterxml.jackson.annotation.JsonProperty("computeSource") private final String computeSource; /** - * SPM Internal compute records source . + * SPM (Subscription Plan Management) internal compute records source. * * @return the value */ @@ -724,12 +730,12 @@ public String getComputeSource() { return computeSource; } - /** Data Center Attribute as sent by MQS to SPM. */ + /** Data center attribute as sent by the meterering system to SPM. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private final String dataCenter; /** - * Data Center Attribute as sent by MQS to SPM. + * Data center attribute as sent by the meterering system to SPM. * * @return the value */ @@ -737,12 +743,16 @@ public String getDataCenter() { return dataCenter; } - /** MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. */ + /** + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. + */ @com.fasterxml.jackson.annotation.JsonProperty("mqsMessageId") private final String mqsMessageId; /** - * MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. * * @return the value */ @@ -750,12 +760,12 @@ public String getMqsMessageId() { return mqsMessageId; } - /** SPM Internal computed usage Id , 32 character string */ + /** SPM internal computed usage ID, which is a 32-character string. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM Internal computed usage Id , 32 character string + * SPM internal computed usage ID, which is a 32-character string. * * @return the value */ @@ -763,12 +773,12 @@ public String getId() { return id; } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @return the value */ @@ -776,12 +786,16 @@ public String getQuantity() { return quantity; } - /** SPM Internal usage Line number identifier in SPM coming from Metered Services entity. */ + /** + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. + */ @com.fasterxml.jackson.annotation.JsonProperty("usageNumber") private final String usageNumber; /** - * SPM Internal usage Line number identifier in SPM coming from Metered Services entity. + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. * * @return the value */ @@ -790,15 +804,15 @@ public String getUsageNumber() { } /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage line number identifier in SPM, originating from the metered + * services entity. */ @com.fasterxml.jackson.annotation.JsonProperty("originalUsageNumber") private final String originalUsageNumber; /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage line number identifier in SPM, originating from the metered + * services entity. * * @return the value */ @@ -806,12 +820,12 @@ public String getOriginalUsageNumber() { return originalUsageNumber; } - /** Subscribed service commitmentId. */ + /** Subscribed service commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServiceId") private final String commitmentServiceId; /** - * Subscribed service commitmentId. + * Subscribed service commitment ID. * * @return the value */ @@ -819,12 +833,12 @@ public String getCommitmentServiceId() { return commitmentServiceId; } - /** Invoicing status for the aggregated compute usage */ + /** Invoicing status for the aggregated compute usage. */ @com.fasterxml.jackson.annotation.JsonProperty("isInvoiced") private final Boolean isInvoiced; /** - * Invoicing status for the aggregated compute usage + * Invoicing status for the aggregated compute usage. * * @return the value */ @@ -902,12 +916,12 @@ public Type getType() { return type; } - /** Usae computation date, expressed in RFC 3339 timestamp format. */ + /** Usage computation date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeOfArrival") private final java.util.Date timeOfArrival; /** - * Usae computation date, expressed in RFC 3339 timestamp format. + * Usage computation date, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -915,12 +929,12 @@ public java.util.Date getTimeOfArrival() { return timeOfArrival; } - /** Metered Service date, expressed in RFC 3339 timestamp format. */ + /** Metered service date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private final java.util.Date timeMeteredOn; /** - * Metered Service date, expressed in RFC 3339 timestamp format. + * Metered service date, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -928,12 +942,12 @@ public java.util.Date getTimeMeteredOn() { return timeMeteredOn; } - /** Net Unit Price for the product in consideration, price actual. */ + /** Net unit price for the product in consideration, price actual. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Net Unit Price for the product in consideration, price actual. + * Net unit price for the product in consideration, price actual. * * @return the value */ @@ -941,12 +955,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Computed Line Amount rounded. */ + /** Computed rounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costRounded") private final String costRounded; /** - * Computed Line Amount rounded. + * Computed rounded line amount. * * @return the value */ @@ -954,12 +968,12 @@ public String getCostRounded() { return costRounded; } - /** Computed Line Amount not rounded */ + /** Computed unrounded line Amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private final String cost; /** - * Computed Line Amount not rounded + * Computed unrounded line Amount. * * @return the value */ @@ -974,12 +988,12 @@ public ComputedUsageProduct getProduct() { return product; } - /** Unit of Messure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private final String unitOfMeasure; /** - * Unit of Messure + * Unit of measure. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageAggregation.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageAggregation.java index f4ada1dda41..a317e79212b 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageAggregation.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageAggregation.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Computed Usage Aggregation object
+ * Computed usage aggregation object.
* 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 @@ -55,12 +55,12 @@ public ComputedUsageAggregation( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @param quantity the value to set * @return this builder @@ -79,12 +79,16 @@ public Builder product(ComputedUsageProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Data Center Attribute as sent by MQS to SPM. */ + /** + * Data center attribute as sent by the meterering system to SPM (Subscription Plan + * Management). + */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private String dataCenter; /** - * Data Center Attribute as sent by MQS to SPM. + * Data center attribute as sent by the meterering system to SPM (Subscription Plan + * Management). * * @param dataCenter the value to set * @return this builder @@ -94,12 +98,12 @@ public Builder dataCenter(String dataCenter) { this.__explicitlySet__.add("dataCenter"); return this; } - /** Metered Service date , expressed in RFC 3339 timestamp format. */ + /** Metered service date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private java.util.Date timeMeteredOn; /** - * Metered Service date , expressed in RFC 3339 timestamp format. + * Metered service date, expressed in RFC 3339 timestamp format. * * @param timeMeteredOn the value to set * @return this builder @@ -109,12 +113,12 @@ public Builder timeMeteredOn(java.util.Date timeMeteredOn) { this.__explicitlySet__.add("timeMeteredOn"); return this; } - /** Net Unit Price for the product in consideration. */ + /** Net unit price for the product in consideration. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Net Unit Price for the product in consideration. + * Net unit price for the product in consideration. * * @param netUnitPrice the value to set * @return this builder @@ -124,12 +128,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Sum of Computed Line Amount unrounded */ + /** Sum of unrounded computed line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costUnrounded") private String costUnrounded; /** - * Sum of Computed Line Amount unrounded + * Sum of unrounded computed line amount. * * @param costUnrounded the value to set * @return this builder @@ -139,12 +143,12 @@ public Builder costUnrounded(String costUnrounded) { this.__explicitlySet__.add("costUnrounded"); return this; } - /** Sum of Computed Line Amount rounded */ + /** Sum of rounded computed line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private String cost; /** - * Sum of Computed Line Amount rounded + * Sum of rounded computed line amount. * * @param cost the value to set * @return this builder @@ -229,12 +233,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @return the value */ @@ -249,12 +253,14 @@ public ComputedUsageProduct getProduct() { return product; } - /** Data Center Attribute as sent by MQS to SPM. */ + /** + * Data center attribute as sent by the meterering system to SPM (Subscription Plan Management). + */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private final String dataCenter; /** - * Data Center Attribute as sent by MQS to SPM. + * Data center attribute as sent by the meterering system to SPM (Subscription Plan Management). * * @return the value */ @@ -262,12 +268,12 @@ public String getDataCenter() { return dataCenter; } - /** Metered Service date , expressed in RFC 3339 timestamp format. */ + /** Metered service date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private final java.util.Date timeMeteredOn; /** - * Metered Service date , expressed in RFC 3339 timestamp format. + * Metered service date, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -275,12 +281,12 @@ public java.util.Date getTimeMeteredOn() { return timeMeteredOn; } - /** Net Unit Price for the product in consideration. */ + /** Net unit price for the product in consideration. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Net Unit Price for the product in consideration. + * Net unit price for the product in consideration. * * @return the value */ @@ -288,12 +294,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Sum of Computed Line Amount unrounded */ + /** Sum of unrounded computed line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costUnrounded") private final String costUnrounded; /** - * Sum of Computed Line Amount unrounded + * Sum of unrounded computed line amount. * * @return the value */ @@ -301,12 +307,12 @@ public String getCostUnrounded() { return costUnrounded; } - /** Sum of Computed Line Amount rounded */ + /** Sum of rounded computed line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private final String cost; /** - * Sum of Computed Line Amount rounded + * Sum of rounded computed line amount. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageProduct.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageProduct.java index 28369e2caeb..51429b6affc 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageProduct.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageProduct.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Product description
+ * Product description.
* 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 @@ -52,12 +52,12 @@ public ComputedUsageProduct( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Product part number */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private String partNumber; /** - * Product part number + * Product part number. * * @param partNumber the value to set * @return this builder @@ -67,12 +67,12 @@ public Builder partNumber(String partNumber) { this.__explicitlySet__.add("partNumber"); return this; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Product name + * Product name. * * @param name the value to set * @return this builder @@ -82,12 +82,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Unit of Measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private String unitOfMeasure; /** - * Unit of Measure + * Unit of measure. * * @param unitOfMeasure the value to set * @return this builder @@ -97,12 +97,12 @@ public Builder unitOfMeasure(String unitOfMeasure) { this.__explicitlySet__.add("unitOfMeasure"); return this; } - /** Product provisioning group */ + /** Product provisioning group. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningGroup") private String provisioningGroup; /** - * Product provisioning group + * Product provisioning group. * * @param provisioningGroup the value to set * @return this builder @@ -112,12 +112,12 @@ public Builder provisioningGroup(String provisioningGroup) { this.__explicitlySet__.add("provisioningGroup"); return this; } - /** Metered service billing category */ + /** Metered service billing category. */ @com.fasterxml.jackson.annotation.JsonProperty("billingCategory") private String billingCategory; /** - * Metered service billing category + * Metered service billing category. * * @param billingCategory the value to set * @return this builder @@ -127,12 +127,12 @@ public Builder billingCategory(String billingCategory) { this.__explicitlySet__.add("billingCategory"); return this; } - /** Product category */ + /** Product category. */ @com.fasterxml.jackson.annotation.JsonProperty("productCategory") private String productCategory; /** - * Product category + * Product category. * * @param productCategory the value to set * @return this builder @@ -142,12 +142,12 @@ public Builder productCategory(String productCategory) { this.__explicitlySet__.add("productCategory"); return this; } - /** Rate card part type of Product */ + /** Rate card part type of product. */ @com.fasterxml.jackson.annotation.JsonProperty("ucmRateCardPartType") private String ucmRateCardPartType; /** - * Rate card part type of Product + * Rate card part type of product. * * @param ucmRateCardPartType the value to set * @return this builder @@ -213,12 +213,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Product part number */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private final String partNumber; /** - * Product part number + * Product part number. * * @return the value */ @@ -226,12 +226,12 @@ public String getPartNumber() { return partNumber; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Product name + * Product name. * * @return the value */ @@ -239,12 +239,12 @@ public String getName() { return name; } - /** Unit of Measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private final String unitOfMeasure; /** - * Unit of Measure + * Unit of measure. * * @return the value */ @@ -252,12 +252,12 @@ public String getUnitOfMeasure() { return unitOfMeasure; } - /** Product provisioning group */ + /** Product provisioning group. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningGroup") private final String provisioningGroup; /** - * Product provisioning group + * Product provisioning group. * * @return the value */ @@ -265,12 +265,12 @@ public String getProvisioningGroup() { return provisioningGroup; } - /** Metered service billing category */ + /** Metered service billing category. */ @com.fasterxml.jackson.annotation.JsonProperty("billingCategory") private final String billingCategory; /** - * Metered service billing category + * Metered service billing category. * * @return the value */ @@ -278,12 +278,12 @@ public String getBillingCategory() { return billingCategory; } - /** Product category */ + /** Product category. */ @com.fasterxml.jackson.annotation.JsonProperty("productCategory") private final String productCategory; /** - * Product category + * Product category. * * @return the value */ @@ -291,12 +291,12 @@ public String getProductCategory() { return productCategory; } - /** Rate card part type of Product */ + /** Rate card part type of product. */ @com.fasterxml.jackson.annotation.JsonProperty("ucmRateCardPartType") private final String ucmRateCardPartType; /** - * Rate card part type of Product + * Rate card part type of product. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageSummary.java index c96978477a4..70e72273a38 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ComputedUsageSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Computed Usage Summary object
+ * Computed usage summary object.
* 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 @@ -106,12 +106,12 @@ public ComputedUsageSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Computed Usage created time, expressed in RFC 3339 timestamp format. */ + /** Computed usage created time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * Computed Usage created time, expressed in RFC 3339 timestamp format. + * Computed usage created time, expressed in RFC 3339 timestamp format. * * @param timeCreated the value to set * @return this builder @@ -121,12 +121,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** Computed Usage updated time, expressed in RFC 3339 timestamp format. */ + /** Computed usage updated time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * Computed Usage updated time, expressed in RFC 3339 timestamp format. + * Computed usage updated time, expressed in RFC 3339 timestamp format. * * @param timeUpdated the value to set * @return this builder @@ -136,12 +136,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** Subscribed service line parent id */ + /** Subscribed service line parent ID. */ @com.fasterxml.jackson.annotation.JsonProperty("parentSubscribedServiceId") private String parentSubscribedServiceId; /** - * Subscribed service line parent id + * Subscribed service line parent ID. * * @param parentSubscribedServiceId the value to set * @return this builder @@ -160,12 +160,12 @@ public Builder parentProduct(ComputedUsageProduct parentProduct) { this.__explicitlySet__.add("parentProduct"); return this; } - /** Subscription plan number */ + /** Subscription plan number. */ @com.fasterxml.jackson.annotation.JsonProperty("planNumber") private String planNumber; /** - * Subscription plan number + * Subscription plan number. * * @param planNumber the value to set * @return this builder @@ -175,12 +175,12 @@ public Builder planNumber(String planNumber) { this.__explicitlySet__.add("planNumber"); return this; } - /** Currency code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") private String currencyCode; /** - * Currency code + * Currency code. * * @param currencyCode the value to set * @return this builder @@ -191,17 +191,17 @@ public Builder currencyCode(String currencyCode) { return this; } /** - * References the tier in the ratecard for that usage (OCI will be using the same reference - * to cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same + * reference to cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardTierdId") private String rateCardTierdId; /** - * References the tier in the ratecard for that usage (OCI will be using the same reference - * to cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same + * reference to cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. * * @param rateCardTierdId the value to set * @return this builder @@ -211,12 +211,12 @@ public Builder rateCardTierdId(String rateCardTierdId) { this.__explicitlySet__.add("rateCardTierdId"); return this; } - /** Ratecard Id at subscribed service level */ + /** Rate card ID at the subscribed service level. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardId") private String rateCardId; /** - * Ratecard Id at subscribed service level + * Rate card ID at the subscribed service level. * * @param rateCardId the value to set * @return this builder @@ -226,12 +226,12 @@ public Builder rateCardId(String rateCardId) { this.__explicitlySet__.add("rateCardId"); return this; } - /** SPM Internal compute records source . */ + /** SPM (Subscription Plan Management) internal compute records source. */ @com.fasterxml.jackson.annotation.JsonProperty("computeSource") private String computeSource; /** - * SPM Internal compute records source . + * SPM (Subscription Plan Management) internal compute records source. * * @param computeSource the value to set * @return this builder @@ -241,12 +241,12 @@ public Builder computeSource(String computeSource) { this.__explicitlySet__.add("computeSource"); return this; } - /** Data Center Attribute as sent by MQS to SPM. */ + /** Data center attribute as sent by the meterering system to SPM. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private String dataCenter; /** - * Data Center Attribute as sent by MQS to SPM. + * Data center attribute as sent by the meterering system to SPM. * * @param dataCenter the value to set * @return this builder @@ -257,13 +257,15 @@ public Builder dataCenter(String dataCenter) { return this; } /** - * MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. */ @com.fasterxml.jackson.annotation.JsonProperty("mqsMessageId") private String mqsMessageId; /** - * MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. * * @param mqsMessageId the value to set * @return this builder @@ -273,12 +275,12 @@ public Builder mqsMessageId(String mqsMessageId) { this.__explicitlySet__.add("mqsMessageId"); return this; } - /** SPM Internal computed usage Id , 32 character string */ + /** SPM internal computed usage ID, which is a 32-character string. */ @com.fasterxml.jackson.annotation.JsonProperty("computedUsageId") private String computedUsageId; /** - * SPM Internal computed usage Id , 32 character string + * SPM internal computed usage ID, which is a 32-character string. * * @param computedUsageId the value to set * @return this builder @@ -288,12 +290,12 @@ public Builder computedUsageId(String computedUsageId) { this.__explicitlySet__.add("computedUsageId"); return this; } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @param quantity the value to set * @return this builder @@ -303,12 +305,16 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** SPM Internal usage Line number identifier in SPM coming from Metered Services entity. */ + /** + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. + */ @com.fasterxml.jackson.annotation.JsonProperty("usageNumber") private String usageNumber; /** - * SPM Internal usage Line number identifier in SPM coming from Metered Services entity. + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. * * @param usageNumber the value to set * @return this builder @@ -319,15 +325,15 @@ public Builder usageNumber(String usageNumber) { return this; } /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage Line number identifier in SPM, originating from the metered + * services entity. */ @com.fasterxml.jackson.annotation.JsonProperty("originalUsageNumber") private String originalUsageNumber; /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage Line number identifier in SPM, originating from the metered + * services entity. * * @param originalUsageNumber the value to set * @return this builder @@ -337,12 +343,12 @@ public Builder originalUsageNumber(String originalUsageNumber) { this.__explicitlySet__.add("originalUsageNumber"); return this; } - /** Subscribed service commitmentId. */ + /** Subscribed service commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServiceId") private String commitmentServiceId; /** - * Subscribed service commitmentId. + * Subscribed service commitment ID. * * @param commitmentServiceId the value to set * @return this builder @@ -352,12 +358,12 @@ public Builder commitmentServiceId(String commitmentServiceId) { this.__explicitlySet__.add("commitmentServiceId"); return this; } - /** Invoicing status for the aggregated compute usage */ + /** Invoicing status for the aggregated compute usage. */ @com.fasterxml.jackson.annotation.JsonProperty("isInvoiced") private Boolean isInvoiced; /** - * Invoicing status for the aggregated compute usage + * Invoicing status for the aggregated compute usage. * * @param isInvoiced the value to set * @return this builder @@ -382,12 +388,12 @@ public Builder type(Type type) { this.__explicitlySet__.add("type"); return this; } - /** Usae computation date, expressed in RFC 3339 timestamp format. */ + /** Usage computation date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeOfArrival") private java.util.Date timeOfArrival; /** - * Usae computation date, expressed in RFC 3339 timestamp format. + * Usage computation date, expressed in RFC 3339 timestamp format. * * @param timeOfArrival the value to set * @return this builder @@ -397,12 +403,12 @@ public Builder timeOfArrival(java.util.Date timeOfArrival) { this.__explicitlySet__.add("timeOfArrival"); return this; } - /** Metered Service date, expressed in RFC 3339 timestamp format. */ + /** Metered service date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private java.util.Date timeMeteredOn; /** - * Metered Service date, expressed in RFC 3339 timestamp format. + * Metered service date, expressed in RFC 3339 timestamp format. * * @param timeMeteredOn the value to set * @return this builder @@ -412,12 +418,12 @@ public Builder timeMeteredOn(java.util.Date timeMeteredOn) { this.__explicitlySet__.add("timeMeteredOn"); return this; } - /** Net Unit Price for the product in consideration, price actual. */ + /** Net unit price for the product in consideration, price actual. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Net Unit Price for the product in consideration, price actual. + * Net unit price for the product in consideration, price actual. * * @param netUnitPrice the value to set * @return this builder @@ -427,12 +433,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Computed Line Amount rounded. */ + /** Computed rounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costRounded") private String costRounded; /** - * Computed Line Amount rounded. + * Computed rounded line amount. * * @param costRounded the value to set * @return this builder @@ -442,12 +448,12 @@ public Builder costRounded(String costRounded) { this.__explicitlySet__.add("costRounded"); return this; } - /** Computed Line Amount not rounded */ + /** Computed unrounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private String cost; /** - * Computed Line Amount not rounded + * Computed unrounded line amount. * * @param cost the value to set * @return this builder @@ -466,12 +472,12 @@ public Builder product(ComputedUsageProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Unit of Messure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private String unitOfMeasure; /** - * Unit of Messure + * Unit of measure. * * @param unitOfMeasure the value to set * @return this builder @@ -609,12 +615,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Computed Usage created time, expressed in RFC 3339 timestamp format. */ + /** Computed usage created time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * Computed Usage created time, expressed in RFC 3339 timestamp format. + * Computed usage created time, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -622,12 +628,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** Computed Usage updated time, expressed in RFC 3339 timestamp format. */ + /** Computed usage updated time, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * Computed Usage updated time, expressed in RFC 3339 timestamp format. + * Computed usage updated time, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -635,12 +641,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** Subscribed service line parent id */ + /** Subscribed service line parent ID. */ @com.fasterxml.jackson.annotation.JsonProperty("parentSubscribedServiceId") private final String parentSubscribedServiceId; /** - * Subscribed service line parent id + * Subscribed service line parent ID. * * @return the value */ @@ -655,12 +661,12 @@ public ComputedUsageProduct getParentProduct() { return parentProduct; } - /** Subscription plan number */ + /** Subscription plan number. */ @com.fasterxml.jackson.annotation.JsonProperty("planNumber") private final String planNumber; /** - * Subscription plan number + * Subscription plan number. * * @return the value */ @@ -668,12 +674,12 @@ public String getPlanNumber() { return planNumber; } - /** Currency code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") private final String currencyCode; /** - * Currency code + * Currency code. * * @return the value */ @@ -682,17 +688,17 @@ public String getCurrencyCode() { } /** - * References the tier in the ratecard for that usage (OCI will be using the same reference to - * cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same reference to + * cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardTierdId") private final String rateCardTierdId; /** - * References the tier in the ratecard for that usage (OCI will be using the same reference to - * cross-reference for correctness on the usage csv report), comes from Entity - * OBSCNTR_IPT_PRODUCTTIER. + * References the tier in the rate card for the associated usage (OCI uses the same reference to + * cross-reference for correctness in CSV Usage Reports), obtained from the + * OBSCNTR_IPT_PRODUCTTIER entity. * * @return the value */ @@ -700,12 +706,12 @@ public String getRateCardTierdId() { return rateCardTierdId; } - /** Ratecard Id at subscribed service level */ + /** Rate card ID at the subscribed service level. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardId") private final String rateCardId; /** - * Ratecard Id at subscribed service level + * Rate card ID at the subscribed service level. * * @return the value */ @@ -713,12 +719,12 @@ public String getRateCardId() { return rateCardId; } - /** SPM Internal compute records source . */ + /** SPM (Subscription Plan Management) internal compute records source. */ @com.fasterxml.jackson.annotation.JsonProperty("computeSource") private final String computeSource; /** - * SPM Internal compute records source . + * SPM (Subscription Plan Management) internal compute records source. * * @return the value */ @@ -726,12 +732,12 @@ public String getComputeSource() { return computeSource; } - /** Data Center Attribute as sent by MQS to SPM. */ + /** Data center attribute as sent by the meterering system to SPM. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private final String dataCenter; /** - * Data Center Attribute as sent by MQS to SPM. + * Data center attribute as sent by the meterering system to SPM. * * @return the value */ @@ -739,12 +745,16 @@ public String getDataCenter() { return dataCenter; } - /** MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. */ + /** + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. + */ @com.fasterxml.jackson.annotation.JsonProperty("mqsMessageId") private final String mqsMessageId; /** - * MQS Identfier send to SPM , SPM does not transform this attribute and is received as is. + * The meterering system identfier sent to SPM. SPM does not transform this attribute and is + * received as-is. * * @return the value */ @@ -752,12 +762,12 @@ public String getMqsMessageId() { return mqsMessageId; } - /** SPM Internal computed usage Id , 32 character string */ + /** SPM internal computed usage ID, which is a 32-character string. */ @com.fasterxml.jackson.annotation.JsonProperty("computedUsageId") private final String computedUsageId; /** - * SPM Internal computed usage Id , 32 character string + * SPM internal computed usage ID, which is a 32-character string. * * @return the value */ @@ -765,12 +775,12 @@ public String getComputedUsageId() { return computedUsageId; } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @return the value */ @@ -778,12 +788,16 @@ public String getQuantity() { return quantity; } - /** SPM Internal usage Line number identifier in SPM coming from Metered Services entity. */ + /** + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. + */ @com.fasterxml.jackson.annotation.JsonProperty("usageNumber") private final String usageNumber; /** - * SPM Internal usage Line number identifier in SPM coming from Metered Services entity. + * SPM internal usage line number identifier in SPM, originating from the metered services + * entity. * * @return the value */ @@ -792,15 +806,15 @@ public String getUsageNumber() { } /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage Line number identifier in SPM, originating from the metered + * services entity. */ @com.fasterxml.jackson.annotation.JsonProperty("originalUsageNumber") private final String originalUsageNumber; /** - * SPM Internal Original usage Line number identifier in SPM coming from Metered Services - * entity. + * SPM internal original usage Line number identifier in SPM, originating from the metered + * services entity. * * @return the value */ @@ -808,12 +822,12 @@ public String getOriginalUsageNumber() { return originalUsageNumber; } - /** Subscribed service commitmentId. */ + /** Subscribed service commitment ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServiceId") private final String commitmentServiceId; /** - * Subscribed service commitmentId. + * Subscribed service commitment ID. * * @return the value */ @@ -821,12 +835,12 @@ public String getCommitmentServiceId() { return commitmentServiceId; } - /** Invoicing status for the aggregated compute usage */ + /** Invoicing status for the aggregated compute usage. */ @com.fasterxml.jackson.annotation.JsonProperty("isInvoiced") private final Boolean isInvoiced; /** - * Invoicing status for the aggregated compute usage + * Invoicing status for the aggregated compute usage. * * @return the value */ @@ -904,12 +918,12 @@ public Type getType() { return type; } - /** Usae computation date, expressed in RFC 3339 timestamp format. */ + /** Usage computation date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeOfArrival") private final java.util.Date timeOfArrival; /** - * Usae computation date, expressed in RFC 3339 timestamp format. + * Usage computation date, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -917,12 +931,12 @@ public java.util.Date getTimeOfArrival() { return timeOfArrival; } - /** Metered Service date, expressed in RFC 3339 timestamp format. */ + /** Metered service date, expressed in RFC 3339 timestamp format. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private final java.util.Date timeMeteredOn; /** - * Metered Service date, expressed in RFC 3339 timestamp format. + * Metered service date, expressed in RFC 3339 timestamp format. * * @return the value */ @@ -930,12 +944,12 @@ public java.util.Date getTimeMeteredOn() { return timeMeteredOn; } - /** Net Unit Price for the product in consideration, price actual. */ + /** Net unit price for the product in consideration, price actual. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Net Unit Price for the product in consideration, price actual. + * Net unit price for the product in consideration, price actual. * * @return the value */ @@ -943,12 +957,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Computed Line Amount rounded. */ + /** Computed rounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costRounded") private final String costRounded; /** - * Computed Line Amount rounded. + * Computed rounded line amount. * * @return the value */ @@ -956,12 +970,12 @@ public String getCostRounded() { return costRounded; } - /** Computed Line Amount not rounded */ + /** Computed unrounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private final String cost; /** - * Computed Line Amount not rounded + * Computed unrounded line amount. * * @return the value */ @@ -976,12 +990,12 @@ public ComputedUsageProduct getProduct() { return product; } - /** Unit of Messure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private final String unitOfMeasure; /** - * Unit of Messure + * Unit of measure. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceLineSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceLineSummary.java index b37576125ab..b64e4dc657a 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceLineSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceLineSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Invoice Line
+ * Invoice line.
* 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 @@ -49,12 +49,12 @@ public InvoiceLineSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM Invoice Line internal identifier */ + /** SPM (Subscription Plan Management) invoice line internal identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM Invoice Line internal identifier + * SPM (Subscription Plan Management) invoice line internal identifier. * * @param id the value to set * @return this builder @@ -73,12 +73,12 @@ public Builder product(InvoicingProduct product) { this.__explicitlySet__.add("product"); return this; } - /** AR Invoice Number for Invoice Line */ + /** Accounts receivable invoice number for invoice line. */ @com.fasterxml.jackson.annotation.JsonProperty("arInvoiceNumber") private String arInvoiceNumber; /** - * AR Invoice Number for Invoice Line + * Accounts receivable invoice number for invoice line. * * @param arInvoiceNumber the value to set * @return this builder @@ -88,12 +88,12 @@ public Builder arInvoiceNumber(String arInvoiceNumber) { this.__explicitlySet__.add("arInvoiceNumber"); return this; } - /** Data Center Attribute. */ + /** Data center attribute. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private String dataCenter; /** - * Data Center Attribute. + * Data center attribute. * * @param dataCenter the value to set * @return this builder @@ -103,12 +103,12 @@ public Builder dataCenter(String dataCenter) { this.__explicitlySet__.add("dataCenter"); return this; } - /** Usage start time */ + /** Usage start time. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Usage start time + * Usage start time. * * @param timeStart the value to set * @return this builder @@ -118,12 +118,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Usage end time */ + /** Usage end time. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Usage end time + * Usage end time. * * @param timeEnd the value to set * @return this builder @@ -185,12 +185,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM Invoice Line internal identifier */ + /** SPM (Subscription Plan Management) invoice line internal identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM Invoice Line internal identifier + * SPM (Subscription Plan Management) invoice line internal identifier. * * @return the value */ @@ -205,12 +205,12 @@ public InvoicingProduct getProduct() { return product; } - /** AR Invoice Number for Invoice Line */ + /** Accounts receivable invoice number for invoice line. */ @com.fasterxml.jackson.annotation.JsonProperty("arInvoiceNumber") private final String arInvoiceNumber; /** - * AR Invoice Number for Invoice Line + * Accounts receivable invoice number for invoice line. * * @return the value */ @@ -218,12 +218,12 @@ public String getArInvoiceNumber() { return arInvoiceNumber; } - /** Data Center Attribute. */ + /** Data center attribute. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private final String dataCenter; /** - * Data Center Attribute. + * Data center attribute. * * @return the value */ @@ -231,12 +231,12 @@ public String getDataCenter() { return dataCenter; } - /** Usage start time */ + /** Usage start time. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Usage start time + * Usage start time. * * @return the value */ @@ -244,12 +244,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Usage end time */ + /** Usage end time. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Usage end time + * Usage end time. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceSummary.java index 56569cac572..101750d6970 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoiceSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Invoice details
+ * Invoice details.
* 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 @@ -87,12 +87,16 @@ public InvoiceSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM Document Number is an functional identifier for invoice in SPM */ + /** + * SPM (Subscription Plan Management) document number is a functional identifier for + * invoicing in SPM. + */ @com.fasterxml.jackson.annotation.JsonProperty("spmInvoiceNumber") private String spmInvoiceNumber; /** - * SPM Document Number is an functional identifier for invoice in SPM + * SPM (Subscription Plan Management) document number is a functional identifier for + * invoicing in SPM. * * @param spmInvoiceNumber the value to set * @return this builder @@ -102,12 +106,12 @@ public Builder spmInvoiceNumber(String spmInvoiceNumber) { this.__explicitlySet__.add("spmInvoiceNumber"); return this; } - /** AR Invoice Numbers comma separated under one invoice */ + /** Accounts receivable invoice numbers, comma-separated under one invoice. */ @com.fasterxml.jackson.annotation.JsonProperty("arInvoices") private String arInvoices; /** - * AR Invoice Numbers comma separated under one invoice + * Accounts receivable invoice numbers, comma-separated under one invoice. * * @param arInvoices the value to set * @return this builder @@ -144,12 +148,12 @@ public Builder billToAddress(InvoicingAddress billToAddress) { this.__explicitlySet__.add("billToAddress"); return this; } - /** Payment Method */ + /** Payment method. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentMethod") private String paymentMethod; /** - * Payment Method + * Payment method. * * @param paymentMethod the value to set * @return this builder @@ -168,12 +172,12 @@ public Builder paymentTerm(InvoicingPaymentTerm paymentTerm) { this.__explicitlySet__.add("paymentTerm"); return this; } - /** Receipt Method of Payment Mode */ + /** Receipt method of payment mode. */ @com.fasterxml.jackson.annotation.JsonProperty("receiptMethod") private String receiptMethod; /** - * Receipt Method of Payment Mode + * Receipt method of payment mode. * * @param receiptMethod the value to set * @return this builder @@ -201,12 +205,12 @@ public Builder organization(InvoicingOrganization organization) { this.__explicitlySet__.add("organization"); return this; } - /** Document Type in SPM like SPM Invoice,SPM Credit Memo etc., */ + /** Document type in SPM, such as SPM Invoice, SPM Credit Memo, and so on. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private String type; /** - * Document Type in SPM like SPM Invoice,SPM Credit Memo etc., + * Document type in SPM, such as SPM Invoice, SPM Credit Memo, and so on. * * @param type the value to set * @return this builder @@ -216,12 +220,12 @@ public Builder type(String type) { this.__explicitlySet__.add("type"); return this; } - /** Document Status in SPM which depicts current state of invoice */ + /** Document status in SPM, which depicts the current invoice state. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private String status; /** - * Document Status in SPM which depicts current state of invoice + * Document status in SPM, which depicts the current invoice state. * * @param status the value to set * @return this builder @@ -246,12 +250,12 @@ public Builder subscriptionNumber(String subscriptionNumber) { this.__explicitlySet__.add("subscriptionNumber"); return this; } - /** Invoice Date */ + /** Invoice date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeInvoiceDate") private java.util.Date timeInvoiceDate; /** - * Invoice Date + * Invoice date. * * @param timeInvoiceDate the value to set * @return this builder @@ -261,12 +265,12 @@ public Builder timeInvoiceDate(java.util.Date timeInvoiceDate) { this.__explicitlySet__.add("timeInvoiceDate"); return this; } - /** SPM Invocie creation date */ + /** SPM invocie creation date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * SPM Invocie creation date + * SPM invocie creation date. * * @param timeCreated the value to set * @return this builder @@ -276,12 +280,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** User that executed SPM Invoice process */ + /** User that executed the SPM invoice process. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private String createdBy; /** - * User that executed SPM Invoice process + * User that executed the SPM invoice process. * * @param createdBy the value to set * @return this builder @@ -291,12 +295,12 @@ public Builder createdBy(String createdBy) { this.__explicitlySet__.add("createdBy"); return this; } - /** SPM Invoice updated date */ + /** SPM invoice updated date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * SPM Invoice updated date + * SPM invoice updated date. * * @param timeUpdated the value to set * @return this builder @@ -306,12 +310,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** User that updated SPM Invoice */ + /** User that updated the SPM invoice. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private String updatedBy; /** - * User that updated SPM Invoice + * User that updated the SPM invoice. * * @param updatedBy the value to set * @return this builder @@ -321,12 +325,12 @@ public Builder updatedBy(String updatedBy) { this.__explicitlySet__.add("updatedBy"); return this; } - /** Invoice Lines under particular invoice. */ + /** Invoice lines under a particular invoice. */ @com.fasterxml.jackson.annotation.JsonProperty("invoiceLines") private java.util.List invoiceLines; /** - * Invoice Lines under particular invoice. + * Invoice lines under a particular invoice. * * @param invoiceLines the value to set * @return this builder @@ -440,12 +444,16 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM Document Number is an functional identifier for invoice in SPM */ + /** + * SPM (Subscription Plan Management) document number is a functional identifier for invoicing + * in SPM. + */ @com.fasterxml.jackson.annotation.JsonProperty("spmInvoiceNumber") private final String spmInvoiceNumber; /** - * SPM Document Number is an functional identifier for invoice in SPM + * SPM (Subscription Plan Management) document number is a functional identifier for invoicing + * in SPM. * * @return the value */ @@ -453,12 +461,12 @@ public String getSpmInvoiceNumber() { return spmInvoiceNumber; } - /** AR Invoice Numbers comma separated under one invoice */ + /** Accounts receivable invoice numbers, comma-separated under one invoice. */ @com.fasterxml.jackson.annotation.JsonProperty("arInvoices") private final String arInvoices; /** - * AR Invoice Numbers comma separated under one invoice + * Accounts receivable invoice numbers, comma-separated under one invoice. * * @return the value */ @@ -487,12 +495,12 @@ public InvoicingAddress getBillToAddress() { return billToAddress; } - /** Payment Method */ + /** Payment method. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentMethod") private final String paymentMethod; /** - * Payment Method + * Payment method. * * @return the value */ @@ -507,12 +515,12 @@ public InvoicingPaymentTerm getPaymentTerm() { return paymentTerm; } - /** Receipt Method of Payment Mode */ + /** Receipt method of payment mode. */ @com.fasterxml.jackson.annotation.JsonProperty("receiptMethod") private final String receiptMethod; /** - * Receipt Method of Payment Mode + * Receipt method of payment mode. * * @return the value */ @@ -534,12 +542,12 @@ public InvoicingOrganization getOrganization() { return organization; } - /** Document Type in SPM like SPM Invoice,SPM Credit Memo etc., */ + /** Document type in SPM, such as SPM Invoice, SPM Credit Memo, and so on. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private final String type; /** - * Document Type in SPM like SPM Invoice,SPM Credit Memo etc., + * Document type in SPM, such as SPM Invoice, SPM Credit Memo, and so on. * * @return the value */ @@ -547,12 +555,12 @@ public String getType() { return type; } - /** Document Status in SPM which depicts current state of invoice */ + /** Document status in SPM, which depicts the current invoice state. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private final String status; /** - * Document Status in SPM which depicts current state of invoice + * Document status in SPM, which depicts the current invoice state. * * @return the value */ @@ -573,12 +581,12 @@ public String getSubscriptionNumber() { return subscriptionNumber; } - /** Invoice Date */ + /** Invoice date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeInvoiceDate") private final java.util.Date timeInvoiceDate; /** - * Invoice Date + * Invoice date. * * @return the value */ @@ -586,12 +594,12 @@ public java.util.Date getTimeInvoiceDate() { return timeInvoiceDate; } - /** SPM Invocie creation date */ + /** SPM invocie creation date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * SPM Invocie creation date + * SPM invocie creation date. * * @return the value */ @@ -599,12 +607,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** User that executed SPM Invoice process */ + /** User that executed the SPM invoice process. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private final String createdBy; /** - * User that executed SPM Invoice process + * User that executed the SPM invoice process. * * @return the value */ @@ -612,12 +620,12 @@ public String getCreatedBy() { return createdBy; } - /** SPM Invoice updated date */ + /** SPM invoice updated date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * SPM Invoice updated date + * SPM invoice updated date. * * @return the value */ @@ -625,12 +633,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** User that updated SPM Invoice */ + /** User that updated the SPM invoice. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private final String updatedBy; /** - * User that updated SPM Invoice + * User that updated the SPM invoice. * * @return the value */ @@ -638,12 +646,12 @@ public String getUpdatedBy() { return updatedBy; } - /** Invoice Lines under particular invoice. */ + /** Invoice lines under a particular invoice. */ @com.fasterxml.jackson.annotation.JsonProperty("invoiceLines") private final java.util.List invoiceLines; /** - * Invoice Lines under particular invoice. + * Invoice lines under a particular invoice. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicelineComputedUsageSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicelineComputedUsageSummary.java index 855c12129c8..01d2c6810d7 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicelineComputedUsageSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicelineComputedUsageSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Computed Usage Summary object
+ * Computed usage summary object.
* 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 @@ -73,12 +73,12 @@ public Builder product(InvoicingProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private Double quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @param quantity the value to set * @return this builder @@ -88,12 +88,12 @@ public Builder quantity(Double quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Net Unit Price for the product in consideration, price actual. */ + /** Net unit price for the product in consideration, price actual. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private Double netUnitPrice; /** - * Net Unit Price for the product in consideration, price actual. + * Net unit price for the product in consideration, price actual. * * @param netUnitPrice the value to set * @return this builder @@ -103,12 +103,12 @@ public Builder netUnitPrice(Double netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Metered Service date. */ + /** Metered service date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private java.util.Date timeMeteredOn; /** - * Metered Service date. + * Metered service date. * * @param timeMeteredOn the value to set * @return this builder @@ -118,12 +118,12 @@ public Builder timeMeteredOn(java.util.Date timeMeteredOn) { this.__explicitlySet__.add("timeMeteredOn"); return this; } - /** Usage compute type in SPM. */ + /** Usage compute type in SPM (Subscription Plan Management). */ @com.fasterxml.jackson.annotation.JsonProperty("type") private Type type; /** - * Usage compute type in SPM. + * Usage compute type in SPM (Subscription Plan Management). * * @param type the value to set * @return this builder @@ -133,12 +133,12 @@ public Builder type(Type type) { this.__explicitlySet__.add("type"); return this; } - /** Sum of Usage/Service Billing Line net Amount */ + /** Sum of usage/service billing line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private Double cost; /** - * Sum of Usage/Service Billing Line net Amount + * Sum of usage/service billing line net amount. * * @param cost the value to set * @return this builder @@ -148,12 +148,12 @@ public Builder cost(Double cost) { this.__explicitlySet__.add("cost"); return this; } - /** Computed Line Amount rounded. */ + /** Computed rounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costRounded") private Double costRounded; /** - * Computed Line Amount rounded. + * Computed rounded line amount. * * @param costRounded the value to set * @return this builder @@ -237,12 +237,12 @@ public InvoicingProduct getProduct() { return product; } - /** Total Quantity that was used for computation */ + /** Total quantity that was used for computation. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final Double quantity; /** - * Total Quantity that was used for computation + * Total quantity that was used for computation. * * @return the value */ @@ -250,12 +250,12 @@ public Double getQuantity() { return quantity; } - /** Net Unit Price for the product in consideration, price actual. */ + /** Net unit price for the product in consideration, price actual. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final Double netUnitPrice; /** - * Net Unit Price for the product in consideration, price actual. + * Net unit price for the product in consideration, price actual. * * @return the value */ @@ -263,12 +263,12 @@ public Double getNetUnitPrice() { return netUnitPrice; } - /** Metered Service date. */ + /** Metered service date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMeteredOn") private final java.util.Date timeMeteredOn; /** - * Metered Service date. + * Metered service date. * * @return the value */ @@ -276,7 +276,7 @@ public java.util.Date getTimeMeteredOn() { return timeMeteredOn; } - /** Usage compute type in SPM. */ + /** Usage compute type in SPM (Subscription Plan Management). */ public enum Type implements com.oracle.bmc.http.internal.BmcEnum { Promotion("PROMOTION"), DoNotBill("DO_NOT_BILL"), @@ -329,12 +329,12 @@ public static Type create(String key) { return UnknownEnumValue; } }; - /** Usage compute type in SPM. */ + /** Usage compute type in SPM (Subscription Plan Management). */ @com.fasterxml.jackson.annotation.JsonProperty("type") private final Type type; /** - * Usage compute type in SPM. + * Usage compute type in SPM (Subscription Plan Management). * * @return the value */ @@ -342,12 +342,12 @@ public Type getType() { return type; } - /** Sum of Usage/Service Billing Line net Amount */ + /** Sum of usage/service billing line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("cost") private final Double cost; /** - * Sum of Usage/Service Billing Line net Amount + * Sum of usage/service billing line net amount. * * @return the value */ @@ -355,12 +355,12 @@ public Double getCost() { return cost; } - /** Computed Line Amount rounded. */ + /** Computed rounded line amount. */ @com.fasterxml.jackson.annotation.JsonProperty("costRounded") private final Double costRounded; /** - * Computed Line Amount rounded. + * Computed rounded line amount. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingAddress.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingAddress.java index 7c6e8991b99..e782a2c506c 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingAddress.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingAddress.java @@ -126,12 +126,12 @@ public Builder isShipTo(Boolean isShipTo) { this.__explicitlySet__.add("isShipTo"); return this; } - /** Bill to site use Id. */ + /** Bill to site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("billSiteUseId") private Long billSiteUseId; /** - * Bill to site use Id. + * Bill to site use ID. * * @param billSiteUseId the value to set * @return this builder @@ -141,12 +141,12 @@ public Builder billSiteUseId(Long billSiteUseId) { this.__explicitlySet__.add("billSiteUseId"); return this; } - /** Service to site use Id. */ + /** Service to site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("service2SiteUseId") private Long service2SiteUseId; /** - * Service to site use Id. + * Service to site use ID. * * @param service2SiteUseId the value to set * @return this builder @@ -156,12 +156,12 @@ public Builder service2SiteUseId(Long service2SiteUseId) { this.__explicitlySet__.add("service2SiteUseId"); return this; } - /** TCA customer account site Id. */ + /** TCA (Trading Community Architecture) customer account site ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustAcctSiteId") private Long tcaCustAcctSiteId; /** - * TCA customer account site Id. + * TCA (Trading Community Architecture) customer account site ID. * * @param tcaCustAcctSiteId the value to set * @return this builder @@ -309,12 +309,12 @@ public Boolean getIsShipTo() { return isShipTo; } - /** Bill to site use Id. */ + /** Bill to site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("billSiteUseId") private final Long billSiteUseId; /** - * Bill to site use Id. + * Bill to site use ID. * * @return the value */ @@ -322,12 +322,12 @@ public Long getBillSiteUseId() { return billSiteUseId; } - /** Service to site use Id. */ + /** Service to site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("service2SiteUseId") private final Long service2SiteUseId; /** - * Service to site use Id. + * Service to site use ID. * * @return the value */ @@ -335,12 +335,12 @@ public Long getService2SiteUseId() { return service2SiteUseId; } - /** TCA customer account site Id. */ + /** TCA (Trading Community Architecture) customer account site ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustAcctSiteId") private final Long tcaCustAcctSiteId; /** - * TCA customer account site Id. + * TCA (Trading Community Architecture) customer account site ID. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingBusinessPartner.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingBusinessPartner.java index 5f9b5aedfb0..4dcc4ce48b2 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingBusinessPartner.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingBusinessPartner.java @@ -58,12 +58,12 @@ public InvoicingBusinessPartner( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Commercial name also called customer name. */ + /** Commercial name, also referred to as customer name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Commercial name also called customer name. + * Commercial name, also referred to as customer name. * * @param name the value to set * @return this builder @@ -88,12 +88,12 @@ public Builder namePhonetic(String namePhonetic) { this.__explicitlySet__.add("namePhonetic"); return this; } - /** TCA customer account number. */ + /** TCA (Trading Community Architecture) customer account number. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustomerAccountNumber") private String tcaCustomerAccountNumber; /** - * TCA customer account number. + * TCA (Trading Community Architecture) customer account number. * * @param tcaCustomerAccountNumber the value to set * @return this builder @@ -103,12 +103,12 @@ public Builder tcaCustomerAccountNumber(String tcaCustomerAccountNumber) { this.__explicitlySet__.add("tcaCustomerAccountNumber"); return this; } - /** The business partner is part of the public sector or not. */ + /** Specifies whether or not the business partner is part of the public sector. */ @com.fasterxml.jackson.annotation.JsonProperty("isPublicSector") private Boolean isPublicSector; /** - * The business partner is part of the public sector or not. + * Specifies whether or not the business partner is part of the public sector. * * @param isPublicSector the value to set * @return this builder @@ -118,12 +118,12 @@ public Builder isPublicSector(Boolean isPublicSector) { this.__explicitlySet__.add("isPublicSector"); return this; } - /** The business partner is chain customer or not. */ + /** Specifies whether or not the business partner is a chain customer. */ @com.fasterxml.jackson.annotation.JsonProperty("isChainCustomer") private Boolean isChainCustomer; /** - * The business partner is chain customer or not. + * Specifies whether or not the business partner is a chain customer. * * @param isChainCustomer the value to set * @return this builder @@ -257,12 +257,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Commercial name also called customer name. */ + /** Commercial name, also referred to as customer name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Commercial name also called customer name. + * Commercial name, also referred to as customer name. * * @return the value */ @@ -283,12 +283,12 @@ public String getNamePhonetic() { return namePhonetic; } - /** TCA customer account number. */ + /** TCA (Trading Community Architecture) customer account number. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustomerAccountNumber") private final String tcaCustomerAccountNumber; /** - * TCA customer account number. + * TCA (Trading Community Architecture) customer account number. * * @return the value */ @@ -296,12 +296,12 @@ public String getTcaCustomerAccountNumber() { return tcaCustomerAccountNumber; } - /** The business partner is part of the public sector or not. */ + /** Specifies whether or not the business partner is part of the public sector. */ @com.fasterxml.jackson.annotation.JsonProperty("isPublicSector") private final Boolean isPublicSector; /** - * The business partner is part of the public sector or not. + * Specifies whether or not the business partner is part of the public sector. * * @return the value */ @@ -309,12 +309,12 @@ public Boolean getIsPublicSector() { return isPublicSector; } - /** The business partner is chain customer or not. */ + /** Specifies whether or not the business partner is a chain customer. */ @com.fasterxml.jackson.annotation.JsonProperty("isChainCustomer") private final Boolean isChainCustomer; /** - * The business partner is chain customer or not. + * Specifies whether or not the business partner is a chain customer. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingCurrency.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingCurrency.java index 324fac91f0b..7ab3d2866e8 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingCurrency.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingCurrency.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Currency details
+ * Currency details.
* 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 @@ -33,12 +33,12 @@ public InvoicingCurrency(String name, String isoCode, Long stdPrecision) { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Currency name */ + /** Currency name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Currency name + * Currency name. * * @param name the value to set * @return this builder @@ -48,12 +48,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Currency Code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("isoCode") private String isoCode; /** - * Currency Code + * Currency code. * * @param isoCode the value to set * @return this builder @@ -63,12 +63,12 @@ public Builder isoCode(String isoCode) { this.__explicitlySet__.add("isoCode"); return this; } - /** Standard Precision of the Currency */ + /** Standard precision of the currency. */ @com.fasterxml.jackson.annotation.JsonProperty("stdPrecision") private Long stdPrecision; /** - * Standard Precision of the Currency + * Standard precision of the currency. * * @param stdPrecision the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Currency name */ + /** Currency name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Currency name + * Currency name. * * @return the value */ @@ -128,12 +128,12 @@ public String getName() { return name; } - /** Currency Code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("isoCode") private final String isoCode; /** - * Currency Code + * Currency code. * * @return the value */ @@ -141,12 +141,12 @@ public String getIsoCode() { return isoCode; } - /** Standard Precision of the Currency */ + /** Standard precision of the currency. */ @com.fasterxml.jackson.annotation.JsonProperty("stdPrecision") private final Long stdPrecision; /** - * Standard Precision of the Currency + * Standard precision of the currency. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingLocation.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingLocation.java index 354f2bbc68a..1942e7ade36 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingLocation.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingLocation.java @@ -142,12 +142,12 @@ public Builder region(String region) { this.__explicitlySet__.add("region"); return this; } - /** TCA Location identifier. */ + /** TCA (Trading Community Architecture) location identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaLocationId") private Long tcaLocationId; /** - * TCA Location identifier. + * TCA (Trading Community Architecture) location identifier. * * @param tcaLocationId the value to set * @return this builder @@ -291,12 +291,12 @@ public String getRegion() { return region; } - /** TCA Location identifier. */ + /** TCA (Trading Community Architecture) location identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaLocationId") private final Long tcaLocationId; /** - * TCA Location identifier. + * TCA (Trading Community Architecture) location identifier. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingOrganization.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingOrganization.java index 8b598902e11..34c09a6d692 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingOrganization.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingOrganization.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Organization details
+ * Organization details.
* 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 @@ -32,12 +32,12 @@ public InvoicingOrganization(String name, Double number) { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Organization name */ + /** Organization name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Organization name + * Organization name. * * @param name the value to set * @return this builder @@ -47,12 +47,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Organization ID */ + /** Organization ID. */ @com.fasterxml.jackson.annotation.JsonProperty("number") private Double number; /** - * Organization ID + * Organization ID. * * @param number the value to set * @return this builder @@ -95,12 +95,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Organization name */ + /** Organization name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Organization name + * Organization name. * * @return the value */ @@ -108,12 +108,12 @@ public String getName() { return name; } - /** Organization ID */ + /** Organization ID. */ @com.fasterxml.jackson.annotation.JsonProperty("number") private final Double number; /** - * Organization ID + * Organization ID. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingPaymentTerm.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingPaymentTerm.java index 86a6157e9c9..9cd8aa6ba27 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingPaymentTerm.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingPaymentTerm.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Payment Term details
+ * Payment term details.
* 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 @@ -55,12 +55,12 @@ public InvoicingPaymentTerm( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Payment Term name */ + /** Payment term name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Payment Term name + * Payment term name. * * @param name the value to set * @return this builder @@ -70,12 +70,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Payment Term value */ + /** Payment term value. */ @com.fasterxml.jackson.annotation.JsonProperty("value") private String value; /** - * Payment Term value + * Payment term value. * * @param value the value to set * @return this builder @@ -85,12 +85,12 @@ public Builder value(String value) { this.__explicitlySet__.add("value"); return this; } - /** Payment term Description */ + /** Payment term description. */ @com.fasterxml.jackson.annotation.JsonProperty("description") private String description; /** - * Payment term Description + * Payment term description. * * @param description the value to set * @return this builder @@ -100,12 +100,12 @@ public Builder description(String description) { this.__explicitlySet__.add("description"); return this; } - /** Payment term active flag */ + /** Payment term active parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isActive") private Boolean isActive; /** - * Payment term active flag + * Payment term active parameter. * * @param isActive the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder isActive(Boolean isActive) { this.__explicitlySet__.add("isActive"); return this; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * Payment term last update date + * Payment term last update date. * * @param timeCreated the value to set * @return this builder @@ -130,12 +130,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** User that created the Payment term */ + /** User that created the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private String createdBy; /** - * User that created the Payment term + * User that created the payment term. * * @param createdBy the value to set * @return this builder @@ -145,12 +145,12 @@ public Builder createdBy(String createdBy) { this.__explicitlySet__.add("createdBy"); return this; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * Payment term last update date + * Payment term last update date. * * @param timeUpdated the value to set * @return this builder @@ -160,12 +160,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** User that updated the Payment term */ + /** User that updated the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private String updatedBy; /** - * User that updated the Payment term + * User that updated the payment term. * * @param updatedBy the value to set * @return this builder @@ -235,12 +235,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Payment Term name */ + /** Payment term name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Payment Term name + * Payment term name. * * @return the value */ @@ -248,12 +248,12 @@ public String getName() { return name; } - /** Payment Term value */ + /** Payment term value. */ @com.fasterxml.jackson.annotation.JsonProperty("value") private final String value; /** - * Payment Term value + * Payment term value. * * @return the value */ @@ -261,12 +261,12 @@ public String getValue() { return value; } - /** Payment term Description */ + /** Payment term description. */ @com.fasterxml.jackson.annotation.JsonProperty("description") private final String description; /** - * Payment term Description + * Payment term description. * * @return the value */ @@ -274,12 +274,12 @@ public String getDescription() { return description; } - /** Payment term active flag */ + /** Payment term active parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isActive") private final Boolean isActive; /** - * Payment term active flag + * Payment term active parameter. * * @return the value */ @@ -287,12 +287,12 @@ public Boolean getIsActive() { return isActive; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * Payment term last update date + * Payment term last update date. * * @return the value */ @@ -300,12 +300,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** User that created the Payment term */ + /** User that created the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private final String createdBy; /** - * User that created the Payment term + * User that created the payment term. * * @return the value */ @@ -313,12 +313,12 @@ public String getCreatedBy() { return createdBy; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * Payment term last update date + * Payment term last update date. * * @return the value */ @@ -326,12 +326,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** User that updated the Payment term */ + /** User that updated the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private final String updatedBy; /** - * User that updated the Payment term + * User that updated the payment term. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingProduct.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingProduct.java index b39106fab84..525c375bcd6 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingProduct.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingProduct.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Product description
+ * Product description.
* 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 @@ -48,12 +48,12 @@ public InvoicingProduct( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Product part number */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private String partNumber; /** - * Product part number + * Product part number. * * @param partNumber the value to set * @return this builder @@ -63,12 +63,12 @@ public Builder partNumber(String partNumber) { this.__explicitlySet__.add("partNumber"); return this; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Product name + * Product name. * * @param name the value to set * @return this builder @@ -78,12 +78,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Unit of Measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private String unitOfMeasure; /** - * Unit of Measure + * Unit of measure. * * @param unitOfMeasure the value to set * @return this builder @@ -93,12 +93,12 @@ public Builder unitOfMeasure(String unitOfMeasure) { this.__explicitlySet__.add("unitOfMeasure"); return this; } - /** Metered service billing category */ + /** Metered service billing category. */ @com.fasterxml.jackson.annotation.JsonProperty("billingCategory") private String billingCategory; /** - * Metered service billing category + * Metered service billing category. * * @param billingCategory the value to set * @return this builder @@ -108,12 +108,12 @@ public Builder billingCategory(String billingCategory) { this.__explicitlySet__.add("billingCategory"); return this; } - /** Product category */ + /** Product category. */ @com.fasterxml.jackson.annotation.JsonProperty("productCategory") private String productCategory; /** - * Product category + * Product category. * * @param productCategory the value to set * @return this builder @@ -123,12 +123,12 @@ public Builder productCategory(String productCategory) { this.__explicitlySet__.add("productCategory"); return this; } - /** Rate card part type of Product */ + /** Rate card part type of product. */ @com.fasterxml.jackson.annotation.JsonProperty("ucmRateCardPartType") private String ucmRateCardPartType; /** - * Rate card part type of Product + * Rate card part type of product. * * @param ucmRateCardPartType the value to set * @return this builder @@ -190,12 +190,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Product part number */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private final String partNumber; /** - * Product part number + * Product part number. * * @return the value */ @@ -203,12 +203,12 @@ public String getPartNumber() { return partNumber; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Product name + * Product name. * * @return the value */ @@ -216,12 +216,12 @@ public String getName() { return name; } - /** Unit of Measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private final String unitOfMeasure; /** - * Unit of Measure + * Unit of measure. * * @return the value */ @@ -229,12 +229,12 @@ public String getUnitOfMeasure() { return unitOfMeasure; } - /** Metered service billing category */ + /** Metered service billing category. */ @com.fasterxml.jackson.annotation.JsonProperty("billingCategory") private final String billingCategory; /** - * Metered service billing category + * Metered service billing category. * * @return the value */ @@ -242,12 +242,12 @@ public String getBillingCategory() { return billingCategory; } - /** Product category */ + /** Product category. */ @com.fasterxml.jackson.annotation.JsonProperty("productCategory") private final String productCategory; /** - * Product category + * Product category. * * @return the value */ @@ -255,12 +255,12 @@ public String getProductCategory() { return productCategory; } - /** Rate card part type of Product */ + /** Rate card part type of product. */ @com.fasterxml.jackson.annotation.JsonProperty("ucmRateCardPartType") private final String ucmRateCardPartType; /** - * Rate card part type of Product + * Rate card part type of product. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingUser.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingUser.java index 81caa9be771..61f1eec39cc 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingUser.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/InvoicingUser.java @@ -68,12 +68,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** userName. */ + /** User name. */ @com.fasterxml.jackson.annotation.JsonProperty("userName") private String userName; /** - * userName. + * User name. * * @param userName the value to set * @return this builder @@ -128,12 +128,12 @@ public Builder email(String email) { this.__explicitlySet__.add("email"); return this; } - /** TCA contact ID. */ + /** TCA (Trading Community Architecture) contact ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaContactId") private Long tcaContactId; /** - * TCA contact ID. + * TCA (Trading Community Architecture) contact ID. * * @param tcaContactId the value to set * @return this builder @@ -246,12 +246,12 @@ public String getName() { return name; } - /** userName. */ + /** User name. */ @com.fasterxml.jackson.annotation.JsonProperty("userName") private final String userName; /** - * userName. + * User name. * * @return the value */ @@ -298,12 +298,12 @@ public String getEmail() { return email; } - /** TCA contact ID. */ + /** TCA (Trading Community Architecture) contact ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaContactId") private final Long tcaContactId; /** - * TCA contact ID. + * TCA (Trading Community Architecture) contact ID. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrganizationSubscriptionSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrganizationSubscriptionSummary.java index 89931e43e24..8fe6bee0451 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrganizationSubscriptionSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrganizationSubscriptionSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscription summary
+ * Subscription summary.
* 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 @@ -55,12 +55,12 @@ public OrganizationSubscriptionSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Subscription ID */ + /** SPM (Subscription Plan Management) internal subscription ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM internal Subscription ID + * SPM (Subscription Plan Management) internal subscription ID. * * @param id the value to set * @return this builder @@ -70,12 +70,12 @@ public Builder id(String id) { this.__explicitlySet__.add("id"); return this; } - /** Customer friendly service name provided by PRG */ + /** Customer-friendly service name provided by the PRG (Product Release Group). */ @com.fasterxml.jackson.annotation.JsonProperty("serviceName") private String serviceName; /** - * Customer friendly service name provided by PRG + * Customer-friendly service name provided by the PRG (Product Release Group). * * @param serviceName the value to set * @return this builder @@ -85,12 +85,12 @@ public Builder serviceName(String serviceName) { this.__explicitlySet__.add("serviceName"); return this; } - /** Subscription Type i.e. IAAS,SAAS,PAAS */ + /** Subscription type, whether IaaS, SaaS, PaaS. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private String type; /** - * Subscription Type i.e. IAAS,SAAS,PAAS + * Subscription type, whether IaaS, SaaS, PaaS. * * @param type the value to set * @return this builder @@ -100,12 +100,12 @@ public Builder type(String type) { this.__explicitlySet__.add("type"); return this; } - /** Status of the plan */ + /** Plan status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private String status; /** - * Status of the plan + * Plan status. * * @param status the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder status(String status) { this.__explicitlySet__.add("status"); return this; } - /** Represents the date when the first service of the subscription was activated */ + /** The date when the first service of the subscription was activated. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Represents the date when the first service of the subscription was activated + * The date when the first service of the subscription was activated. * * @param timeStart the value to set * @return this builder @@ -130,12 +130,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Represents the date when the last service of the subscription ends */ + /** The date when the last service of the subscription ends. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Represents the date when the last service of the subscription ends + * The date when the last service of the subscription ends. * * @param timeEnd the value to set * @return this builder @@ -155,15 +155,15 @@ public Builder currency(OrgnizationSubsCurrency currency) { return this; } /** - * Total aggregate TCLV of all lines for the subscription including expired, active, and - * signed + * Total aggregate TCLV of all lines for the subscription, including expired, active, and + * signed. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private String totalValue; /** - * Total aggregate TCLV of all lines for the subscription including expired, active, and - * signed + * Total aggregate TCLV of all lines for the subscription, including expired, active, and + * signed. * * @param totalValue the value to set * @return this builder @@ -233,12 +233,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Subscription ID */ + /** SPM (Subscription Plan Management) internal subscription ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM internal Subscription ID + * SPM (Subscription Plan Management) internal subscription ID. * * @return the value */ @@ -246,12 +246,12 @@ public String getId() { return id; } - /** Customer friendly service name provided by PRG */ + /** Customer-friendly service name provided by the PRG (Product Release Group). */ @com.fasterxml.jackson.annotation.JsonProperty("serviceName") private final String serviceName; /** - * Customer friendly service name provided by PRG + * Customer-friendly service name provided by the PRG (Product Release Group). * * @return the value */ @@ -259,12 +259,12 @@ public String getServiceName() { return serviceName; } - /** Subscription Type i.e. IAAS,SAAS,PAAS */ + /** Subscription type, whether IaaS, SaaS, PaaS. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private final String type; /** - * Subscription Type i.e. IAAS,SAAS,PAAS + * Subscription type, whether IaaS, SaaS, PaaS. * * @return the value */ @@ -272,12 +272,12 @@ public String getType() { return type; } - /** Status of the plan */ + /** Plan status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private final String status; /** - * Status of the plan + * Plan status. * * @return the value */ @@ -285,12 +285,12 @@ public String getStatus() { return status; } - /** Represents the date when the first service of the subscription was activated */ + /** The date when the first service of the subscription was activated. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Represents the date when the first service of the subscription was activated + * The date when the first service of the subscription was activated. * * @return the value */ @@ -298,12 +298,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Represents the date when the last service of the subscription ends */ + /** The date when the last service of the subscription ends. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Represents the date when the last service of the subscription ends + * The date when the last service of the subscription ends. * * @return the value */ @@ -319,13 +319,15 @@ public OrgnizationSubsCurrency getCurrency() { } /** - * Total aggregate TCLV of all lines for the subscription including expired, active, and signed + * Total aggregate TCLV of all lines for the subscription, including expired, active, and + * signed. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private final String totalValue; /** - * Total aggregate TCLV of all lines for the subscription including expired, active, and signed + * Total aggregate TCLV of all lines for the subscription, including expired, active, and + * signed. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrgnizationSubsCurrency.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrgnizationSubsCurrency.java index 326e3f66ae8..fbcdd689fc1 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrgnizationSubsCurrency.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/OrgnizationSubsCurrency.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Currency details
+ * Currency details.
* 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 @@ -33,12 +33,12 @@ public OrgnizationSubsCurrency(String name, String isoCode, Long stdPrecision) { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Currency name */ + /** Currency name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Currency name + * Currency name. * * @param name the value to set * @return this builder @@ -48,12 +48,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Currency Code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("isoCode") private String isoCode; /** - * Currency Code + * Currency code. * * @param isoCode the value to set * @return this builder @@ -63,12 +63,12 @@ public Builder isoCode(String isoCode) { this.__explicitlySet__.add("isoCode"); return this; } - /** Standard Precision of the Currency */ + /** Standard precision of the currency. */ @com.fasterxml.jackson.annotation.JsonProperty("stdPrecision") private Long stdPrecision; /** - * Standard Precision of the Currency + * Standard precision of the currency. * * @param stdPrecision the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Currency name */ + /** Currency name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Currency name + * Currency name. * * @return the value */ @@ -128,12 +128,12 @@ public String getName() { return name; } - /** Currency Code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("isoCode") private final String isoCode; /** - * Currency Code + * Currency code. * * @return the value */ @@ -141,12 +141,12 @@ public String getIsoCode() { return isoCode; } - /** Standard Precision of the Currency */ + /** Standard precision of the currency. */ @com.fasterxml.jackson.annotation.JsonProperty("stdPrecision") private final Long stdPrecision; /** - * Standard Precision of the Currency + * Standard precision of the currency. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ProductAndService.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ProductAndService.java new file mode 100644 index 00000000000..9e48f3d0824 --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/ProductAndService.java @@ -0,0 +1,373 @@ +/** + * 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.onesubscription.model; + +/** + * Authorization-order product or service that draws down from the subscription.
+ * 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: 20190111") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ProductAndService.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ProductAndService + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "subId", + "serviceName", + "timeStart", + "timeEnd", + "amountAuthorized", + "amountProvisioned", + "amountConsumed" + }) + public ProductAndService( + String subId, + String serviceName, + java.util.Date timeStart, + java.util.Date timeEnd, + Double amountAuthorized, + Double amountProvisioned, + Double amountConsumed) { + super(); + this.subId = subId; + this.serviceName = serviceName; + this.timeStart = timeStart; + this.timeEnd = timeEnd; + this.amountAuthorized = amountAuthorized; + this.amountProvisioned = amountProvisioned; + this.amountConsumed = amountConsumed; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Subscription identifier; may be blank for non-cloud transactions. */ + @com.fasterxml.jackson.annotation.JsonProperty("subId") + private String subId; + + /** + * Subscription identifier; may be blank for non-cloud transactions. + * + * @param subId the value to set + * @return this builder + */ + public Builder subId(String subId) { + this.subId = subId; + this.__explicitlySet__.add("subId"); + return this; + } + /** Name of the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the product or service. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** Start date and time for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStart") + private java.util.Date timeStart; + + /** + * Start date and time for the product or service. + * + * @param timeStart the value to set + * @return this builder + */ + public Builder timeStart(java.util.Date timeStart) { + this.timeStart = timeStart; + this.__explicitlySet__.add("timeStart"); + return this; + } + /** End date and time for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") + private java.util.Date timeEnd; + + /** + * End date and time for the product or service. + * + * @param timeEnd the value to set + * @return this builder + */ + public Builder timeEnd(java.util.Date timeEnd) { + this.timeEnd = timeEnd; + this.__explicitlySet__.add("timeEnd"); + return this; + } + /** Amount authorized for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAuthorized") + private Double amountAuthorized; + + /** + * Amount authorized for the product or service. + * + * @param amountAuthorized the value to set + * @return this builder + */ + public Builder amountAuthorized(Double amountAuthorized) { + this.amountAuthorized = amountAuthorized; + this.__explicitlySet__.add("amountAuthorized"); + return this; + } + /** Amount provisioned for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountProvisioned") + private Double amountProvisioned; + + /** + * Amount provisioned for the product or service. + * + * @param amountProvisioned the value to set + * @return this builder + */ + public Builder amountProvisioned(Double amountProvisioned) { + this.amountProvisioned = amountProvisioned; + this.__explicitlySet__.add("amountProvisioned"); + return this; + } + /** Amount consumed by the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountConsumed") + private Double amountConsumed; + + /** + * Amount consumed by the product or service. + * + * @param amountConsumed the value to set + * @return this builder + */ + public Builder amountConsumed(Double amountConsumed) { + this.amountConsumed = amountConsumed; + this.__explicitlySet__.add("amountConsumed"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ProductAndService build() { + ProductAndService model = + new ProductAndService( + this.subId, + this.serviceName, + this.timeStart, + this.timeEnd, + this.amountAuthorized, + this.amountProvisioned, + this.amountConsumed); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ProductAndService model) { + if (model.wasPropertyExplicitlySet("subId")) { + this.subId(model.getSubId()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("timeStart")) { + this.timeStart(model.getTimeStart()); + } + if (model.wasPropertyExplicitlySet("timeEnd")) { + this.timeEnd(model.getTimeEnd()); + } + if (model.wasPropertyExplicitlySet("amountAuthorized")) { + this.amountAuthorized(model.getAmountAuthorized()); + } + if (model.wasPropertyExplicitlySet("amountProvisioned")) { + this.amountProvisioned(model.getAmountProvisioned()); + } + if (model.wasPropertyExplicitlySet("amountConsumed")) { + this.amountConsumed(model.getAmountConsumed()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Subscription identifier; may be blank for non-cloud transactions. */ + @com.fasterxml.jackson.annotation.JsonProperty("subId") + private final String subId; + + /** + * Subscription identifier; may be blank for non-cloud transactions. + * + * @return the value + */ + public String getSubId() { + return subId; + } + + /** Name of the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the product or service. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** Start date and time for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStart") + private final java.util.Date timeStart; + + /** + * Start date and time for the product or service. + * + * @return the value + */ + public java.util.Date getTimeStart() { + return timeStart; + } + + /** End date and time for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") + private final java.util.Date timeEnd; + + /** + * End date and time for the product or service. + * + * @return the value + */ + public java.util.Date getTimeEnd() { + return timeEnd; + } + + /** Amount authorized for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAuthorized") + private final Double amountAuthorized; + + /** + * Amount authorized for the product or service. + * + * @return the value + */ + public Double getAmountAuthorized() { + return amountAuthorized; + } + + /** Amount provisioned for the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountProvisioned") + private final Double amountProvisioned; + + /** + * Amount provisioned for the product or service. + * + * @return the value + */ + public Double getAmountProvisioned() { + return amountProvisioned; + } + + /** Amount consumed by the product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountConsumed") + private final Double amountConsumed; + + /** + * Amount consumed by the product or service. + * + * @return the value + */ + public Double getAmountConsumed() { + return amountConsumed; + } + + @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("ProductAndService("); + sb.append("super=").append(super.toString()); + sb.append("subId=").append(String.valueOf(this.subId)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", timeStart=").append(String.valueOf(this.timeStart)); + sb.append(", timeEnd=").append(String.valueOf(this.timeEnd)); + sb.append(", amountAuthorized=").append(String.valueOf(this.amountAuthorized)); + sb.append(", amountProvisioned=").append(String.valueOf(this.amountProvisioned)); + sb.append(", amountConsumed=").append(String.valueOf(this.amountConsumed)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ProductAndService)) { + return false; + } + + ProductAndService other = (ProductAndService) o; + return java.util.Objects.equals(this.subId, other.subId) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.timeStart, other.timeStart) + && java.util.Objects.equals(this.timeEnd, other.timeEnd) + && java.util.Objects.equals(this.amountAuthorized, other.amountAuthorized) + && java.util.Objects.equals(this.amountProvisioned, other.amountProvisioned) + && java.util.Objects.equals(this.amountConsumed, other.amountConsumed) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.subId == null ? 43 : this.subId.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = (result * PRIME) + (this.timeStart == null ? 43 : this.timeStart.hashCode()); + result = (result * PRIME) + (this.timeEnd == null ? 43 : this.timeEnd.hashCode()); + result = + (result * PRIME) + + (this.amountAuthorized == null ? 43 : this.amountAuthorized.hashCode()); + result = + (result * PRIME) + + (this.amountProvisioned == null ? 43 : this.amountProvisioned.hashCode()); + result = + (result * PRIME) + + (this.amountConsumed == null ? 43 : this.amountConsumed.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardProduct.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardProduct.java index 8971720aac7..7d0c942486d 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardProduct.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardProduct.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Product description
+ * Product description.
* 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 @@ -48,12 +48,12 @@ public RateCardProduct( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Product part numner */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private String partNumber; /** - * Product part numner + * Product part number. * * @param partNumber the value to set * @return this builder @@ -63,12 +63,12 @@ public Builder partNumber(String partNumber) { this.__explicitlySet__.add("partNumber"); return this; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Product name + * Product name. * * @param name the value to set * @return this builder @@ -78,12 +78,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Unit of measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private String unitOfMeasure; /** - * Unit of measure + * Unit of measure. * * @param unitOfMeasure the value to set * @return this builder @@ -93,12 +93,12 @@ public Builder unitOfMeasure(String unitOfMeasure) { this.__explicitlySet__.add("unitOfMeasure"); return this; } - /** Metered service billing category */ + /** Metered service billing category. */ @com.fasterxml.jackson.annotation.JsonProperty("billingCategory") private String billingCategory; /** - * Metered service billing category + * Metered service billing category. * * @param billingCategory the value to set * @return this builder @@ -108,12 +108,12 @@ public Builder billingCategory(String billingCategory) { this.__explicitlySet__.add("billingCategory"); return this; } - /** Product category */ + /** Product category. */ @com.fasterxml.jackson.annotation.JsonProperty("productCategory") private String productCategory; /** - * Product category + * Product category. * * @param productCategory the value to set * @return this builder @@ -123,12 +123,12 @@ public Builder productCategory(String productCategory) { this.__explicitlySet__.add("productCategory"); return this; } - /** Rate card part type of Product */ + /** Rate card part type of product. */ @com.fasterxml.jackson.annotation.JsonProperty("ucmRateCardPartType") private String ucmRateCardPartType; /** - * Rate card part type of Product + * Rate card part type of product. * * @param ucmRateCardPartType the value to set * @return this builder @@ -190,12 +190,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Product part numner */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private final String partNumber; /** - * Product part numner + * Product part number. * * @return the value */ @@ -203,12 +203,12 @@ public String getPartNumber() { return partNumber; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Product name + * Product name. * * @return the value */ @@ -216,12 +216,12 @@ public String getName() { return name; } - /** Unit of measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private final String unitOfMeasure; /** - * Unit of measure + * Unit of measure. * * @return the value */ @@ -229,12 +229,12 @@ public String getUnitOfMeasure() { return unitOfMeasure; } - /** Metered service billing category */ + /** Metered service billing category. */ @com.fasterxml.jackson.annotation.JsonProperty("billingCategory") private final String billingCategory; /** - * Metered service billing category + * Metered service billing category. * * @return the value */ @@ -242,12 +242,12 @@ public String getBillingCategory() { return billingCategory; } - /** Product category */ + /** Product category. */ @com.fasterxml.jackson.annotation.JsonProperty("productCategory") private final String productCategory; /** - * Product category + * Product category. * * @return the value */ @@ -255,12 +255,12 @@ public String getProductCategory() { return productCategory; } - /** Rate card part type of Product */ + /** Rate card part type of product. */ @com.fasterxml.jackson.annotation.JsonProperty("ucmRateCardPartType") private final String ucmRateCardPartType; /** - * Rate card part type of Product + * Rate card part type of product. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardSummary.java index 8ed69665c94..d619028a90f 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Rate Card Summary
+ * Rate card summary.
* 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 @@ -60,12 +60,12 @@ public RateCardSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @param subscribedServiceId the value to set * @return this builder @@ -84,12 +84,12 @@ public Builder product(RateCardProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Rate card start date */ + /** Rate card start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Rate card start date + * Rate card start date. * * @param timeStart the value to set * @return this builder @@ -99,12 +99,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Rate card end date */ + /** Rate card end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Rate card end date + * Rate card end date. * * @param timeEnd the value to set * @return this builder @@ -114,12 +114,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Rate card net unit price */ + /** Rate card net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Rate card net unit price + * Rate card net unit price. * * @param netUnitPrice the value to set * @return this builder @@ -129,12 +129,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Rate card discretionary discount percentage */ + /** Rate card discretionary discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("discretionaryDiscountPercentage") private String discretionaryDiscountPercentage; /** - * Rate card discretionary discount percentage + * Rate card discretionary discount percentage. * * @param discretionaryDiscountPercentage the value to set * @return this builder @@ -144,12 +144,12 @@ public Builder discretionaryDiscountPercentage(String discretionaryDiscountPerce this.__explicitlySet__.add("discretionaryDiscountPercentage"); return this; } - /** Rate card overage price */ + /** Rate card overage price. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePrice") private String overagePrice; /** - * Rate card overage price + * Rate card overage price. * * @param overagePrice the value to set * @return this builder @@ -159,12 +159,12 @@ public Builder overagePrice(String overagePrice) { this.__explicitlySet__.add("overagePrice"); return this; } - /** Rate card price tier flag */ + /** Rate card price tier parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isTier") private Boolean isTier; /** - * Rate card price tier flag + * Rate card price tier parameter. * * @param isTier the value to set * @return this builder @@ -183,12 +183,12 @@ public Builder currency(SubscriptionCurrency currency) { this.__explicitlySet__.add("currency"); return this; } - /** List of tiered rate card prices */ + /** List of tiered rate card prices. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardTiers") private java.util.List rateCardTiers; /** - * List of tiered rate card prices + * List of tiered rate card prices. * * @param rateCardTiers the value to set * @return this builder @@ -266,12 +266,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServiceId") private final String subscribedServiceId; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @return the value */ @@ -286,12 +286,12 @@ public RateCardProduct getProduct() { return product; } - /** Rate card start date */ + /** Rate card start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Rate card start date + * Rate card start date. * * @return the value */ @@ -299,12 +299,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Rate card end date */ + /** Rate card end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Rate card end date + * Rate card end date. * * @return the value */ @@ -312,12 +312,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Rate card net unit price */ + /** Rate card net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Rate card net unit price + * Rate card net unit price. * * @return the value */ @@ -325,12 +325,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Rate card discretionary discount percentage */ + /** Rate card discretionary discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("discretionaryDiscountPercentage") private final String discretionaryDiscountPercentage; /** - * Rate card discretionary discount percentage + * Rate card discretionary discount percentage. * * @return the value */ @@ -338,12 +338,12 @@ public String getDiscretionaryDiscountPercentage() { return discretionaryDiscountPercentage; } - /** Rate card overage price */ + /** Rate card overage price. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePrice") private final String overagePrice; /** - * Rate card overage price + * Rate card overage price. * * @return the value */ @@ -351,12 +351,12 @@ public String getOveragePrice() { return overagePrice; } - /** Rate card price tier flag */ + /** Rate card price tier parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isTier") private final Boolean isTier; /** - * Rate card price tier flag + * Rate card price tier parameter. * * @return the value */ @@ -371,12 +371,12 @@ public SubscriptionCurrency getCurrency() { return currency; } - /** List of tiered rate card prices */ + /** List of tiered rate card prices. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardTiers") private final java.util.List rateCardTiers; /** - * List of tiered rate card prices + * List of tiered rate card prices. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardTier.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardTier.java index 4f8d958f2ea..c00f25d21fc 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardTier.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/RateCardTier.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Rate Card Tier details
+ * Rate card tier details.
* 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 @@ -31,12 +31,12 @@ public RateCardTier(String upToQuantity, String netUnitPrice, String overagePric @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Rate card tier quantity range */ + /** Rate card tier quantity range. */ @com.fasterxml.jackson.annotation.JsonProperty("upToQuantity") private String upToQuantity; /** - * Rate card tier quantity range + * Rate card tier quantity range. * * @param upToQuantity the value to set * @return this builder @@ -46,12 +46,12 @@ public Builder upToQuantity(String upToQuantity) { this.__explicitlySet__.add("upToQuantity"); return this; } - /** Rate card tier net unit price */ + /** Rate card tier net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Rate card tier net unit price + * Rate card tier net unit price. * * @param netUnitPrice the value to set * @return this builder @@ -61,12 +61,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Rate card tier overage price */ + /** Rate card tier overage price. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePrice") private String overagePrice; /** - * Rate card tier overage price + * Rate card tier overage price. * * @param overagePrice the value to set * @return this builder @@ -113,12 +113,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Rate card tier quantity range */ + /** Rate card tier quantity range. */ @com.fasterxml.jackson.annotation.JsonProperty("upToQuantity") private final String upToQuantity; /** - * Rate card tier quantity range + * Rate card tier quantity range. * * @return the value */ @@ -126,12 +126,12 @@ public String getUpToQuantity() { return upToQuantity; } - /** Rate card tier net unit price */ + /** Rate card tier net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Rate card tier net unit price + * Rate card tier net unit price. * * @return the value */ @@ -139,12 +139,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Rate card tier overage price */ + /** Rate card tier overage price. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePrice") private final String overagePrice; /** - * Rate card tier overage price + * Rate card tier overage price. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedService.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedService.java index c0cb5be29bd..e413d2c6e45 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedService.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedService.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed service contract details
+ * Subscribed service contract details.
* 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 @@ -364,12 +364,12 @@ public SubscribedService( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal Subscribed Service ID */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal Subscribed Service ID * * @param id the value to set * @return this builder @@ -379,12 +379,12 @@ public Builder id(String id) { this.__explicitlySet__.add("id"); return this; } - /** Subscribed Service line type */ + /** Subscribed service line type. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private String type; /** - * Subscribed Service line type + * Subscribed service line type. * * @param type the value to set * @return this builder @@ -394,12 +394,12 @@ public Builder type(String type) { this.__explicitlySet__.add("type"); return this; } - /** Subscribed service line number */ + /** Subscribed service line number. */ @com.fasterxml.jackson.annotation.JsonProperty("serialNumber") private String serialNumber; /** - * Subscribed service line number + * Subscribed service line number. * * @param serialNumber the value to set * @return this builder @@ -409,12 +409,12 @@ public Builder serialNumber(String serialNumber) { this.__explicitlySet__.add("serialNumber"); return this; } - /** Subscription ID associated to the subscribed service */ + /** Subscription ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") private String subscriptionId; /** - * Subscription ID associated to the subscribed service + * Subscription ID associated with the subscribed service. * * @param subscriptionId the value to set * @return this builder @@ -433,12 +433,12 @@ public Builder product(RateCardProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Subscribed service start date */ + /** Subscribed service start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Subscribed service start date + * Subscribed service start date. * * @param timeStart the value to set * @return this builder @@ -448,12 +448,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Subscribed service end date */ + /** Subscribed service end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Subscribed service end date + * Subscribed service end date. * * @param timeEnd the value to set * @return this builder @@ -463,12 +463,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Subscribed service quantity */ + /** Subscribed service quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Subscribed service quantity + * Subscribed service quantity. * * @param quantity the value to set * @return this builder @@ -478,12 +478,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Subscribed service status */ + /** Subscribed service status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private String status; /** - * Subscribed service status + * Subscribed service status. * * @param status the value to set * @return this builder @@ -493,12 +493,12 @@ public Builder status(String status) { this.__explicitlySet__.add("status"); return this; } - /** Subscribed service operation type */ + /** Subscribed service operation type. */ @com.fasterxml.jackson.annotation.JsonProperty("operationType") private String operationType; /** - * Subscribed service operation type + * Subscribed service operation type. * * @param operationType the value to set * @return this builder @@ -508,12 +508,12 @@ public Builder operationType(String operationType) { this.__explicitlySet__.add("operationType"); return this; } - /** Subscribed service net unit price */ + /** Subscribed service net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Subscribed service net unit price + * Subscribed service net unit price. * * @param netUnitPrice the value to set * @return this builder @@ -524,15 +524,15 @@ public Builder netUnitPrice(String netUnitPrice) { return this; } /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, + * the amount lapses. Also used in calculation of total contract line value. */ @com.fasterxml.jackson.annotation.JsonProperty("pricePeriod") private String pricePeriod; /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, + * the amount lapses. Also used in calculation of total contract line value. * * @param pricePeriod the value to set * @return this builder @@ -542,12 +542,12 @@ public Builder pricePeriod(String pricePeriod) { this.__explicitlySet__.add("pricePeriod"); return this; } - /** Subscribed service line net amount */ + /** Subscribed service line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("lineNetAmount") private String lineNetAmount; /** - * Subscribed service line net amount + * Subscribed service line net amount. * * @param lineNetAmount the value to set * @return this builder @@ -557,12 +557,12 @@ public Builder lineNetAmount(String lineNetAmount) { this.__explicitlySet__.add("lineNetAmount"); return this; } - /** Indicates if the commitment lines can have different quantities */ + /** Indicates if the commitment lines can have different quantities. */ @com.fasterxml.jackson.annotation.JsonProperty("isVariableCommitment") private Boolean isVariableCommitment; /** - * Indicates if the commitment lines can have different quantities + * Indicates if the commitment lines can have different quantities. * * @param isVariableCommitment the value to set * @return this builder @@ -573,15 +573,15 @@ public Builder isVariableCommitment(Boolean isVariableCommitment) { return this; } /** - * Indicates if a service can recieve usages and consequently have available amounts - * computed + * Indicates if a service can recieve usages and consequently have the available amounts + * computed. */ @com.fasterxml.jackson.annotation.JsonProperty("isAllowance") private Boolean isAllowance; /** - * Indicates if a service can recieve usages and consequently have available amounts - * computed + * Indicates if a service can recieve usages and consequently have the available amounts + * computed. * * @param isAllowance the value to set * @return this builder @@ -591,12 +591,12 @@ public Builder isAllowance(Boolean isAllowance) { this.__explicitlySet__.add("isAllowance"); return this; } - /** Subscribed service used amount */ + /** Subscribed service used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private String usedAmount; /** - * Subscribed service used amount + * Subscribed service used amount. * * @param usedAmount the value to set * @return this builder @@ -606,12 +606,12 @@ public Builder usedAmount(String usedAmount) { this.__explicitlySet__.add("usedAmount"); return this; } - /** Subscribed sercice available or remaining amount */ + /** Subscribed sercice available or remaining amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private String availableAmount; /** - * Subscribed sercice available or remaining amount + * Subscribed sercice available or remaining amount. * * @param availableAmount the value to set * @return this builder @@ -621,12 +621,12 @@ public Builder availableAmount(String availableAmount) { this.__explicitlySet__.add("availableAmount"); return this; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @param fundedAllocationValue the value to set * @return this builder @@ -636,12 +636,12 @@ public Builder fundedAllocationValue(String fundedAllocationValue) { this.__explicitlySet__.add("fundedAllocationValue"); return this; } - /** Indicator on whether or not there has been usage for the subscribed service */ + /** Indicates whether or not there has been usage for the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("isHavingUsage") private Boolean isHavingUsage; /** - * Indicator on whether or not there has been usage for the subscribed service + * Indicates whether or not there has been usage for the subscribed service. * * @param isHavingUsage the value to set * @return this builder @@ -652,15 +652,15 @@ public Builder isHavingUsage(Boolean isHavingUsage) { return this; } /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares rate between the rate card and the active price list, and the minimum + * rate would be fetched. */ @com.fasterxml.jackson.annotation.JsonProperty("isCapToPriceList") private Boolean isCapToPriceList; /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares rate between the rate card and the active price list, and the minimum + * rate would be fetched. * * @param isCapToPriceList the value to set * @return this builder @@ -670,12 +670,12 @@ public Builder isCapToPriceList(Boolean isCapToPriceList) { this.__explicitlySet__.add("isCapToPriceList"); return this; } - /** Subscribed service credit percentage */ + /** Subscribed service credit percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("creditPercentage") private String creditPercentage; /** - * Subscribed service credit percentage + * Subscribed service credit percentage. * * @param creditPercentage the value to set * @return this builder @@ -686,15 +686,15 @@ public Builder creditPercentage(String creditPercentage) { return this; } /** - * This field contains the name of the partner to which the subscription belongs - depending - * on which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerTransactionType") private String partnerTransactionType; /** - * This field contains the name of the partner to which the subscription belongs - depending - * on which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. * * @param partnerTransactionType the value to set * @return this builder @@ -704,12 +704,12 @@ public Builder partnerTransactionType(String partnerTransactionType) { this.__explicitlySet__.add("partnerTransactionType"); return this; } - /** Used in context of service credit lines */ + /** Used in context of service credit lines. */ @com.fasterxml.jackson.annotation.JsonProperty("isCreditEnabled") private Boolean isCreditEnabled; /** - * Used in context of service credit lines + * Used in context of service credit lines. * * @param isCreditEnabled the value to set * @return this builder @@ -719,12 +719,12 @@ public Builder isCreditEnabled(Boolean isCreditEnabled) { this.__explicitlySet__.add("isCreditEnabled"); return this; } - /** Overage Policy of Subscribed Service */ + /** Overage policy of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePolicy") private String overagePolicy; /** - * Overage Policy of Subscribed Service + * Overage policy of subscribed service. * * @param overagePolicy the value to set * @return this builder @@ -734,12 +734,12 @@ public Builder overagePolicy(String overagePolicy) { this.__explicitlySet__.add("overagePolicy"); return this; } - /** Overage Bill To of Subscribed Service */ + /** Overage bill to of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overageBillTo") private String overageBillTo; /** - * Overage Bill To of Subscribed Service + * Overage bill to of subscribed service. * * @param overageBillTo the value to set * @return this builder @@ -749,12 +749,14 @@ public Builder overageBillTo(String overageBillTo) { this.__explicitlySet__.add("overageBillTo"); return this; } - /** Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) */ + /** + * Pay As You Go policy of the subscribed service. Can be null, indicating no PAYG policy. + */ @com.fasterxml.jackson.annotation.JsonProperty("paygPolicy") private String paygPolicy; /** - * Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) + * Pay As You Go policy of the subscribed service. Can be null, indicating no PAYG policy. * * @param paygPolicy the value to set * @return this builder @@ -765,15 +767,17 @@ public Builder paygPolicy(String paygPolicy) { return this; } /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo + * line. */ @com.fasterxml.jackson.annotation.JsonProperty("promoOrderLineId") private Long promoOrderLineId; /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo + * line. * * @param promoOrderLineId the value to set * @return this builder @@ -784,15 +788,15 @@ public Builder promoOrderLineId(Long promoOrderLineId) { return this; } /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion - * pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional + * pricing. */ @com.fasterxml.jackson.annotation.JsonProperty("promotionPricingType") private String promotionPricingType; /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion - * pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional + * pricing. * * @param promotionPricingType the value to set * @return this builder @@ -802,12 +806,12 @@ public Builder promotionPricingType(String promotionPricingType) { this.__explicitlySet__.add("promotionPricingType"); return this; } - /** Subscribed service Rate Card Discount Percentage */ + /** Subscribed service rate card discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardDiscountPercentage") private String rateCardDiscountPercentage; /** - * Subscribed service Rate Card Discount Percentage + * Subscribed service rate card discount percentage. * * @param rateCardDiscountPercentage the value to set * @return this builder @@ -817,12 +821,12 @@ public Builder rateCardDiscountPercentage(String rateCardDiscountPercentage) { this.__explicitlySet__.add("rateCardDiscountPercentage"); return this; } - /** Subscribed service Overage Discount Percentage */ + /** Subscribed service overage discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("overageDiscountPercentage") private String overageDiscountPercentage; /** - * Subscribed service Overage Discount Percentage + * Subscribed service overage discount percentage. * * @param overageDiscountPercentage the value to set * @return this builder @@ -859,12 +863,12 @@ public Builder billToAddress(SubscribedServiceAddress billToAddress) { this.__explicitlySet__.add("billToAddress"); return this; } - /** Payment Number of Subscribed Service */ + /** Payment number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentNumber") private String paymentNumber; /** - * Payment Number of Subscribed Service + * Payment number of the subscribed service. * * @param paymentNumber the value to set * @return this builder @@ -874,12 +878,12 @@ public Builder paymentNumber(String paymentNumber) { this.__explicitlySet__.add("paymentNumber"); return this; } - /** Subscribed service payment expiry date */ + /** Subscribed service payment expiration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timePaymentExpiry") private java.util.Date timePaymentExpiry; /** - * Subscribed service payment expiry date + * Subscribed service payment expiration date. * * @param timePaymentExpiry the value to set * @return this builder @@ -898,12 +902,12 @@ public Builder paymentTerm(SubscribedServicePaymentTerm paymentTerm) { this.__explicitlySet__.add("paymentTerm"); return this; } - /** Payment Method of Subscribed Service */ + /** Payment method of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentMethod") private String paymentMethod; /** - * Payment Method of Subscribed Service + * Payment method of the subscribed service. * * @param paymentMethod the value to set * @return this builder @@ -913,12 +917,12 @@ public Builder paymentMethod(String paymentMethod) { this.__explicitlySet__.add("paymentMethod"); return this; } - /** Subscribed service Transaction Extension Id */ + /** Subscribed service transaction extension ID. */ @com.fasterxml.jackson.annotation.JsonProperty("transactionExtensionId") private Long transactionExtensionId; /** - * Subscribed service Transaction Extension Id + * Subscribed service transaction extension ID. * * @param transactionExtensionId the value to set * @return this builder @@ -928,12 +932,12 @@ public Builder transactionExtensionId(Long transactionExtensionId) { this.__explicitlySet__.add("transactionExtensionId"); return this; } - /** Sales Channel of Subscribed Service */ + /** Sales channel of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("salesChannel") private String salesChannel; /** - * Sales Channel of Subscribed Service + * Sales channel of the subscribed service. * * @param salesChannel the value to set * @return this builder @@ -943,12 +947,12 @@ public Builder salesChannel(String salesChannel) { this.__explicitlySet__.add("salesChannel"); return this; } - /** Subscribed service eligible to renew field */ + /** Subscribed service eligible to renew field. */ @com.fasterxml.jackson.annotation.JsonProperty("eligibleToRenew") private String eligibleToRenew; /** - * Subscribed service eligible to renew field + * Subscribed service eligible to renew field. * * @param eligibleToRenew the value to set * @return this builder @@ -958,12 +962,12 @@ public Builder eligibleToRenew(String eligibleToRenew) { this.__explicitlySet__.add("eligibleToRenew"); return this; } - /** SPM renewed Subscription ID */ + /** SPM (Subscription Plan Management) renewed subscription ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewedSubscribedServiceId") private String renewedSubscribedServiceId; /** - * SPM renewed Subscription ID + * SPM (Subscription Plan Management) renewed subscription ID. * * @param renewedSubscribedServiceId the value to set * @return this builder @@ -973,12 +977,12 @@ public Builder renewedSubscribedServiceId(String renewedSubscribedServiceId) { this.__explicitlySet__.add("renewedSubscribedServiceId"); return this; } - /** Term value in Months */ + /** Term value in months. */ @com.fasterxml.jackson.annotation.JsonProperty("termValue") private Long termValue; /** - * Term value in Months + * Term value in months. * * @param termValue the value to set * @return this builder @@ -988,12 +992,12 @@ public Builder termValue(Long termValue) { this.__explicitlySet__.add("termValue"); return this; } - /** Term value UOM */ + /** Term value UOM (Unit of Measure). */ @com.fasterxml.jackson.annotation.JsonProperty("termValueUom") private String termValueUom; /** - * Term value UOM + * Term value UOM (Unit of Measure). * * @param termValueUom the value to set * @return this builder @@ -1003,12 +1007,12 @@ public Builder termValueUom(String termValueUom) { this.__explicitlySet__.add("termValueUom"); return this; } - /** Subscribed service Opportunity Id */ + /** Subscribed service opportunity ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyId") private Long renewalOptyId; /** - * Subscribed service Opportunity Id + * Subscribed service opportunity ID. * * @param renewalOptyId the value to set * @return this builder @@ -1018,12 +1022,12 @@ public Builder renewalOptyId(Long renewalOptyId) { this.__explicitlySet__.add("renewalOptyId"); return this; } - /** Renewal Opportunity Number of Subscribed Service */ + /** Renewal opportunity number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyNumber") private String renewalOptyNumber; /** - * Renewal Opportunity Number of Subscribed Service + * Renewal opportunity number of the subscribed service. * * @param renewalOptyNumber the value to set * @return this builder @@ -1033,12 +1037,12 @@ public Builder renewalOptyNumber(String renewalOptyNumber) { this.__explicitlySet__.add("renewalOptyNumber"); return this; } - /** Renewal Opportunity Type of Subscribed Service */ + /** Renewal opportunity type of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyType") private String renewalOptyType; /** - * Renewal Opportunity Type of Subscribed Service + * Renewal opportunity type of the subscribed service. * * @param renewalOptyType the value to set * @return this builder @@ -1048,12 +1052,12 @@ public Builder renewalOptyType(String renewalOptyType) { this.__explicitlySet__.add("renewalOptyType"); return this; } - /** Booking Opportunity Number of Subscribed Service */ + /** Booking opportunity number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("bookingOptyNumber") private String bookingOptyNumber; /** - * Booking Opportunity Number of Subscribed Service + * Booking opportunity number of the subscribed service. * * @param bookingOptyNumber the value to set * @return this builder @@ -1063,12 +1067,12 @@ public Builder bookingOptyNumber(String bookingOptyNumber) { this.__explicitlySet__.add("bookingOptyNumber"); return this; } - /** Subscribed service Revenue Line Id */ + /** Subscribed service revenue line ID. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineId") private Long revenueLineId; /** - * Subscribed service Revenue Line Id + * Subscribed service revenue line ID. * * @param revenueLineId the value to set * @return this builder @@ -1078,12 +1082,12 @@ public Builder revenueLineId(Long revenueLineId) { this.__explicitlySet__.add("revenueLineId"); return this; } - /** Revenue Line NUmber of Subscribed Service */ + /** Revenue line number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineNumber") private String revenueLineNumber; /** - * Revenue Line NUmber of Subscribed Service + * Revenue line number of the subscribed service. * * @param revenueLineNumber the value to set * @return this builder @@ -1093,12 +1097,12 @@ public Builder revenueLineNumber(String revenueLineNumber) { this.__explicitlySet__.add("revenueLineNumber"); return this; } - /** Subscribed service Major Set */ + /** Subscribed service major set. */ @com.fasterxml.jackson.annotation.JsonProperty("majorSet") private Long majorSet; /** - * Subscribed service Major Set + * Subscribed service major set. * * @param majorSet the value to set * @return this builder @@ -1108,12 +1112,12 @@ public Builder majorSet(Long majorSet) { this.__explicitlySet__.add("majorSet"); return this; } - /** Subscribed service Major Set Start date */ + /** Subscribed service major set start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetStart") private java.util.Date timeMajorsetStart; /** - * Subscribed service Major Set Start date + * Subscribed service major set start date. * * @param timeMajorsetStart the value to set * @return this builder @@ -1123,12 +1127,12 @@ public Builder timeMajorsetStart(java.util.Date timeMajorsetStart) { this.__explicitlySet__.add("timeMajorsetStart"); return this; } - /** Subscribed service Major Set End date */ + /** Subscribed service major set end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetEnd") private java.util.Date timeMajorsetEnd; /** - * Subscribed service Major Set End date + * Subscribed service major set end date. * * @param timeMajorsetEnd the value to set * @return this builder @@ -1138,12 +1142,12 @@ public Builder timeMajorsetEnd(java.util.Date timeMajorsetEnd) { this.__explicitlySet__.add("timeMajorsetEnd"); return this; } - /** Subscribed service System ARR */ + /** Subscribed service system ARR (Annualized Recurring Revenue). */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInLc") private String systemArrInLc; /** - * Subscribed service System ARR + * Subscribed service system ARR (Annualized Recurring Revenue). * * @param systemArrInLc the value to set * @return this builder @@ -1153,12 +1157,12 @@ public Builder systemArrInLc(String systemArrInLc) { this.__explicitlySet__.add("systemArrInLc"); return this; } - /** Subscribed service System ARR in Standard Currency */ + /** Subscribed service system ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInSc") private String systemArrInSc; /** - * Subscribed service System ARR in Standard Currency + * Subscribed service system ARR in standard currency. * * @param systemArrInSc the value to set * @return this builder @@ -1168,12 +1172,14 @@ public Builder systemArrInSc(String systemArrInSc) { this.__explicitlySet__.add("systemArrInSc"); return this; } - /** Subscribed service System ATR-ARR */ + /** + * Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). + */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInLc") private String systemAtrArrInLc; /** - * Subscribed service System ATR-ARR + * Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). * * @param systemAtrArrInLc the value to set * @return this builder @@ -1183,12 +1189,12 @@ public Builder systemAtrArrInLc(String systemAtrArrInLc) { this.__explicitlySet__.add("systemAtrArrInLc"); return this; } - /** Subscribed service System ATR-ARR in Standard Currency */ + /** Subscribed service system ATR-ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInSc") private String systemAtrArrInSc; /** - * Subscribed service System ATR-ARR in Standard Currency + * Subscribed service system ATR-ARR in standard currency. * * @param systemAtrArrInSc the value to set * @return this builder @@ -1198,12 +1204,12 @@ public Builder systemAtrArrInSc(String systemAtrArrInSc) { this.__explicitlySet__.add("systemAtrArrInSc"); return this; } - /** Subscribed service Revised ARR */ + /** Subscribed service revised ARR. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInLc") private String revisedArrInLc; /** - * Subscribed service Revised ARR + * Subscribed service revised ARR. * * @param revisedArrInLc the value to set * @return this builder @@ -1213,12 +1219,12 @@ public Builder revisedArrInLc(String revisedArrInLc) { this.__explicitlySet__.add("revisedArrInLc"); return this; } - /** Subscribed service Revised ARR in Standard Currency */ + /** Subscribed service revised ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInSc") private String revisedArrInSc; /** - * Subscribed service Revised ARR in Standard Currency + * Subscribed service revised ARR in standard currency. * * @param revisedArrInSc the value to set * @return this builder @@ -1228,12 +1234,12 @@ public Builder revisedArrInSc(String revisedArrInSc) { this.__explicitlySet__.add("revisedArrInSc"); return this; } - /** Subscribed service total value */ + /** Subscribed service total value. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private String totalValue; /** - * Subscribed service total value + * Subscribed service total value. * * @param totalValue the value to set * @return this builder @@ -1243,12 +1249,12 @@ public Builder totalValue(String totalValue) { this.__explicitlySet__.add("totalValue"); return this; } - /** Subscribed service Promotion Amount */ + /** Subscribed service promotion amount. */ @com.fasterxml.jackson.annotation.JsonProperty("originalPromoAmount") private String originalPromoAmount; /** - * Subscribed service Promotion Amount + * Subscribed service promotion amount. * * @param originalPromoAmount the value to set * @return this builder @@ -1258,12 +1264,12 @@ public Builder originalPromoAmount(String originalPromoAmount) { this.__explicitlySet__.add("originalPromoAmount"); return this; } - /** Sales Order Header associated to the subscribed service */ + /** Sales order header associated to the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderHeaderId") private Long orderHeaderId; /** - * Sales Order Header associated to the subscribed service + * Sales order header associated to the subscribed service. * * @param orderHeaderId the value to set * @return this builder @@ -1273,12 +1279,12 @@ public Builder orderHeaderId(Long orderHeaderId) { this.__explicitlySet__.add("orderHeaderId"); return this; } - /** Sales Order Number associated to the subscribed service */ + /** Sales order number associated to the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private Long orderNumber; /** - * Sales Order Number associated to the subscribed service + * Sales order number associated to the subscribed service. * * @param orderNumber the value to set * @return this builder @@ -1288,12 +1294,12 @@ public Builder orderNumber(Long orderNumber) { this.__explicitlySet__.add("orderNumber"); return this; } - /** Order Type of Subscribed Service */ + /** Order type of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderType") private String orderType; /** - * Order Type of Subscribed Service + * Order type of subscribed service. * * @param orderType the value to set * @return this builder @@ -1303,12 +1309,12 @@ public Builder orderType(String orderType) { this.__explicitlySet__.add("orderType"); return this; } - /** Sales Order Line Id associated to the subscribed service */ + /** Sales order line ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineId") private Long orderLineId; /** - * Sales Order Line Id associated to the subscribed service + * Sales order line ID associated with the subscribed service. * * @param orderLineId the value to set * @return this builder @@ -1318,12 +1324,12 @@ public Builder orderLineId(Long orderLineId) { this.__explicitlySet__.add("orderLineId"); return this; } - /** Sales Order Line Number associated to the subscribed service */ + /** Sales order line number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineNumber") private Integer orderLineNumber; /** - * Sales Order Line Number associated to the subscribed service + * Sales order line number associated with the subscribed service. * * @param orderLineNumber the value to set * @return this builder @@ -1333,12 +1339,12 @@ public Builder orderLineNumber(Integer orderLineNumber) { this.__explicitlySet__.add("orderLineNumber"); return this; } - /** Subscribed service commitment schedule Id */ + /** Subscribed service commitment schedule ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentScheduleId") private String commitmentScheduleId; /** - * Subscribed service commitment schedule Id + * Subscribed service commitment schedule ID. * * @param commitmentScheduleId the value to set * @return this builder @@ -1348,12 +1354,12 @@ public Builder commitmentScheduleId(String commitmentScheduleId) { this.__explicitlySet__.add("commitmentScheduleId"); return this; } - /** Subscribed service sales account party id */ + /** Subscribed service sales account party ID. */ @com.fasterxml.jackson.annotation.JsonProperty("salesAccountPartyId") private Long salesAccountPartyId; /** - * Subscribed service sales account party id + * Subscribed service sales account party ID. * * @param salesAccountPartyId the value to set * @return this builder @@ -1363,12 +1369,12 @@ public Builder salesAccountPartyId(Long salesAccountPartyId) { this.__explicitlySet__.add("salesAccountPartyId"); return this; } - /** Subscribed service data center */ + /** Subscribed service data center. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private String dataCenter; /** - * Subscribed service data center + * Subscribed service data center. * * @param dataCenter the value to set * @return this builder @@ -1378,12 +1384,12 @@ public Builder dataCenter(String dataCenter) { this.__explicitlySet__.add("dataCenter"); return this; } - /** Subscribed service data center region */ + /** Subscribed service data center region. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenterRegion") private String dataCenterRegion; /** - * Subscribed service data center region + * Subscribed service data center region. * * @param dataCenterRegion the value to set * @return this builder @@ -1393,12 +1399,12 @@ public Builder dataCenterRegion(String dataCenterRegion) { this.__explicitlySet__.add("dataCenterRegion"); return this; } - /** Subscribed service admin email id */ + /** Subscribed service admin email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("adminEmail") private String adminEmail; /** - * Subscribed service admin email id + * Subscribed service admin email ID. * * @param adminEmail the value to set * @return this builder @@ -1408,12 +1414,12 @@ public Builder adminEmail(String adminEmail) { this.__explicitlySet__.add("adminEmail"); return this; } - /** Subscribed service buyer email id */ + /** Subscribed service buyer email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("buyerEmail") private String buyerEmail; /** - * Subscribed service buyer email id + * Subscribed service buyer email ID. * * @param buyerEmail the value to set * @return this builder @@ -1423,12 +1429,12 @@ public Builder buyerEmail(String buyerEmail) { this.__explicitlySet__.add("buyerEmail"); return this; } - /** Subscribed service source */ + /** Subscribed service source. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionSource") private String subscriptionSource; /** - * Subscribed service source + * Subscribed service source. * * @param subscriptionSource the value to set * @return this builder @@ -1438,12 +1444,12 @@ public Builder subscriptionSource(String subscriptionSource) { this.__explicitlySet__.add("subscriptionSource"); return this; } - /** Subscribed service provisioning source */ + /** Subscribed service provisioning source. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningSource") private String provisioningSource; /** - * Subscribed service provisioning source + * Subscribed service provisioning source. * * @param provisioningSource the value to set * @return this builder @@ -1453,12 +1459,12 @@ public Builder provisioningSource(String provisioningSource) { this.__explicitlySet__.add("provisioningSource"); return this; } - /** Subscribed service fulfillment set */ + /** Subscribed service fulfillment set. */ @com.fasterxml.jackson.annotation.JsonProperty("fulfillmentSet") private String fulfillmentSet; /** - * Subscribed service fulfillment set + * Subscribed service fulfillment set. * * @param fulfillmentSet the value to set * @return this builder @@ -1468,12 +1474,12 @@ public Builder fulfillmentSet(String fulfillmentSet) { this.__explicitlySet__.add("fulfillmentSet"); return this; } - /** Subscribed service intent to pay flag */ + /** Subscribed service intent to pay parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isIntentToPay") private Boolean isIntentToPay; /** - * Subscribed service intent to pay flag + * Subscribed service intent to pay parameter. * * @param isIntentToPay the value to set * @return this builder @@ -1483,12 +1489,12 @@ public Builder isIntentToPay(Boolean isIntentToPay) { this.__explicitlySet__.add("isIntentToPay"); return this; } - /** Subscribed service payg flag */ + /** Subscribed service PAYG parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isPayg") private Boolean isPayg; /** - * Subscribed service payg flag + * Subscribed service PAYG parameter. * * @param isPayg the value to set * @return this builder @@ -1498,12 +1504,12 @@ public Builder isPayg(Boolean isPayg) { this.__explicitlySet__.add("isPayg"); return this; } - /** Subscribed service pricing model */ + /** Subscribed service pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private String pricingModel; /** - * Subscribed service pricing model + * Subscribed service pricing model. * * @param pricingModel the value to set * @return this builder @@ -1513,12 +1519,12 @@ public Builder pricingModel(String pricingModel) { this.__explicitlySet__.add("pricingModel"); return this; } - /** Subscribed service program type */ + /** Subscribed service program type. */ @com.fasterxml.jackson.annotation.JsonProperty("programType") private String programType; /** - * Subscribed service program type + * Subscribed service program type. * * @param programType the value to set * @return this builder @@ -1528,12 +1534,12 @@ public Builder programType(String programType) { this.__explicitlySet__.add("programType"); return this; } - /** Subscribed service start date type */ + /** Subscribed service start date type. */ @com.fasterxml.jackson.annotation.JsonProperty("startDateType") private String startDateType; /** - * Subscribed service start date type + * Subscribed service start date type. * * @param startDateType the value to set * @return this builder @@ -1543,12 +1549,12 @@ public Builder startDateType(String startDateType) { this.__explicitlySet__.add("startDateType"); return this; } - /** Subscribed service provisioning date */ + /** Subscribed service provisioning date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeProvisioned") private java.util.Date timeProvisioned; /** - * Subscribed service provisioning date + * Subscribed service provisioning date. * * @param timeProvisioned the value to set * @return this builder @@ -1558,12 +1564,12 @@ public Builder timeProvisioned(java.util.Date timeProvisioned) { this.__explicitlySet__.add("timeProvisioned"); return this; } - /** Subscribed service promotion type */ + /** Subscribed service promotion type. */ @com.fasterxml.jackson.annotation.JsonProperty("promoType") private String promoType; /** - * Subscribed service promotion type + * Subscribed service promotion type. * * @param promoType the value to set * @return this builder @@ -1672,12 +1678,12 @@ public Builder resellerAddress(SubscribedServiceAddress resellerAddress) { this.__explicitlySet__.add("resellerAddress"); return this; } - /** Subscribed service CSI number */ + /** Subscribed service CSI number. */ @com.fasterxml.jackson.annotation.JsonProperty("csi") private Long csi; /** - * Subscribed service CSI number + * Subscribed service CSI number. * * @param csi the value to set * @return this builder @@ -1687,12 +1693,12 @@ public Builder csi(Long csi) { this.__explicitlySet__.add("csi"); return this; } - /** Identifier for a customer's transactions for purchase of ay oracle services */ + /** Identifier for a customer's transactions, for purchase of any Oracle services. */ @com.fasterxml.jackson.annotation.JsonProperty("customerTransactionReference") private String customerTransactionReference; /** - * Identifier for a customer's transactions for purchase of ay oracle services + * Identifier for a customer's transactions, for purchase of any Oracle services. * * @param customerTransactionReference the value to set * @return this builder @@ -1702,12 +1708,12 @@ public Builder customerTransactionReference(String customerTransactionReference) this.__explicitlySet__.add("customerTransactionReference"); return this; } - /** Subscribed service partner credit amount */ + /** Subscribed service partner credit amount. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerCreditAmount") private String partnerCreditAmount; /** - * Subscribed service partner credit amount + * Subscribed service partner credit amount. * * @param partnerCreditAmount the value to set * @return this builder @@ -1717,12 +1723,12 @@ public Builder partnerCreditAmount(String partnerCreditAmount) { this.__explicitlySet__.add("partnerCreditAmount"); return this; } - /** Indicates if the Subscribed service has a single ratecard */ + /** Indicates if the subscribed service has a single rate card. */ @com.fasterxml.jackson.annotation.JsonProperty("isSingleRateCard") private Boolean isSingleRateCard; /** - * Indicates if the Subscribed service has a single ratecard + * Indicates if the subscribed service has a single rate card. * * @param isSingleRateCard the value to set * @return this builder @@ -1732,12 +1738,12 @@ public Builder isSingleRateCard(Boolean isSingleRateCard) { this.__explicitlySet__.add("isSingleRateCard"); return this; } - /** Subscribed service agreement ID */ + /** Subscribed service agreement ID. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementId") private Long agreementId; /** - * Subscribed service agreement ID + * Subscribed service agreement ID. * * @param agreementId the value to set * @return this builder @@ -1747,12 +1753,12 @@ public Builder agreementId(Long agreementId) { this.__explicitlySet__.add("agreementId"); return this; } - /** Subscribed service agrrement name */ + /** Subscribed service agreement name. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementName") private String agreementName; /** - * Subscribed service agrrement name + * Subscribed service agreement name. * * @param agreementName the value to set * @return this builder @@ -1762,12 +1768,12 @@ public Builder agreementName(String agreementName) { this.__explicitlySet__.add("agreementName"); return this; } - /** Subscribed service agrrement type */ + /** Subscribed service agreement type. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementType") private String agreementType; /** - * Subscribed service agrrement type + * Subscribed service agreement type. * * @param agreementType the value to set * @return this builder @@ -1777,12 +1783,12 @@ public Builder agreementType(String agreementType) { this.__explicitlySet__.add("agreementType"); return this; } - /** Subscribed service invoice frequency */ + /** Subscribed service invoice frequency. */ @com.fasterxml.jackson.annotation.JsonProperty("billingFrequency") private String billingFrequency; /** - * Subscribed service invoice frequency + * Subscribed service invoice frequency. * * @param billingFrequency the value to set * @return this builder @@ -1792,12 +1798,12 @@ public Builder billingFrequency(String billingFrequency) { this.__explicitlySet__.add("billingFrequency"); return this; } - /** Subscribed service welcome email sent date */ + /** Subscribed service welcome email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeWelcomeEmailSent") private java.util.Date timeWelcomeEmailSent; /** - * Subscribed service welcome email sent date + * Subscribed service welcome email sent date. * * @param timeWelcomeEmailSent the value to set * @return this builder @@ -1807,12 +1813,12 @@ public Builder timeWelcomeEmailSent(java.util.Date timeWelcomeEmailSent) { this.__explicitlySet__.add("timeWelcomeEmailSent"); return this; } - /** Subscribed service service configuration email sent date */ + /** Subscribed service configuration email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeServiceConfigurationEmailSent") private java.util.Date timeServiceConfigurationEmailSent; /** - * Subscribed service service configuration email sent date + * Subscribed service configuration email sent date. * * @param timeServiceConfigurationEmailSent the value to set * @return this builder @@ -1823,12 +1829,12 @@ public Builder timeServiceConfigurationEmailSent( this.__explicitlySet__.add("timeServiceConfigurationEmailSent"); return this; } - /** Subscribed service customer config date */ + /** Subscribed service customer configuration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCustomerConfig") private java.util.Date timeCustomerConfig; /** - * Subscribed service customer config date + * Subscribed service customer configuration date. * * @param timeCustomerConfig the value to set * @return this builder @@ -1838,12 +1844,12 @@ public Builder timeCustomerConfig(java.util.Date timeCustomerConfig) { this.__explicitlySet__.add("timeCustomerConfig"); return this; } - /** Subscribed service agrrement end date */ + /** Subscribed service agreement end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeAgreementEnd") private java.util.Date timeAgreementEnd; /** - * Subscribed service agrrement end date + * Subscribed service agreement end date. * * @param timeAgreementEnd the value to set * @return this builder @@ -1853,12 +1859,12 @@ public Builder timeAgreementEnd(java.util.Date timeAgreementEnd) { this.__explicitlySet__.add("timeAgreementEnd"); return this; } - /** List of Commitment services of a line */ + /** List of commitment services of a line. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServices") private java.util.List commitmentServices; /** - * List of Commitment services of a line + * List of commitment services of a line. * * @param commitmentServices the value to set * @return this builder @@ -1868,12 +1874,12 @@ public Builder commitmentServices(java.util.List commitmentSe this.__explicitlySet__.add("commitmentServices"); return this; } - /** List of Rate Cards of a Subscribed Service */ + /** List of rate cards of a subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCards") private java.util.List rateCards; /** - * List of Rate Cards of a Subscribed Service + * List of rate cards of a subscribed service. * * @param rateCards the value to set * @return this builder @@ -1883,12 +1889,12 @@ public Builder rateCards(java.util.List rateCards) { this.__explicitlySet__.add("rateCards"); return this; } - /** Subscribed service creation date */ + /** Subscribed service creation date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * Subscribed service creation date + * Subscribed service creation date. * * @param timeCreated the value to set * @return this builder @@ -1898,12 +1904,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** User that created the subscribed service */ + /** User that created the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private String createdBy; /** - * User that created the subscribed service + * User that created the subscribed service. * * @param createdBy the value to set * @return this builder @@ -1913,12 +1919,12 @@ public Builder createdBy(String createdBy) { this.__explicitlySet__.add("createdBy"); return this; } - /** Subscribed service last update date */ + /** Subscribed service last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * Subscribed service last update date + * Subscribed service last update date. * * @param timeUpdated the value to set * @return this builder @@ -1928,12 +1934,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** User that updated the subscribed service */ + /** User that updated the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private String updatedBy; /** - * User that updated the subscribed service + * User that updated the subscribed service. * * @param updatedBy the value to set * @return this builder @@ -1943,12 +1949,12 @@ public Builder updatedBy(String updatedBy) { this.__explicitlySet__.add("updatedBy"); return this; } - /** SPM Ratecard Type */ + /** SPM (Subscription Plan Management) rate card type. */ @com.fasterxml.jackson.annotation.JsonProperty("ratecardType") private String ratecardType; /** - * SPM Ratecard Type + * SPM (Subscription Plan Management) rate card type. * * @param ratecardType the value to set * @return this builder @@ -2431,12 +2437,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal Subscribed Service ID */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal Subscribed Service ID * * @return the value */ @@ -2444,12 +2450,12 @@ public String getId() { return id; } - /** Subscribed Service line type */ + /** Subscribed service line type. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private final String type; /** - * Subscribed Service line type + * Subscribed service line type. * * @return the value */ @@ -2457,12 +2463,12 @@ public String getType() { return type; } - /** Subscribed service line number */ + /** Subscribed service line number. */ @com.fasterxml.jackson.annotation.JsonProperty("serialNumber") private final String serialNumber; /** - * Subscribed service line number + * Subscribed service line number. * * @return the value */ @@ -2470,12 +2476,12 @@ public String getSerialNumber() { return serialNumber; } - /** Subscription ID associated to the subscribed service */ + /** Subscription ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") private final String subscriptionId; /** - * Subscription ID associated to the subscribed service + * Subscription ID associated with the subscribed service. * * @return the value */ @@ -2490,12 +2496,12 @@ public RateCardProduct getProduct() { return product; } - /** Subscribed service start date */ + /** Subscribed service start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Subscribed service start date + * Subscribed service start date. * * @return the value */ @@ -2503,12 +2509,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Subscribed service end date */ + /** Subscribed service end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Subscribed service end date + * Subscribed service end date. * * @return the value */ @@ -2516,12 +2522,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Subscribed service quantity */ + /** Subscribed service quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Subscribed service quantity + * Subscribed service quantity. * * @return the value */ @@ -2529,12 +2535,12 @@ public String getQuantity() { return quantity; } - /** Subscribed service status */ + /** Subscribed service status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private final String status; /** - * Subscribed service status + * Subscribed service status. * * @return the value */ @@ -2542,12 +2548,12 @@ public String getStatus() { return status; } - /** Subscribed service operation type */ + /** Subscribed service operation type. */ @com.fasterxml.jackson.annotation.JsonProperty("operationType") private final String operationType; /** - * Subscribed service operation type + * Subscribed service operation type. * * @return the value */ @@ -2555,12 +2561,12 @@ public String getOperationType() { return operationType; } - /** Subscribed service net unit price */ + /** Subscribed service net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Subscribed service net unit price + * Subscribed service net unit price. * * @return the value */ @@ -2569,15 +2575,15 @@ public String getNetUnitPrice() { } /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, the + * amount lapses. Also used in calculation of total contract line value. */ @com.fasterxml.jackson.annotation.JsonProperty("pricePeriod") private final String pricePeriod; /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, the + * amount lapses. Also used in calculation of total contract line value. * * @return the value */ @@ -2585,12 +2591,12 @@ public String getPricePeriod() { return pricePeriod; } - /** Subscribed service line net amount */ + /** Subscribed service line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("lineNetAmount") private final String lineNetAmount; /** - * Subscribed service line net amount + * Subscribed service line net amount. * * @return the value */ @@ -2598,12 +2604,12 @@ public String getLineNetAmount() { return lineNetAmount; } - /** Indicates if the commitment lines can have different quantities */ + /** Indicates if the commitment lines can have different quantities. */ @com.fasterxml.jackson.annotation.JsonProperty("isVariableCommitment") private final Boolean isVariableCommitment; /** - * Indicates if the commitment lines can have different quantities + * Indicates if the commitment lines can have different quantities. * * @return the value */ @@ -2612,13 +2618,15 @@ public Boolean getIsVariableCommitment() { } /** - * Indicates if a service can recieve usages and consequently have available amounts computed + * Indicates if a service can recieve usages and consequently have the available amounts + * computed. */ @com.fasterxml.jackson.annotation.JsonProperty("isAllowance") private final Boolean isAllowance; /** - * Indicates if a service can recieve usages and consequently have available amounts computed + * Indicates if a service can recieve usages and consequently have the available amounts + * computed. * * @return the value */ @@ -2626,12 +2634,12 @@ public Boolean getIsAllowance() { return isAllowance; } - /** Subscribed service used amount */ + /** Subscribed service used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private final String usedAmount; /** - * Subscribed service used amount + * Subscribed service used amount. * * @return the value */ @@ -2639,12 +2647,12 @@ public String getUsedAmount() { return usedAmount; } - /** Subscribed sercice available or remaining amount */ + /** Subscribed sercice available or remaining amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private final String availableAmount; /** - * Subscribed sercice available or remaining amount + * Subscribed sercice available or remaining amount. * * @return the value */ @@ -2652,12 +2660,12 @@ public String getAvailableAmount() { return availableAmount; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private final String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @return the value */ @@ -2665,12 +2673,12 @@ public String getFundedAllocationValue() { return fundedAllocationValue; } - /** Indicator on whether or not there has been usage for the subscribed service */ + /** Indicates whether or not there has been usage for the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("isHavingUsage") private final Boolean isHavingUsage; /** - * Indicator on whether or not there has been usage for the subscribed service + * Indicates whether or not there has been usage for the subscribed service. * * @return the value */ @@ -2679,15 +2687,15 @@ public Boolean getIsHavingUsage() { } /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares rate between the rate card and the active price list, and the minimum rate + * would be fetched. */ @com.fasterxml.jackson.annotation.JsonProperty("isCapToPriceList") private final Boolean isCapToPriceList; /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares rate between the rate card and the active price list, and the minimum rate + * would be fetched. * * @return the value */ @@ -2695,12 +2703,12 @@ public Boolean getIsCapToPriceList() { return isCapToPriceList; } - /** Subscribed service credit percentage */ + /** Subscribed service credit percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("creditPercentage") private final String creditPercentage; /** - * Subscribed service credit percentage + * Subscribed service credit percentage. * * @return the value */ @@ -2709,15 +2717,15 @@ public String getCreditPercentage() { } /** - * This field contains the name of the partner to which the subscription belongs - depending on - * which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerTransactionType") private final String partnerTransactionType; /** - * This field contains the name of the partner to which the subscription belongs - depending on - * which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. * * @return the value */ @@ -2725,12 +2733,12 @@ public String getPartnerTransactionType() { return partnerTransactionType; } - /** Used in context of service credit lines */ + /** Used in context of service credit lines. */ @com.fasterxml.jackson.annotation.JsonProperty("isCreditEnabled") private final Boolean isCreditEnabled; /** - * Used in context of service credit lines + * Used in context of service credit lines. * * @return the value */ @@ -2738,12 +2746,12 @@ public Boolean getIsCreditEnabled() { return isCreditEnabled; } - /** Overage Policy of Subscribed Service */ + /** Overage policy of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePolicy") private final String overagePolicy; /** - * Overage Policy of Subscribed Service + * Overage policy of subscribed service. * * @return the value */ @@ -2751,12 +2759,12 @@ public String getOveragePolicy() { return overagePolicy; } - /** Overage Bill To of Subscribed Service */ + /** Overage bill to of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overageBillTo") private final String overageBillTo; /** - * Overage Bill To of Subscribed Service + * Overage bill to of subscribed service. * * @return the value */ @@ -2764,12 +2772,12 @@ public String getOverageBillTo() { return overageBillTo; } - /** Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) */ + /** Pay As You Go policy of the subscribed service. Can be null, indicating no PAYG policy. */ @com.fasterxml.jackson.annotation.JsonProperty("paygPolicy") private final String paygPolicy; /** - * Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) + * Pay As You Go policy of the subscribed service. Can be null, indicating no PAYG policy. * * @return the value */ @@ -2778,15 +2786,15 @@ public String getPaygPolicy() { } /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo line. */ @com.fasterxml.jackson.annotation.JsonProperty("promoOrderLineId") private final Long promoOrderLineId; /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo line. * * @return the value */ @@ -2795,13 +2803,13 @@ public Long getPromoOrderLineId() { } /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional pricing. */ @com.fasterxml.jackson.annotation.JsonProperty("promotionPricingType") private final String promotionPricingType; /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional pricing. * * @return the value */ @@ -2809,12 +2817,12 @@ public String getPromotionPricingType() { return promotionPricingType; } - /** Subscribed service Rate Card Discount Percentage */ + /** Subscribed service rate card discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardDiscountPercentage") private final String rateCardDiscountPercentage; /** - * Subscribed service Rate Card Discount Percentage + * Subscribed service rate card discount percentage. * * @return the value */ @@ -2822,12 +2830,12 @@ public String getRateCardDiscountPercentage() { return rateCardDiscountPercentage; } - /** Subscribed service Overage Discount Percentage */ + /** Subscribed service overage discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("overageDiscountPercentage") private final String overageDiscountPercentage; /** - * Subscribed service Overage Discount Percentage + * Subscribed service overage discount percentage. * * @return the value */ @@ -2856,12 +2864,12 @@ public SubscribedServiceAddress getBillToAddress() { return billToAddress; } - /** Payment Number of Subscribed Service */ + /** Payment number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentNumber") private final String paymentNumber; /** - * Payment Number of Subscribed Service + * Payment number of the subscribed service. * * @return the value */ @@ -2869,12 +2877,12 @@ public String getPaymentNumber() { return paymentNumber; } - /** Subscribed service payment expiry date */ + /** Subscribed service payment expiration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timePaymentExpiry") private final java.util.Date timePaymentExpiry; /** - * Subscribed service payment expiry date + * Subscribed service payment expiration date. * * @return the value */ @@ -2889,12 +2897,12 @@ public SubscribedServicePaymentTerm getPaymentTerm() { return paymentTerm; } - /** Payment Method of Subscribed Service */ + /** Payment method of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentMethod") private final String paymentMethod; /** - * Payment Method of Subscribed Service + * Payment method of the subscribed service. * * @return the value */ @@ -2902,12 +2910,12 @@ public String getPaymentMethod() { return paymentMethod; } - /** Subscribed service Transaction Extension Id */ + /** Subscribed service transaction extension ID. */ @com.fasterxml.jackson.annotation.JsonProperty("transactionExtensionId") private final Long transactionExtensionId; /** - * Subscribed service Transaction Extension Id + * Subscribed service transaction extension ID. * * @return the value */ @@ -2915,12 +2923,12 @@ public Long getTransactionExtensionId() { return transactionExtensionId; } - /** Sales Channel of Subscribed Service */ + /** Sales channel of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("salesChannel") private final String salesChannel; /** - * Sales Channel of Subscribed Service + * Sales channel of the subscribed service. * * @return the value */ @@ -2928,12 +2936,12 @@ public String getSalesChannel() { return salesChannel; } - /** Subscribed service eligible to renew field */ + /** Subscribed service eligible to renew field. */ @com.fasterxml.jackson.annotation.JsonProperty("eligibleToRenew") private final String eligibleToRenew; /** - * Subscribed service eligible to renew field + * Subscribed service eligible to renew field. * * @return the value */ @@ -2941,12 +2949,12 @@ public String getEligibleToRenew() { return eligibleToRenew; } - /** SPM renewed Subscription ID */ + /** SPM (Subscription Plan Management) renewed subscription ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewedSubscribedServiceId") private final String renewedSubscribedServiceId; /** - * SPM renewed Subscription ID + * SPM (Subscription Plan Management) renewed subscription ID. * * @return the value */ @@ -2954,12 +2962,12 @@ public String getRenewedSubscribedServiceId() { return renewedSubscribedServiceId; } - /** Term value in Months */ + /** Term value in months. */ @com.fasterxml.jackson.annotation.JsonProperty("termValue") private final Long termValue; /** - * Term value in Months + * Term value in months. * * @return the value */ @@ -2967,12 +2975,12 @@ public Long getTermValue() { return termValue; } - /** Term value UOM */ + /** Term value UOM (Unit of Measure). */ @com.fasterxml.jackson.annotation.JsonProperty("termValueUom") private final String termValueUom; /** - * Term value UOM + * Term value UOM (Unit of Measure). * * @return the value */ @@ -2980,12 +2988,12 @@ public String getTermValueUom() { return termValueUom; } - /** Subscribed service Opportunity Id */ + /** Subscribed service opportunity ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyId") private final Long renewalOptyId; /** - * Subscribed service Opportunity Id + * Subscribed service opportunity ID. * * @return the value */ @@ -2993,12 +3001,12 @@ public Long getRenewalOptyId() { return renewalOptyId; } - /** Renewal Opportunity Number of Subscribed Service */ + /** Renewal opportunity number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyNumber") private final String renewalOptyNumber; /** - * Renewal Opportunity Number of Subscribed Service + * Renewal opportunity number of the subscribed service. * * @return the value */ @@ -3006,12 +3014,12 @@ public String getRenewalOptyNumber() { return renewalOptyNumber; } - /** Renewal Opportunity Type of Subscribed Service */ + /** Renewal opportunity type of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyType") private final String renewalOptyType; /** - * Renewal Opportunity Type of Subscribed Service + * Renewal opportunity type of the subscribed service. * * @return the value */ @@ -3019,12 +3027,12 @@ public String getRenewalOptyType() { return renewalOptyType; } - /** Booking Opportunity Number of Subscribed Service */ + /** Booking opportunity number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("bookingOptyNumber") private final String bookingOptyNumber; /** - * Booking Opportunity Number of Subscribed Service + * Booking opportunity number of the subscribed service. * * @return the value */ @@ -3032,12 +3040,12 @@ public String getBookingOptyNumber() { return bookingOptyNumber; } - /** Subscribed service Revenue Line Id */ + /** Subscribed service revenue line ID. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineId") private final Long revenueLineId; /** - * Subscribed service Revenue Line Id + * Subscribed service revenue line ID. * * @return the value */ @@ -3045,12 +3053,12 @@ public Long getRevenueLineId() { return revenueLineId; } - /** Revenue Line NUmber of Subscribed Service */ + /** Revenue line number of the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineNumber") private final String revenueLineNumber; /** - * Revenue Line NUmber of Subscribed Service + * Revenue line number of the subscribed service. * * @return the value */ @@ -3058,12 +3066,12 @@ public String getRevenueLineNumber() { return revenueLineNumber; } - /** Subscribed service Major Set */ + /** Subscribed service major set. */ @com.fasterxml.jackson.annotation.JsonProperty("majorSet") private final Long majorSet; /** - * Subscribed service Major Set + * Subscribed service major set. * * @return the value */ @@ -3071,12 +3079,12 @@ public Long getMajorSet() { return majorSet; } - /** Subscribed service Major Set Start date */ + /** Subscribed service major set start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetStart") private final java.util.Date timeMajorsetStart; /** - * Subscribed service Major Set Start date + * Subscribed service major set start date. * * @return the value */ @@ -3084,12 +3092,12 @@ public java.util.Date getTimeMajorsetStart() { return timeMajorsetStart; } - /** Subscribed service Major Set End date */ + /** Subscribed service major set end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetEnd") private final java.util.Date timeMajorsetEnd; /** - * Subscribed service Major Set End date + * Subscribed service major set end date. * * @return the value */ @@ -3097,12 +3105,12 @@ public java.util.Date getTimeMajorsetEnd() { return timeMajorsetEnd; } - /** Subscribed service System ARR */ + /** Subscribed service system ARR (Annualized Recurring Revenue). */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInLc") private final String systemArrInLc; /** - * Subscribed service System ARR + * Subscribed service system ARR (Annualized Recurring Revenue). * * @return the value */ @@ -3110,12 +3118,12 @@ public String getSystemArrInLc() { return systemArrInLc; } - /** Subscribed service System ARR in Standard Currency */ + /** Subscribed service system ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInSc") private final String systemArrInSc; /** - * Subscribed service System ARR in Standard Currency + * Subscribed service system ARR in standard currency. * * @return the value */ @@ -3123,12 +3131,12 @@ public String getSystemArrInSc() { return systemArrInSc; } - /** Subscribed service System ATR-ARR */ + /** Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInLc") private final String systemAtrArrInLc; /** - * Subscribed service System ATR-ARR + * Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). * * @return the value */ @@ -3136,12 +3144,12 @@ public String getSystemAtrArrInLc() { return systemAtrArrInLc; } - /** Subscribed service System ATR-ARR in Standard Currency */ + /** Subscribed service system ATR-ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInSc") private final String systemAtrArrInSc; /** - * Subscribed service System ATR-ARR in Standard Currency + * Subscribed service system ATR-ARR in standard currency. * * @return the value */ @@ -3149,12 +3157,12 @@ public String getSystemAtrArrInSc() { return systemAtrArrInSc; } - /** Subscribed service Revised ARR */ + /** Subscribed service revised ARR. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInLc") private final String revisedArrInLc; /** - * Subscribed service Revised ARR + * Subscribed service revised ARR. * * @return the value */ @@ -3162,12 +3170,12 @@ public String getRevisedArrInLc() { return revisedArrInLc; } - /** Subscribed service Revised ARR in Standard Currency */ + /** Subscribed service revised ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInSc") private final String revisedArrInSc; /** - * Subscribed service Revised ARR in Standard Currency + * Subscribed service revised ARR in standard currency. * * @return the value */ @@ -3175,12 +3183,12 @@ public String getRevisedArrInSc() { return revisedArrInSc; } - /** Subscribed service total value */ + /** Subscribed service total value. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private final String totalValue; /** - * Subscribed service total value + * Subscribed service total value. * * @return the value */ @@ -3188,12 +3196,12 @@ public String getTotalValue() { return totalValue; } - /** Subscribed service Promotion Amount */ + /** Subscribed service promotion amount. */ @com.fasterxml.jackson.annotation.JsonProperty("originalPromoAmount") private final String originalPromoAmount; /** - * Subscribed service Promotion Amount + * Subscribed service promotion amount. * * @return the value */ @@ -3201,12 +3209,12 @@ public String getOriginalPromoAmount() { return originalPromoAmount; } - /** Sales Order Header associated to the subscribed service */ + /** Sales order header associated to the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderHeaderId") private final Long orderHeaderId; /** - * Sales Order Header associated to the subscribed service + * Sales order header associated to the subscribed service. * * @return the value */ @@ -3214,12 +3222,12 @@ public Long getOrderHeaderId() { return orderHeaderId; } - /** Sales Order Number associated to the subscribed service */ + /** Sales order number associated to the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private final Long orderNumber; /** - * Sales Order Number associated to the subscribed service + * Sales order number associated to the subscribed service. * * @return the value */ @@ -3227,12 +3235,12 @@ public Long getOrderNumber() { return orderNumber; } - /** Order Type of Subscribed Service */ + /** Order type of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderType") private final String orderType; /** - * Order Type of Subscribed Service + * Order type of subscribed service. * * @return the value */ @@ -3240,12 +3248,12 @@ public String getOrderType() { return orderType; } - /** Sales Order Line Id associated to the subscribed service */ + /** Sales order line ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineId") private final Long orderLineId; /** - * Sales Order Line Id associated to the subscribed service + * Sales order line ID associated with the subscribed service. * * @return the value */ @@ -3253,12 +3261,12 @@ public Long getOrderLineId() { return orderLineId; } - /** Sales Order Line Number associated to the subscribed service */ + /** Sales order line number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineNumber") private final Integer orderLineNumber; /** - * Sales Order Line Number associated to the subscribed service + * Sales order line number associated with the subscribed service. * * @return the value */ @@ -3266,12 +3274,12 @@ public Integer getOrderLineNumber() { return orderLineNumber; } - /** Subscribed service commitment schedule Id */ + /** Subscribed service commitment schedule ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentScheduleId") private final String commitmentScheduleId; /** - * Subscribed service commitment schedule Id + * Subscribed service commitment schedule ID. * * @return the value */ @@ -3279,12 +3287,12 @@ public String getCommitmentScheduleId() { return commitmentScheduleId; } - /** Subscribed service sales account party id */ + /** Subscribed service sales account party ID. */ @com.fasterxml.jackson.annotation.JsonProperty("salesAccountPartyId") private final Long salesAccountPartyId; /** - * Subscribed service sales account party id + * Subscribed service sales account party ID. * * @return the value */ @@ -3292,12 +3300,12 @@ public Long getSalesAccountPartyId() { return salesAccountPartyId; } - /** Subscribed service data center */ + /** Subscribed service data center. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private final String dataCenter; /** - * Subscribed service data center + * Subscribed service data center. * * @return the value */ @@ -3305,12 +3313,12 @@ public String getDataCenter() { return dataCenter; } - /** Subscribed service data center region */ + /** Subscribed service data center region. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenterRegion") private final String dataCenterRegion; /** - * Subscribed service data center region + * Subscribed service data center region. * * @return the value */ @@ -3318,12 +3326,12 @@ public String getDataCenterRegion() { return dataCenterRegion; } - /** Subscribed service admin email id */ + /** Subscribed service admin email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("adminEmail") private final String adminEmail; /** - * Subscribed service admin email id + * Subscribed service admin email ID. * * @return the value */ @@ -3331,12 +3339,12 @@ public String getAdminEmail() { return adminEmail; } - /** Subscribed service buyer email id */ + /** Subscribed service buyer email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("buyerEmail") private final String buyerEmail; /** - * Subscribed service buyer email id + * Subscribed service buyer email ID. * * @return the value */ @@ -3344,12 +3352,12 @@ public String getBuyerEmail() { return buyerEmail; } - /** Subscribed service source */ + /** Subscribed service source. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionSource") private final String subscriptionSource; /** - * Subscribed service source + * Subscribed service source. * * @return the value */ @@ -3357,12 +3365,12 @@ public String getSubscriptionSource() { return subscriptionSource; } - /** Subscribed service provisioning source */ + /** Subscribed service provisioning source. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningSource") private final String provisioningSource; /** - * Subscribed service provisioning source + * Subscribed service provisioning source. * * @return the value */ @@ -3370,12 +3378,12 @@ public String getProvisioningSource() { return provisioningSource; } - /** Subscribed service fulfillment set */ + /** Subscribed service fulfillment set. */ @com.fasterxml.jackson.annotation.JsonProperty("fulfillmentSet") private final String fulfillmentSet; /** - * Subscribed service fulfillment set + * Subscribed service fulfillment set. * * @return the value */ @@ -3383,12 +3391,12 @@ public String getFulfillmentSet() { return fulfillmentSet; } - /** Subscribed service intent to pay flag */ + /** Subscribed service intent to pay parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isIntentToPay") private final Boolean isIntentToPay; /** - * Subscribed service intent to pay flag + * Subscribed service intent to pay parameter. * * @return the value */ @@ -3396,12 +3404,12 @@ public Boolean getIsIntentToPay() { return isIntentToPay; } - /** Subscribed service payg flag */ + /** Subscribed service PAYG parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isPayg") private final Boolean isPayg; /** - * Subscribed service payg flag + * Subscribed service PAYG parameter. * * @return the value */ @@ -3409,12 +3417,12 @@ public Boolean getIsPayg() { return isPayg; } - /** Subscribed service pricing model */ + /** Subscribed service pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private final String pricingModel; /** - * Subscribed service pricing model + * Subscribed service pricing model. * * @return the value */ @@ -3422,12 +3430,12 @@ public String getPricingModel() { return pricingModel; } - /** Subscribed service program type */ + /** Subscribed service program type. */ @com.fasterxml.jackson.annotation.JsonProperty("programType") private final String programType; /** - * Subscribed service program type + * Subscribed service program type. * * @return the value */ @@ -3435,12 +3443,12 @@ public String getProgramType() { return programType; } - /** Subscribed service start date type */ + /** Subscribed service start date type. */ @com.fasterxml.jackson.annotation.JsonProperty("startDateType") private final String startDateType; /** - * Subscribed service start date type + * Subscribed service start date type. * * @return the value */ @@ -3448,12 +3456,12 @@ public String getStartDateType() { return startDateType; } - /** Subscribed service provisioning date */ + /** Subscribed service provisioning date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeProvisioned") private final java.util.Date timeProvisioned; /** - * Subscribed service provisioning date + * Subscribed service provisioning date. * * @return the value */ @@ -3461,12 +3469,12 @@ public java.util.Date getTimeProvisioned() { return timeProvisioned; } - /** Subscribed service promotion type */ + /** Subscribed service promotion type. */ @com.fasterxml.jackson.annotation.JsonProperty("promoType") private final String promoType; /** - * Subscribed service promotion type + * Subscribed service promotion type. * * @return the value */ @@ -3551,12 +3559,12 @@ public SubscribedServiceAddress getResellerAddress() { return resellerAddress; } - /** Subscribed service CSI number */ + /** Subscribed service CSI number. */ @com.fasterxml.jackson.annotation.JsonProperty("csi") private final Long csi; /** - * Subscribed service CSI number + * Subscribed service CSI number. * * @return the value */ @@ -3564,12 +3572,12 @@ public Long getCsi() { return csi; } - /** Identifier for a customer's transactions for purchase of ay oracle services */ + /** Identifier for a customer's transactions, for purchase of any Oracle services. */ @com.fasterxml.jackson.annotation.JsonProperty("customerTransactionReference") private final String customerTransactionReference; /** - * Identifier for a customer's transactions for purchase of ay oracle services + * Identifier for a customer's transactions, for purchase of any Oracle services. * * @return the value */ @@ -3577,12 +3585,12 @@ public String getCustomerTransactionReference() { return customerTransactionReference; } - /** Subscribed service partner credit amount */ + /** Subscribed service partner credit amount. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerCreditAmount") private final String partnerCreditAmount; /** - * Subscribed service partner credit amount + * Subscribed service partner credit amount. * * @return the value */ @@ -3590,12 +3598,12 @@ public String getPartnerCreditAmount() { return partnerCreditAmount; } - /** Indicates if the Subscribed service has a single ratecard */ + /** Indicates if the subscribed service has a single rate card. */ @com.fasterxml.jackson.annotation.JsonProperty("isSingleRateCard") private final Boolean isSingleRateCard; /** - * Indicates if the Subscribed service has a single ratecard + * Indicates if the subscribed service has a single rate card. * * @return the value */ @@ -3603,12 +3611,12 @@ public Boolean getIsSingleRateCard() { return isSingleRateCard; } - /** Subscribed service agreement ID */ + /** Subscribed service agreement ID. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementId") private final Long agreementId; /** - * Subscribed service agreement ID + * Subscribed service agreement ID. * * @return the value */ @@ -3616,12 +3624,12 @@ public Long getAgreementId() { return agreementId; } - /** Subscribed service agrrement name */ + /** Subscribed service agreement name. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementName") private final String agreementName; /** - * Subscribed service agrrement name + * Subscribed service agreement name. * * @return the value */ @@ -3629,12 +3637,12 @@ public String getAgreementName() { return agreementName; } - /** Subscribed service agrrement type */ + /** Subscribed service agreement type. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementType") private final String agreementType; /** - * Subscribed service agrrement type + * Subscribed service agreement type. * * @return the value */ @@ -3642,12 +3650,12 @@ public String getAgreementType() { return agreementType; } - /** Subscribed service invoice frequency */ + /** Subscribed service invoice frequency. */ @com.fasterxml.jackson.annotation.JsonProperty("billingFrequency") private final String billingFrequency; /** - * Subscribed service invoice frequency + * Subscribed service invoice frequency. * * @return the value */ @@ -3655,12 +3663,12 @@ public String getBillingFrequency() { return billingFrequency; } - /** Subscribed service welcome email sent date */ + /** Subscribed service welcome email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeWelcomeEmailSent") private final java.util.Date timeWelcomeEmailSent; /** - * Subscribed service welcome email sent date + * Subscribed service welcome email sent date. * * @return the value */ @@ -3668,12 +3676,12 @@ public java.util.Date getTimeWelcomeEmailSent() { return timeWelcomeEmailSent; } - /** Subscribed service service configuration email sent date */ + /** Subscribed service configuration email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeServiceConfigurationEmailSent") private final java.util.Date timeServiceConfigurationEmailSent; /** - * Subscribed service service configuration email sent date + * Subscribed service configuration email sent date. * * @return the value */ @@ -3681,12 +3689,12 @@ public java.util.Date getTimeServiceConfigurationEmailSent() { return timeServiceConfigurationEmailSent; } - /** Subscribed service customer config date */ + /** Subscribed service customer configuration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCustomerConfig") private final java.util.Date timeCustomerConfig; /** - * Subscribed service customer config date + * Subscribed service customer configuration date. * * @return the value */ @@ -3694,12 +3702,12 @@ public java.util.Date getTimeCustomerConfig() { return timeCustomerConfig; } - /** Subscribed service agrrement end date */ + /** Subscribed service agreement end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeAgreementEnd") private final java.util.Date timeAgreementEnd; /** - * Subscribed service agrrement end date + * Subscribed service agreement end date. * * @return the value */ @@ -3707,12 +3715,12 @@ public java.util.Date getTimeAgreementEnd() { return timeAgreementEnd; } - /** List of Commitment services of a line */ + /** List of commitment services of a line. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServices") private final java.util.List commitmentServices; /** - * List of Commitment services of a line + * List of commitment services of a line. * * @return the value */ @@ -3720,12 +3728,12 @@ public java.util.List getCommitmentServices() { return commitmentServices; } - /** List of Rate Cards of a Subscribed Service */ + /** List of rate cards of a subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCards") private final java.util.List rateCards; /** - * List of Rate Cards of a Subscribed Service + * List of rate cards of a subscribed service. * * @return the value */ @@ -3733,12 +3741,12 @@ public java.util.List getRateCards() { return rateCards; } - /** Subscribed service creation date */ + /** Subscribed service creation date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * Subscribed service creation date + * Subscribed service creation date. * * @return the value */ @@ -3746,12 +3754,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** User that created the subscribed service */ + /** User that created the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private final String createdBy; /** - * User that created the subscribed service + * User that created the subscribed service. * * @return the value */ @@ -3759,12 +3767,12 @@ public String getCreatedBy() { return createdBy; } - /** Subscribed service last update date */ + /** Subscribed service last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * Subscribed service last update date + * Subscribed service last update date. * * @return the value */ @@ -3772,12 +3780,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** User that updated the subscribed service */ + /** User that updated the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private final String updatedBy; /** - * User that updated the subscribed service + * User that updated the subscribed service. * * @return the value */ @@ -3785,12 +3793,12 @@ public String getUpdatedBy() { return updatedBy; } - /** SPM Ratecard Type */ + /** SPM (Subscription Plan Management) rate card type. */ @com.fasterxml.jackson.annotation.JsonProperty("ratecardType") private final String ratecardType; /** - * SPM Ratecard Type + * SPM (Subscription Plan Management) rate card type. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceAddress.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceAddress.java index 7f380eff119..39846bb14f9 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceAddress.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceAddress.java @@ -127,12 +127,12 @@ public Builder isShipTo(Boolean isShipTo) { this.__explicitlySet__.add("isShipTo"); return this; } - /** Bill to site use Id. */ + /** Bill to site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("billSiteUseId") private Long billSiteUseId; /** - * Bill to site use Id. + * Bill to site use ID. * * @param billSiteUseId the value to set * @return this builder @@ -142,12 +142,12 @@ public Builder billSiteUseId(Long billSiteUseId) { this.__explicitlySet__.add("billSiteUseId"); return this; } - /** Service to site use Id. */ + /** Service-to-site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("service2SiteUseId") private Long service2SiteUseId; /** - * Service to site use Id. + * Service-to-site use ID. * * @param service2SiteUseId the value to set * @return this builder @@ -157,12 +157,12 @@ public Builder service2SiteUseId(Long service2SiteUseId) { this.__explicitlySet__.add("service2SiteUseId"); return this; } - /** TCA customer account site Id. */ + /** TCA (Trading Community Architecture) customer account site ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustAcctSiteId") private Long tcaCustAcctSiteId; /** - * TCA customer account site Id. + * TCA (Trading Community Architecture) customer account site ID. * * @param tcaCustAcctSiteId the value to set * @return this builder @@ -310,12 +310,12 @@ public Boolean getIsShipTo() { return isShipTo; } - /** Bill to site use Id. */ + /** Bill to site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("billSiteUseId") private final Long billSiteUseId; /** - * Bill to site use Id. + * Bill to site use ID. * * @return the value */ @@ -323,12 +323,12 @@ public Long getBillSiteUseId() { return billSiteUseId; } - /** Service to site use Id. */ + /** Service-to-site use ID. */ @com.fasterxml.jackson.annotation.JsonProperty("service2SiteUseId") private final Long service2SiteUseId; /** - * Service to site use Id. + * Service-to-site use ID. * * @return the value */ @@ -336,12 +336,12 @@ public Long getService2SiteUseId() { return service2SiteUseId; } - /** TCA customer account site Id. */ + /** TCA (Trading Community Architecture) customer account site ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustAcctSiteId") private final Long tcaCustAcctSiteId; /** - * TCA customer account site Id. + * TCA (Trading Community Architecture) customer account site ID. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceBusinessPartner.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceBusinessPartner.java index f239cbfb5bd..1d68ecb2f6a 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceBusinessPartner.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceBusinessPartner.java @@ -58,12 +58,12 @@ public SubscribedServiceBusinessPartner( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Commercial name also called customer name. */ + /** Commercial name, also referred to as customer name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Commercial name also called customer name. + * Commercial name, also referred to as customer name. * * @param name the value to set * @return this builder @@ -88,12 +88,12 @@ public Builder namePhonetic(String namePhonetic) { this.__explicitlySet__.add("namePhonetic"); return this; } - /** TCA customer account number. */ + /** TCA (Trading Community Architecture) customer account number. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustAccountNumber") private String tcaCustAccountNumber; /** - * TCA customer account number. + * TCA (Trading Community Architecture) customer account number. * * @param tcaCustAccountNumber the value to set * @return this builder @@ -103,12 +103,12 @@ public Builder tcaCustAccountNumber(String tcaCustAccountNumber) { this.__explicitlySet__.add("tcaCustAccountNumber"); return this; } - /** The business partner is part of the public sector or not. */ + /** Specifies whether or not the business partner is part of the public sector. */ @com.fasterxml.jackson.annotation.JsonProperty("isPublicSector") private Boolean isPublicSector; /** - * The business partner is part of the public sector or not. + * Specifies whether or not the business partner is part of the public sector. * * @param isPublicSector the value to set * @return this builder @@ -118,12 +118,12 @@ public Builder isPublicSector(Boolean isPublicSector) { this.__explicitlySet__.add("isPublicSector"); return this; } - /** The business partner is chain customer or not. */ + /** Specifies whether or not the business partner is a chain customer. */ @com.fasterxml.jackson.annotation.JsonProperty("isChainCustomer") private Boolean isChainCustomer; /** - * The business partner is chain customer or not. + * Specifies whether or not the business partner is a chain customer. * * @param isChainCustomer the value to set * @return this builder @@ -257,12 +257,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Commercial name also called customer name. */ + /** Commercial name, also referred to as customer name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Commercial name also called customer name. + * Commercial name, also referred to as customer name. * * @return the value */ @@ -283,12 +283,12 @@ public String getNamePhonetic() { return namePhonetic; } - /** TCA customer account number. */ + /** TCA (Trading Community Architecture) customer account number. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaCustAccountNumber") private final String tcaCustAccountNumber; /** - * TCA customer account number. + * TCA (Trading Community Architecture) customer account number. * * @return the value */ @@ -296,12 +296,12 @@ public String getTcaCustAccountNumber() { return tcaCustAccountNumber; } - /** The business partner is part of the public sector or not. */ + /** Specifies whether or not the business partner is part of the public sector. */ @com.fasterxml.jackson.annotation.JsonProperty("isPublicSector") private final Boolean isPublicSector; /** - * The business partner is part of the public sector or not. + * Specifies whether or not the business partner is part of the public sector. * * @return the value */ @@ -309,12 +309,12 @@ public Boolean getIsPublicSector() { return isPublicSector; } - /** The business partner is chain customer or not. */ + /** Specifies whether or not the business partner is a chain customer. */ @com.fasterxml.jackson.annotation.JsonProperty("isChainCustomer") private final Boolean isChainCustomer; /** - * The business partner is chain customer or not. + * Specifies whether or not the business partner is a chain customer. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceLocation.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceLocation.java index 10a54c7ede0..465720fa32d 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceLocation.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceLocation.java @@ -142,12 +142,12 @@ public Builder region(String region) { this.__explicitlySet__.add("region"); return this; } - /** Region. */ + /** TCA (Trading Community Architecture) location identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaLocationId") private Long tcaLocationId; /** - * Region. + * TCA (Trading Community Architecture) location identifier. * * @param tcaLocationId the value to set * @return this builder @@ -291,12 +291,12 @@ public String getRegion() { return region; } - /** Region. */ + /** TCA (Trading Community Architecture) location identifier. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaLocationId") private final Long tcaLocationId; /** - * Region. + * TCA (Trading Community Architecture) location identifier. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServicePaymentTerm.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServicePaymentTerm.java index d617b1970ae..787a75aa645 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServicePaymentTerm.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServicePaymentTerm.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Payment Term details
+ * Payment term details.
* 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 @@ -55,12 +55,12 @@ public SubscribedServicePaymentTerm( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Payment Term name */ + /** Payment term name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Payment Term name + * Payment term name. * * @param name the value to set * @return this builder @@ -70,12 +70,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Payment Term value */ + /** Payment term value. */ @com.fasterxml.jackson.annotation.JsonProperty("value") private String value; /** - * Payment Term value + * Payment term value. * * @param value the value to set * @return this builder @@ -85,12 +85,12 @@ public Builder value(String value) { this.__explicitlySet__.add("value"); return this; } - /** Payment term Description */ + /** Payment term description. */ @com.fasterxml.jackson.annotation.JsonProperty("description") private String description; /** - * Payment term Description + * Payment term description. * * @param description the value to set * @return this builder @@ -100,12 +100,12 @@ public Builder description(String description) { this.__explicitlySet__.add("description"); return this; } - /** Payment term active flag */ + /** Payment term active parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isActive") private Boolean isActive; /** - * Payment term active flag + * Payment term active parameter. * * @param isActive the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder isActive(Boolean isActive) { this.__explicitlySet__.add("isActive"); return this; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * Payment term last update date + * Payment term last update date. * * @param timeCreated the value to set * @return this builder @@ -130,12 +130,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** User that created the Payment term */ + /** User that created the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private String createdBy; /** - * User that created the Payment term + * User that created the payment term. * * @param createdBy the value to set * @return this builder @@ -145,12 +145,12 @@ public Builder createdBy(String createdBy) { this.__explicitlySet__.add("createdBy"); return this; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * Payment term last update date + * Payment term last update date. * * @param timeUpdated the value to set * @return this builder @@ -160,12 +160,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** User that updated the Payment term */ + /** User that updated the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private String updatedBy; /** - * User that updated the Payment term + * User that updated the payment term. * * @param updatedBy the value to set * @return this builder @@ -235,12 +235,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Payment Term name */ + /** Payment term name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Payment Term name + * Payment term name. * * @return the value */ @@ -248,12 +248,12 @@ public String getName() { return name; } - /** Payment Term value */ + /** Payment term value. */ @com.fasterxml.jackson.annotation.JsonProperty("value") private final String value; /** - * Payment Term value + * Payment term value. * * @return the value */ @@ -261,12 +261,12 @@ public String getValue() { return value; } - /** Payment term Description */ + /** Payment term description. */ @com.fasterxml.jackson.annotation.JsonProperty("description") private final String description; /** - * Payment term Description + * Payment term description. * * @return the value */ @@ -274,12 +274,12 @@ public String getDescription() { return description; } - /** Payment term active flag */ + /** Payment term active parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isActive") private final Boolean isActive; /** - * Payment term active flag + * Payment term active parameter. * * @return the value */ @@ -287,12 +287,12 @@ public Boolean getIsActive() { return isActive; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * Payment term last update date + * Payment term last update date. * * @return the value */ @@ -300,12 +300,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** User that created the Payment term */ + /** User that created the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private final String createdBy; /** - * User that created the Payment term + * User that created the payment term. * * @return the value */ @@ -313,12 +313,12 @@ public String getCreatedBy() { return createdBy; } - /** Payment term last update date */ + /** Payment term last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * Payment term last update date + * Payment term last update date. * * @return the value */ @@ -326,12 +326,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** User that updated the Payment term */ + /** User that updated the payment term. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private final String updatedBy; /** - * User that updated the Payment term + * User that updated the payment term. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceSummary.java index 3fb991702ee..8023d540be5 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed service contract details
+ * Subscribed service contract details.
* 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 @@ -358,12 +358,12 @@ public SubscribedServiceSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @param id the value to set * @return this builder @@ -373,12 +373,12 @@ public Builder id(String id) { this.__explicitlySet__.add("id"); return this; } - /** Subscribed Service line type */ + /** Subscribed service line type. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private String type; /** - * Subscribed Service line type + * Subscribed service line type. * * @param type the value to set * @return this builder @@ -388,12 +388,12 @@ public Builder type(String type) { this.__explicitlySet__.add("type"); return this; } - /** Subscribed service line number */ + /** Subscribed service line number. */ @com.fasterxml.jackson.annotation.JsonProperty("serialNumber") private String serialNumber; /** - * Subscribed service line number + * Subscribed service line number. * * @param serialNumber the value to set * @return this builder @@ -403,12 +403,12 @@ public Builder serialNumber(String serialNumber) { this.__explicitlySet__.add("serialNumber"); return this; } - /** Subscription ID associated to the subscribed service */ + /** Subscription ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") private String subscriptionId; /** - * Subscription ID associated to the subscribed service + * Subscription ID associated with the subscribed service. * * @param subscriptionId the value to set * @return this builder @@ -427,12 +427,12 @@ public Builder product(RateCardProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Subscribed service start date */ + /** Subscribed service start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Subscribed service start date + * Subscribed service start date. * * @param timeStart the value to set * @return this builder @@ -442,12 +442,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Subscribed service end date */ + /** Subscribed service end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Subscribed service end date + * Subscribed service end date. * * @param timeEnd the value to set * @return this builder @@ -457,12 +457,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** Subscribed service quantity */ + /** Subscribed service quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Subscribed service quantity + * Subscribed service quantity. * * @param quantity the value to set * @return this builder @@ -472,12 +472,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Subscribed service status */ + /** Subscribed service status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private String status; /** - * Subscribed service status + * Subscribed service status. * * @param status the value to set * @return this builder @@ -487,12 +487,12 @@ public Builder status(String status) { this.__explicitlySet__.add("status"); return this; } - /** Subscribed service operation type */ + /** Subscribed service operation type. */ @com.fasterxml.jackson.annotation.JsonProperty("operationType") private String operationType; /** - * Subscribed service operation type + * Subscribed service operation type. * * @param operationType the value to set * @return this builder @@ -502,12 +502,12 @@ public Builder operationType(String operationType) { this.__explicitlySet__.add("operationType"); return this; } - /** Subscribed service net unit price */ + /** Subscribed service net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Subscribed service net unit price + * Subscribed service net unit price. * * @param netUnitPrice the value to set * @return this builder @@ -518,15 +518,15 @@ public Builder netUnitPrice(String netUnitPrice) { return this; } /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, + * the amount lapses. Also used in calculation of total contract line value. */ @com.fasterxml.jackson.annotation.JsonProperty("pricePeriod") private String pricePeriod; /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, + * the amount lapses. Also used in calculation of total contract line value. * * @param pricePeriod the value to set * @return this builder @@ -536,12 +536,12 @@ public Builder pricePeriod(String pricePeriod) { this.__explicitlySet__.add("pricePeriod"); return this; } - /** Subscribed service line net amount */ + /** Subscribed service line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("lineNetAmount") private String lineNetAmount; /** - * Subscribed service line net amount + * Subscribed service line net amount. * * @param lineNetAmount the value to set * @return this builder @@ -551,12 +551,12 @@ public Builder lineNetAmount(String lineNetAmount) { this.__explicitlySet__.add("lineNetAmount"); return this; } - /** Indicates if the commitment lines can have different quantities */ + /** Indicates if the commitment lines can have different quantities. */ @com.fasterxml.jackson.annotation.JsonProperty("isVariableCommitment") private Boolean isVariableCommitment; /** - * Indicates if the commitment lines can have different quantities + * Indicates if the commitment lines can have different quantities. * * @param isVariableCommitment the value to set * @return this builder @@ -568,14 +568,14 @@ public Builder isVariableCommitment(Boolean isVariableCommitment) { } /** * Indicates if a service can recieve usages and consequently have available amounts - * computed + * computed. */ @com.fasterxml.jackson.annotation.JsonProperty("isAllowance") private Boolean isAllowance; /** * Indicates if a service can recieve usages and consequently have available amounts - * computed + * computed. * * @param isAllowance the value to set * @return this builder @@ -585,12 +585,12 @@ public Builder isAllowance(Boolean isAllowance) { this.__explicitlySet__.add("isAllowance"); return this; } - /** Subscribed service used amount */ + /** Subscribed service used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private String usedAmount; /** - * Subscribed service used amount + * Subscribed service used amount. * * @param usedAmount the value to set * @return this builder @@ -600,12 +600,12 @@ public Builder usedAmount(String usedAmount) { this.__explicitlySet__.add("usedAmount"); return this; } - /** Subscribed sercice available or remaining amount */ + /** Subscribed sercice available or remaining amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private String availableAmount; /** - * Subscribed sercice available or remaining amount + * Subscribed sercice available or remaining amount. * * @param availableAmount the value to set * @return this builder @@ -615,12 +615,12 @@ public Builder availableAmount(String availableAmount) { this.__explicitlySet__.add("availableAmount"); return this; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @param fundedAllocationValue the value to set * @return this builder @@ -630,12 +630,12 @@ public Builder fundedAllocationValue(String fundedAllocationValue) { this.__explicitlySet__.add("fundedAllocationValue"); return this; } - /** Indicator on whether or not there has been usage for the subscribed service */ + /** Indicates whether or not there has been usage for the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("isHavingUsage") private Boolean isHavingUsage; /** - * Indicator on whether or not there has been usage for the subscribed service + * Indicates whether or not there has been usage for the subscribed service. * * @param isHavingUsage the value to set * @return this builder @@ -646,15 +646,15 @@ public Builder isHavingUsage(Boolean isHavingUsage) { return this; } /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares the rate between the rate card and the active price list, and the + * minimum rate would be fetched. */ @com.fasterxml.jackson.annotation.JsonProperty("isCapToPriceList") private Boolean isCapToPriceList; /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares the rate between the rate card and the active price list, and the + * minimum rate would be fetched. * * @param isCapToPriceList the value to set * @return this builder @@ -664,12 +664,12 @@ public Builder isCapToPriceList(Boolean isCapToPriceList) { this.__explicitlySet__.add("isCapToPriceList"); return this; } - /** Subscribed service credit percentage */ + /** Subscribed service credit percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("creditPercentage") private String creditPercentage; /** - * Subscribed service credit percentage + * Subscribed service credit percentage. * * @param creditPercentage the value to set * @return this builder @@ -680,15 +680,15 @@ public Builder creditPercentage(String creditPercentage) { return this; } /** - * This field contains the name of the partner to which the subscription belongs - depending - * on which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerTransactionType") private String partnerTransactionType; /** - * This field contains the name of the partner to which the subscription belongs - depending - * on which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. * * @param partnerTransactionType the value to set * @return this builder @@ -698,12 +698,12 @@ public Builder partnerTransactionType(String partnerTransactionType) { this.__explicitlySet__.add("partnerTransactionType"); return this; } - /** Used in context of service credit lines */ + /** Used in context of service credit lines. */ @com.fasterxml.jackson.annotation.JsonProperty("isCreditEnabled") private Boolean isCreditEnabled; /** - * Used in context of service credit lines + * Used in context of service credit lines. * * @param isCreditEnabled the value to set * @return this builder @@ -713,12 +713,12 @@ public Builder isCreditEnabled(Boolean isCreditEnabled) { this.__explicitlySet__.add("isCreditEnabled"); return this; } - /** Overage Policy of Subscribed Service */ + /** Overage policy of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePolicy") private String overagePolicy; /** - * Overage Policy of Subscribed Service + * Overage policy of subscribed service. * * @param overagePolicy the value to set * @return this builder @@ -728,12 +728,12 @@ public Builder overagePolicy(String overagePolicy) { this.__explicitlySet__.add("overagePolicy"); return this; } - /** Overage Bill To of Subscribed Service */ + /** Overage bill to of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overageBillTo") private String overageBillTo; /** - * Overage Bill To of Subscribed Service + * Overage bill to of subscribed service. * * @param overageBillTo the value to set * @return this builder @@ -743,12 +743,12 @@ public Builder overageBillTo(String overageBillTo) { this.__explicitlySet__.add("overageBillTo"); return this; } - /** Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) */ + /** Pay As You Go policy of subscribed service. Can be null, indicating no PAYG policy. */ @com.fasterxml.jackson.annotation.JsonProperty("paygPolicy") private String paygPolicy; /** - * Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) + * Pay As You Go policy of subscribed service. Can be null, indicating no PAYG policy. * * @param paygPolicy the value to set * @return this builder @@ -759,15 +759,17 @@ public Builder paygPolicy(String paygPolicy) { return this; } /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo + * line. */ @com.fasterxml.jackson.annotation.JsonProperty("promoOrderLineId") private Long promoOrderLineId; /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo + * line. * * @param promoOrderLineId the value to set * @return this builder @@ -778,15 +780,15 @@ public Builder promoOrderLineId(Long promoOrderLineId) { return this; } /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion - * pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional + * pricing. */ @com.fasterxml.jackson.annotation.JsonProperty("promotionPricingType") private String promotionPricingType; /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion - * pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional + * pricing. * * @param promotionPricingType the value to set * @return this builder @@ -796,12 +798,12 @@ public Builder promotionPricingType(String promotionPricingType) { this.__explicitlySet__.add("promotionPricingType"); return this; } - /** Subscribed service Rate Card Discount Percentage */ + /** Subscribed service rate card ciscount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardDiscountPercentage") private String rateCardDiscountPercentage; /** - * Subscribed service Rate Card Discount Percentage + * Subscribed service rate card ciscount percentage. * * @param rateCardDiscountPercentage the value to set * @return this builder @@ -811,12 +813,12 @@ public Builder rateCardDiscountPercentage(String rateCardDiscountPercentage) { this.__explicitlySet__.add("rateCardDiscountPercentage"); return this; } - /** Subscribed service Overage Discount Percentage */ + /** Subscribed service overage discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("overageDiscountPercentage") private String overageDiscountPercentage; /** - * Subscribed service Overage Discount Percentage + * Subscribed service overage discount percentage. * * @param overageDiscountPercentage the value to set * @return this builder @@ -853,12 +855,12 @@ public Builder billToAddress(SubscribedServiceAddress billToAddress) { this.__explicitlySet__.add("billToAddress"); return this; } - /** Payment Number of Subscribed Service */ + /** Payment number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentNumber") private String paymentNumber; /** - * Payment Number of Subscribed Service + * Payment number of subscribed service. * * @param paymentNumber the value to set * @return this builder @@ -868,12 +870,12 @@ public Builder paymentNumber(String paymentNumber) { this.__explicitlySet__.add("paymentNumber"); return this; } - /** Subscribed service payment expiry date */ + /** Subscribed service payment expiration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timePaymentExpiry") private java.util.Date timePaymentExpiry; /** - * Subscribed service payment expiry date + * Subscribed service payment expiration date. * * @param timePaymentExpiry the value to set * @return this builder @@ -892,12 +894,12 @@ public Builder paymentTerm(SubscribedServicePaymentTerm paymentTerm) { this.__explicitlySet__.add("paymentTerm"); return this; } - /** Payment Method of Subscribed Service */ + /** Payment method of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentMethod") private String paymentMethod; /** - * Payment Method of Subscribed Service + * Payment method of subscribed service. * * @param paymentMethod the value to set * @return this builder @@ -907,12 +909,12 @@ public Builder paymentMethod(String paymentMethod) { this.__explicitlySet__.add("paymentMethod"); return this; } - /** Subscribed service Transaction Extension Id */ + /** Subscribed service transaction extension ID. */ @com.fasterxml.jackson.annotation.JsonProperty("transactionExtensionId") private Long transactionExtensionId; /** - * Subscribed service Transaction Extension Id + * Subscribed service transaction extension ID. * * @param transactionExtensionId the value to set * @return this builder @@ -922,12 +924,12 @@ public Builder transactionExtensionId(Long transactionExtensionId) { this.__explicitlySet__.add("transactionExtensionId"); return this; } - /** Sales Channel of Subscribed Service */ + /** Sales channel of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("salesChannel") private String salesChannel; /** - * Sales Channel of Subscribed Service + * Sales channel of subscribed service. * * @param salesChannel the value to set * @return this builder @@ -937,12 +939,12 @@ public Builder salesChannel(String salesChannel) { this.__explicitlySet__.add("salesChannel"); return this; } - /** Subscribed service eligible to renew field */ + /** Subscribed service eligible to renew field. */ @com.fasterxml.jackson.annotation.JsonProperty("eligibleToRenew") private String eligibleToRenew; /** - * Subscribed service eligible to renew field + * Subscribed service eligible to renew field. * * @param eligibleToRenew the value to set * @return this builder @@ -952,12 +954,12 @@ public Builder eligibleToRenew(String eligibleToRenew) { this.__explicitlySet__.add("eligibleToRenew"); return this; } - /** SPM renewed Subscription ID */ + /** SPM (Subscription Plan Management) renewed subscription ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewedSubscribedServiceId") private String renewedSubscribedServiceId; /** - * SPM renewed Subscription ID + * SPM (Subscription Plan Management) renewed subscription ID. * * @param renewedSubscribedServiceId the value to set * @return this builder @@ -967,12 +969,12 @@ public Builder renewedSubscribedServiceId(String renewedSubscribedServiceId) { this.__explicitlySet__.add("renewedSubscribedServiceId"); return this; } - /** Term value in Months */ + /** Term value in months. */ @com.fasterxml.jackson.annotation.JsonProperty("termValue") private Long termValue; /** - * Term value in Months + * Term value in months. * * @param termValue the value to set * @return this builder @@ -982,12 +984,12 @@ public Builder termValue(Long termValue) { this.__explicitlySet__.add("termValue"); return this; } - /** Term value UOM */ + /** Term value UOM (Unit of Measure). */ @com.fasterxml.jackson.annotation.JsonProperty("termValueUom") private String termValueUom; /** - * Term value UOM + * Term value UOM (Unit of Measure). * * @param termValueUom the value to set * @return this builder @@ -997,12 +999,12 @@ public Builder termValueUom(String termValueUom) { this.__explicitlySet__.add("termValueUom"); return this; } - /** Subscribed service Opportunity Id */ + /** Subscribed service opportunity ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyId") private Long renewalOptyId; /** - * Subscribed service Opportunity Id + * Subscribed service opportunity ID. * * @param renewalOptyId the value to set * @return this builder @@ -1012,12 +1014,12 @@ public Builder renewalOptyId(Long renewalOptyId) { this.__explicitlySet__.add("renewalOptyId"); return this; } - /** Renewal Opportunity Number of Subscribed Service */ + /** Renewal opportunity number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyNumber") private String renewalOptyNumber; /** - * Renewal Opportunity Number of Subscribed Service + * Renewal opportunity number of subscribed service. * * @param renewalOptyNumber the value to set * @return this builder @@ -1027,12 +1029,12 @@ public Builder renewalOptyNumber(String renewalOptyNumber) { this.__explicitlySet__.add("renewalOptyNumber"); return this; } - /** Renewal Opportunity Type of Subscribed Service */ + /** Renewal opportunity type of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyType") private String renewalOptyType; /** - * Renewal Opportunity Type of Subscribed Service + * Renewal opportunity type of subscribed service. * * @param renewalOptyType the value to set * @return this builder @@ -1042,12 +1044,12 @@ public Builder renewalOptyType(String renewalOptyType) { this.__explicitlySet__.add("renewalOptyType"); return this; } - /** Booking Opportunity Number of Subscribed Service */ + /** Booking opportunity number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("bookingOptyNumber") private String bookingOptyNumber; /** - * Booking Opportunity Number of Subscribed Service + * Booking opportunity number of subscribed service. * * @param bookingOptyNumber the value to set * @return this builder @@ -1057,12 +1059,12 @@ public Builder bookingOptyNumber(String bookingOptyNumber) { this.__explicitlySet__.add("bookingOptyNumber"); return this; } - /** Subscribed service Revenue Line Id */ + /** Subscribed service revenue line ID. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineId") private Long revenueLineId; /** - * Subscribed service Revenue Line Id + * Subscribed service revenue line ID. * * @param revenueLineId the value to set * @return this builder @@ -1072,12 +1074,12 @@ public Builder revenueLineId(Long revenueLineId) { this.__explicitlySet__.add("revenueLineId"); return this; } - /** Revenue Line NUmber of Subscribed Service */ + /** Revenue line number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineNumber") private String revenueLineNumber; /** - * Revenue Line NUmber of Subscribed Service + * Revenue line number of subscribed service. * * @param revenueLineNumber the value to set * @return this builder @@ -1087,12 +1089,12 @@ public Builder revenueLineNumber(String revenueLineNumber) { this.__explicitlySet__.add("revenueLineNumber"); return this; } - /** Subscribed service Major Set */ + /** Subscribed service major set. */ @com.fasterxml.jackson.annotation.JsonProperty("majorSet") private Long majorSet; /** - * Subscribed service Major Set + * Subscribed service major set. * * @param majorSet the value to set * @return this builder @@ -1102,12 +1104,12 @@ public Builder majorSet(Long majorSet) { this.__explicitlySet__.add("majorSet"); return this; } - /** Subscribed service Major Set Start date */ + /** Subscribed service major set start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetStart") private java.util.Date timeMajorsetStart; /** - * Subscribed service Major Set Start date + * Subscribed service major set start date. * * @param timeMajorsetStart the value to set * @return this builder @@ -1117,12 +1119,12 @@ public Builder timeMajorsetStart(java.util.Date timeMajorsetStart) { this.__explicitlySet__.add("timeMajorsetStart"); return this; } - /** Subscribed service Major Set End date */ + /** Subscribed service major set end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetEnd") private java.util.Date timeMajorsetEnd; /** - * Subscribed service Major Set End date + * Subscribed service major set end date. * * @param timeMajorsetEnd the value to set * @return this builder @@ -1132,12 +1134,12 @@ public Builder timeMajorsetEnd(java.util.Date timeMajorsetEnd) { this.__explicitlySet__.add("timeMajorsetEnd"); return this; } - /** Subscribed service System ARR */ + /** Subscribed service system ARR (Annualized Recurring Revenue). */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInLc") private String systemArrInLc; /** - * Subscribed service System ARR + * Subscribed service system ARR (Annualized Recurring Revenue). * * @param systemArrInLc the value to set * @return this builder @@ -1147,12 +1149,12 @@ public Builder systemArrInLc(String systemArrInLc) { this.__explicitlySet__.add("systemArrInLc"); return this; } - /** Subscribed service System ARR in Standard Currency */ + /** Subscribed service system ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInSc") private String systemArrInSc; /** - * Subscribed service System ARR in Standard Currency + * Subscribed service system ARR in standard currency. * * @param systemArrInSc the value to set * @return this builder @@ -1162,12 +1164,14 @@ public Builder systemArrInSc(String systemArrInSc) { this.__explicitlySet__.add("systemArrInSc"); return this; } - /** Subscribed service System ATR-ARR */ + /** + * Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). + */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInLc") private String systemAtrArrInLc; /** - * Subscribed service System ATR-ARR + * Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). * * @param systemAtrArrInLc the value to set * @return this builder @@ -1177,12 +1181,12 @@ public Builder systemAtrArrInLc(String systemAtrArrInLc) { this.__explicitlySet__.add("systemAtrArrInLc"); return this; } - /** Subscribed service System ATR-ARR in Standard Currency */ + /** Subscribed service system ATR-ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInSc") private String systemAtrArrInSc; /** - * Subscribed service System ATR-ARR in Standard Currency + * Subscribed service system ATR-ARR in standard currency. * * @param systemAtrArrInSc the value to set * @return this builder @@ -1192,12 +1196,12 @@ public Builder systemAtrArrInSc(String systemAtrArrInSc) { this.__explicitlySet__.add("systemAtrArrInSc"); return this; } - /** Subscribed service Revised ARR */ + /** Subscribed service revised ARR. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInLc") private String revisedArrInLc; /** - * Subscribed service Revised ARR + * Subscribed service revised ARR. * * @param revisedArrInLc the value to set * @return this builder @@ -1207,12 +1211,12 @@ public Builder revisedArrInLc(String revisedArrInLc) { this.__explicitlySet__.add("revisedArrInLc"); return this; } - /** Subscribed service Revised ARR in Standard Currency */ + /** Subscribed service revised ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInSc") private String revisedArrInSc; /** - * Subscribed service Revised ARR in Standard Currency + * Subscribed service revised ARR in standard currency. * * @param revisedArrInSc the value to set * @return this builder @@ -1222,12 +1226,12 @@ public Builder revisedArrInSc(String revisedArrInSc) { this.__explicitlySet__.add("revisedArrInSc"); return this; } - /** Subscribed service total value */ + /** Subscribed service total value. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private String totalValue; /** - * Subscribed service total value + * Subscribed service total value. * * @param totalValue the value to set * @return this builder @@ -1237,12 +1241,12 @@ public Builder totalValue(String totalValue) { this.__explicitlySet__.add("totalValue"); return this; } - /** Subscribed service Promotion Amount */ + /** Subscribed service promotion amount. */ @com.fasterxml.jackson.annotation.JsonProperty("originalPromoAmount") private String originalPromoAmount; /** - * Subscribed service Promotion Amount + * Subscribed service promotion amount. * * @param originalPromoAmount the value to set * @return this builder @@ -1252,12 +1256,12 @@ public Builder originalPromoAmount(String originalPromoAmount) { this.__explicitlySet__.add("originalPromoAmount"); return this; } - /** Sales Order Header associated to the subscribed service */ + /** Sales order header associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderHeaderId") private Long orderHeaderId; /** - * Sales Order Header associated to the subscribed service + * Sales order header associated with the subscribed service. * * @param orderHeaderId the value to set * @return this builder @@ -1267,12 +1271,12 @@ public Builder orderHeaderId(Long orderHeaderId) { this.__explicitlySet__.add("orderHeaderId"); return this; } - /** Sales Order Number associated to the subscribed service */ + /** Sales order number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private Long orderNumber; /** - * Sales Order Number associated to the subscribed service + * Sales order number associated with the subscribed service. * * @param orderNumber the value to set * @return this builder @@ -1282,12 +1286,12 @@ public Builder orderNumber(Long orderNumber) { this.__explicitlySet__.add("orderNumber"); return this; } - /** Order Type of Subscribed Service */ + /** Order type of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderType") private String orderType; /** - * Order Type of Subscribed Service + * Order type of subscribed service. * * @param orderType the value to set * @return this builder @@ -1297,12 +1301,12 @@ public Builder orderType(String orderType) { this.__explicitlySet__.add("orderType"); return this; } - /** Sales Order Line Id associated to the subscribed service */ + /** Sales order line ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineId") private Long orderLineId; /** - * Sales Order Line Id associated to the subscribed service + * Sales order line ID associated with the subscribed service. * * @param orderLineId the value to set * @return this builder @@ -1312,12 +1316,12 @@ public Builder orderLineId(Long orderLineId) { this.__explicitlySet__.add("orderLineId"); return this; } - /** Sales Order Line Number associated to the subscribed service */ + /** Sales order line number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineNumber") private Integer orderLineNumber; /** - * Sales Order Line Number associated to the subscribed service + * Sales order line number associated with the subscribed service. * * @param orderLineNumber the value to set * @return this builder @@ -1327,12 +1331,12 @@ public Builder orderLineNumber(Integer orderLineNumber) { this.__explicitlySet__.add("orderLineNumber"); return this; } - /** Subscribed service commitment schedule Id */ + /** Subscribed service commitment schedule ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentScheduleId") private String commitmentScheduleId; /** - * Subscribed service commitment schedule Id + * Subscribed service commitment schedule ID. * * @param commitmentScheduleId the value to set * @return this builder @@ -1342,12 +1346,12 @@ public Builder commitmentScheduleId(String commitmentScheduleId) { this.__explicitlySet__.add("commitmentScheduleId"); return this; } - /** Subscribed service sales account party id */ + /** Subscribed service sales account party ID. */ @com.fasterxml.jackson.annotation.JsonProperty("salesAccountPartyId") private Long salesAccountPartyId; /** - * Subscribed service sales account party id + * Subscribed service sales account party ID. * * @param salesAccountPartyId the value to set * @return this builder @@ -1357,12 +1361,12 @@ public Builder salesAccountPartyId(Long salesAccountPartyId) { this.__explicitlySet__.add("salesAccountPartyId"); return this; } - /** Subscribed service data center */ + /** Subscribed service data center. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private String dataCenter; /** - * Subscribed service data center + * Subscribed service data center. * * @param dataCenter the value to set * @return this builder @@ -1372,12 +1376,12 @@ public Builder dataCenter(String dataCenter) { this.__explicitlySet__.add("dataCenter"); return this; } - /** Subscribed service data center region */ + /** Subscribed service data center region. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenterRegion") private String dataCenterRegion; /** - * Subscribed service data center region + * Subscribed service data center region. * * @param dataCenterRegion the value to set * @return this builder @@ -1387,12 +1391,12 @@ public Builder dataCenterRegion(String dataCenterRegion) { this.__explicitlySet__.add("dataCenterRegion"); return this; } - /** Subscribed service admin email id */ + /** Subscribed service admin email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("adminEmail") private String adminEmail; /** - * Subscribed service admin email id + * Subscribed service admin email ID. * * @param adminEmail the value to set * @return this builder @@ -1402,12 +1406,12 @@ public Builder adminEmail(String adminEmail) { this.__explicitlySet__.add("adminEmail"); return this; } - /** Subscribed service buyer email id */ + /** Subscribed service buyer email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("buyerEmail") private String buyerEmail; /** - * Subscribed service buyer email id + * Subscribed service buyer email ID. * * @param buyerEmail the value to set * @return this builder @@ -1417,12 +1421,12 @@ public Builder buyerEmail(String buyerEmail) { this.__explicitlySet__.add("buyerEmail"); return this; } - /** Subscribed service source */ + /** Subscribed service source. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionSource") private String subscriptionSource; /** - * Subscribed service source + * Subscribed service source. * * @param subscriptionSource the value to set * @return this builder @@ -1432,12 +1436,12 @@ public Builder subscriptionSource(String subscriptionSource) { this.__explicitlySet__.add("subscriptionSource"); return this; } - /** Subscribed service provisioning source */ + /** Subscribed service provisioning source. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningSource") private String provisioningSource; /** - * Subscribed service provisioning source + * Subscribed service provisioning source. * * @param provisioningSource the value to set * @return this builder @@ -1447,12 +1451,12 @@ public Builder provisioningSource(String provisioningSource) { this.__explicitlySet__.add("provisioningSource"); return this; } - /** Subscribed service fulfillment set */ + /** Subscribed service fulfillment set. */ @com.fasterxml.jackson.annotation.JsonProperty("fulfillmentSet") private String fulfillmentSet; /** - * Subscribed service fulfillment set + * Subscribed service fulfillment set. * * @param fulfillmentSet the value to set * @return this builder @@ -1462,12 +1466,12 @@ public Builder fulfillmentSet(String fulfillmentSet) { this.__explicitlySet__.add("fulfillmentSet"); return this; } - /** Subscribed service intent to pay flag */ + /** Subscribed service intent to pay parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isIntentToPay") private Boolean isIntentToPay; /** - * Subscribed service intent to pay flag + * Subscribed service intent to pay parameter. * * @param isIntentToPay the value to set * @return this builder @@ -1477,12 +1481,12 @@ public Builder isIntentToPay(Boolean isIntentToPay) { this.__explicitlySet__.add("isIntentToPay"); return this; } - /** Subscribed service payg flag */ + /** Subscribed service PAYG parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isPayg") private Boolean isPayg; /** - * Subscribed service payg flag + * Subscribed service PAYG parameter. * * @param isPayg the value to set * @return this builder @@ -1492,12 +1496,12 @@ public Builder isPayg(Boolean isPayg) { this.__explicitlySet__.add("isPayg"); return this; } - /** Subscribed service pricing model */ + /** Subscribed service pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private String pricingModel; /** - * Subscribed service pricing model + * Subscribed service pricing model. * * @param pricingModel the value to set * @return this builder @@ -1507,12 +1511,12 @@ public Builder pricingModel(String pricingModel) { this.__explicitlySet__.add("pricingModel"); return this; } - /** Subscribed service program type */ + /** Subscribed service program type. */ @com.fasterxml.jackson.annotation.JsonProperty("programType") private String programType; /** - * Subscribed service program type + * Subscribed service program type. * * @param programType the value to set * @return this builder @@ -1522,12 +1526,12 @@ public Builder programType(String programType) { this.__explicitlySet__.add("programType"); return this; } - /** Subscribed service start date type */ + /** Subscribed service start date type. */ @com.fasterxml.jackson.annotation.JsonProperty("startDateType") private String startDateType; /** - * Subscribed service start date type + * Subscribed service start date type. * * @param startDateType the value to set * @return this builder @@ -1537,12 +1541,12 @@ public Builder startDateType(String startDateType) { this.__explicitlySet__.add("startDateType"); return this; } - /** Subscribed service provisioning date */ + /** Subscribed service provisioning date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeProvisioned") private java.util.Date timeProvisioned; /** - * Subscribed service provisioning date + * Subscribed service provisioning date. * * @param timeProvisioned the value to set * @return this builder @@ -1552,12 +1556,12 @@ public Builder timeProvisioned(java.util.Date timeProvisioned) { this.__explicitlySet__.add("timeProvisioned"); return this; } - /** Subscribed service promotion type */ + /** Subscribed service promotion type. */ @com.fasterxml.jackson.annotation.JsonProperty("promoType") private String promoType; /** - * Subscribed service promotion type + * Subscribed service promotion type. * * @param promoType the value to set * @return this builder @@ -1666,12 +1670,12 @@ public Builder resellerAddress(SubscribedServiceAddress resellerAddress) { this.__explicitlySet__.add("resellerAddress"); return this; } - /** Subscribed service CSI number */ + /** Subscribed service CSI number. */ @com.fasterxml.jackson.annotation.JsonProperty("csi") private Long csi; /** - * Subscribed service CSI number + * Subscribed service CSI number. * * @param csi the value to set * @return this builder @@ -1681,12 +1685,12 @@ public Builder csi(Long csi) { this.__explicitlySet__.add("csi"); return this; } - /** Identifier for a customer's transactions for purchase of ay oracle services */ + /** Identifier for a customer's transactions for purchase of any Oracle services. */ @com.fasterxml.jackson.annotation.JsonProperty("customerTransactionReference") private String customerTransactionReference; /** - * Identifier for a customer's transactions for purchase of ay oracle services + * Identifier for a customer's transactions for purchase of any Oracle services. * * @param customerTransactionReference the value to set * @return this builder @@ -1696,12 +1700,12 @@ public Builder customerTransactionReference(String customerTransactionReference) this.__explicitlySet__.add("customerTransactionReference"); return this; } - /** Subscribed service partner credit amount */ + /** Subscribed service partner credit amount. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerCreditAmount") private String partnerCreditAmount; /** - * Subscribed service partner credit amount + * Subscribed service partner credit amount. * * @param partnerCreditAmount the value to set * @return this builder @@ -1711,12 +1715,12 @@ public Builder partnerCreditAmount(String partnerCreditAmount) { this.__explicitlySet__.add("partnerCreditAmount"); return this; } - /** Indicates if the Subscribed service has a single ratecard */ + /** Indicates if the subscribed service has a single rate card. */ @com.fasterxml.jackson.annotation.JsonProperty("isSingleRateCard") private Boolean isSingleRateCard; /** - * Indicates if the Subscribed service has a single ratecard + * Indicates if the subscribed service has a single rate card. * * @param isSingleRateCard the value to set * @return this builder @@ -1726,12 +1730,12 @@ public Builder isSingleRateCard(Boolean isSingleRateCard) { this.__explicitlySet__.add("isSingleRateCard"); return this; } - /** Subscribed service agreement ID */ + /** Subscribed service agreement ID. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementId") private Long agreementId; /** - * Subscribed service agreement ID + * Subscribed service agreement ID. * * @param agreementId the value to set * @return this builder @@ -1741,12 +1745,12 @@ public Builder agreementId(Long agreementId) { this.__explicitlySet__.add("agreementId"); return this; } - /** Subscribed service agrrement name */ + /** Subscribed service agreement name. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementName") private String agreementName; /** - * Subscribed service agrrement name + * Subscribed service agreement name. * * @param agreementName the value to set * @return this builder @@ -1756,12 +1760,12 @@ public Builder agreementName(String agreementName) { this.__explicitlySet__.add("agreementName"); return this; } - /** Subscribed service agrrement type */ + /** Subscribed service agreement type. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementType") private String agreementType; /** - * Subscribed service agrrement type + * Subscribed service agreement type. * * @param agreementType the value to set * @return this builder @@ -1771,12 +1775,12 @@ public Builder agreementType(String agreementType) { this.__explicitlySet__.add("agreementType"); return this; } - /** Subscribed service invoice frequency */ + /** Subscribed service invoice frequency. */ @com.fasterxml.jackson.annotation.JsonProperty("billingFrequency") private String billingFrequency; /** - * Subscribed service invoice frequency + * Subscribed service invoice frequency. * * @param billingFrequency the value to set * @return this builder @@ -1786,12 +1790,12 @@ public Builder billingFrequency(String billingFrequency) { this.__explicitlySet__.add("billingFrequency"); return this; } - /** Subscribed service welcome email sent date */ + /** Subscribed service welcome email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeWelcomeEmailSent") private java.util.Date timeWelcomeEmailSent; /** - * Subscribed service welcome email sent date + * Subscribed service welcome email sent date. * * @param timeWelcomeEmailSent the value to set * @return this builder @@ -1801,12 +1805,12 @@ public Builder timeWelcomeEmailSent(java.util.Date timeWelcomeEmailSent) { this.__explicitlySet__.add("timeWelcomeEmailSent"); return this; } - /** Subscribed service service configuration email sent date */ + /** Subscribed service configuration email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeServiceConfigurationEmailSent") private java.util.Date timeServiceConfigurationEmailSent; /** - * Subscribed service service configuration email sent date + * Subscribed service configuration email sent date. * * @param timeServiceConfigurationEmailSent the value to set * @return this builder @@ -1817,12 +1821,12 @@ public Builder timeServiceConfigurationEmailSent( this.__explicitlySet__.add("timeServiceConfigurationEmailSent"); return this; } - /** Subscribed service customer config date */ + /** Subscribed service customer configuration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCustomerConfig") private java.util.Date timeCustomerConfig; /** - * Subscribed service customer config date + * Subscribed service customer configuration date. * * @param timeCustomerConfig the value to set * @return this builder @@ -1832,12 +1836,12 @@ public Builder timeCustomerConfig(java.util.Date timeCustomerConfig) { this.__explicitlySet__.add("timeCustomerConfig"); return this; } - /** Subscribed service agrrement end date */ + /** Subscribed service agreement end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeAgreementEnd") private java.util.Date timeAgreementEnd; /** - * Subscribed service agrrement end date + * Subscribed service agreement end date. * * @param timeAgreementEnd the value to set * @return this builder @@ -1847,12 +1851,12 @@ public Builder timeAgreementEnd(java.util.Date timeAgreementEnd) { this.__explicitlySet__.add("timeAgreementEnd"); return this; } - /** Subscribed service creation date */ + /** Subscribed service creation date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private java.util.Date timeCreated; /** - * Subscribed service creation date + * Subscribed service creation date. * * @param timeCreated the value to set * @return this builder @@ -1862,12 +1866,12 @@ public Builder timeCreated(java.util.Date timeCreated) { this.__explicitlySet__.add("timeCreated"); return this; } - /** User that created the subscribed service */ + /** User that created the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private String createdBy; /** - * User that created the subscribed service + * User that created the subscribed service. * * @param createdBy the value to set * @return this builder @@ -1877,12 +1881,12 @@ public Builder createdBy(String createdBy) { this.__explicitlySet__.add("createdBy"); return this; } - /** Subscribed service last update date */ + /** Subscribed service last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private java.util.Date timeUpdated; /** - * Subscribed service last update date + * Subscribed service last update date. * * @param timeUpdated the value to set * @return this builder @@ -1892,12 +1896,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** User that updated the subscribed service */ + /** User that updated the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private String updatedBy; /** - * User that updated the subscribed service + * User that updated the subscribed service. * * @param updatedBy the value to set * @return this builder @@ -1907,12 +1911,12 @@ public Builder updatedBy(String updatedBy) { this.__explicitlySet__.add("updatedBy"); return this; } - /** SPM Ratecard Type */ + /** SPM (Subscription Plan Management) rate card type. */ @com.fasterxml.jackson.annotation.JsonProperty("ratecardType") private String ratecardType; /** - * SPM Ratecard Type + * SPM (Subscription Plan Management) rate card type. * * @param ratecardType the value to set * @return this builder @@ -2387,12 +2391,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @return the value */ @@ -2400,12 +2404,12 @@ public String getId() { return id; } - /** Subscribed Service line type */ + /** Subscribed service line type. */ @com.fasterxml.jackson.annotation.JsonProperty("type") private final String type; /** - * Subscribed Service line type + * Subscribed service line type. * * @return the value */ @@ -2413,12 +2417,12 @@ public String getType() { return type; } - /** Subscribed service line number */ + /** Subscribed service line number. */ @com.fasterxml.jackson.annotation.JsonProperty("serialNumber") private final String serialNumber; /** - * Subscribed service line number + * Subscribed service line number. * * @return the value */ @@ -2426,12 +2430,12 @@ public String getSerialNumber() { return serialNumber; } - /** Subscription ID associated to the subscribed service */ + /** Subscription ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") private final String subscriptionId; /** - * Subscription ID associated to the subscribed service + * Subscription ID associated with the subscribed service. * * @return the value */ @@ -2446,12 +2450,12 @@ public RateCardProduct getProduct() { return product; } - /** Subscribed service start date */ + /** Subscribed service start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Subscribed service start date + * Subscribed service start date. * * @return the value */ @@ -2459,12 +2463,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Subscribed service end date */ + /** Subscribed service end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Subscribed service end date + * Subscribed service end date. * * @return the value */ @@ -2472,12 +2476,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** Subscribed service quantity */ + /** Subscribed service quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Subscribed service quantity + * Subscribed service quantity. * * @return the value */ @@ -2485,12 +2489,12 @@ public String getQuantity() { return quantity; } - /** Subscribed service status */ + /** Subscribed service status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private final String status; /** - * Subscribed service status + * Subscribed service status. * * @return the value */ @@ -2498,12 +2502,12 @@ public String getStatus() { return status; } - /** Subscribed service operation type */ + /** Subscribed service operation type. */ @com.fasterxml.jackson.annotation.JsonProperty("operationType") private final String operationType; /** - * Subscribed service operation type + * Subscribed service operation type. * * @return the value */ @@ -2511,12 +2515,12 @@ public String getOperationType() { return operationType; } - /** Subscribed service net unit price */ + /** Subscribed service net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Subscribed service net unit price + * Subscribed service net unit price. * * @return the value */ @@ -2525,15 +2529,15 @@ public String getNetUnitPrice() { } /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, the + * amount lapses. Also used in calculation of total contract line value. */ @com.fasterxml.jackson.annotation.JsonProperty("pricePeriod") private final String pricePeriod; /** - * Indicates the period for which the commitment amount can be utilised exceeding which the - * amount lapses. Also used in calculation of total contract line value + * Indicates the period for which the commitment amount can be utilized, exceeding which, the + * amount lapses. Also used in calculation of total contract line value. * * @return the value */ @@ -2541,12 +2545,12 @@ public String getPricePeriod() { return pricePeriod; } - /** Subscribed service line net amount */ + /** Subscribed service line net amount. */ @com.fasterxml.jackson.annotation.JsonProperty("lineNetAmount") private final String lineNetAmount; /** - * Subscribed service line net amount + * Subscribed service line net amount. * * @return the value */ @@ -2554,12 +2558,12 @@ public String getLineNetAmount() { return lineNetAmount; } - /** Indicates if the commitment lines can have different quantities */ + /** Indicates if the commitment lines can have different quantities. */ @com.fasterxml.jackson.annotation.JsonProperty("isVariableCommitment") private final Boolean isVariableCommitment; /** - * Indicates if the commitment lines can have different quantities + * Indicates if the commitment lines can have different quantities. * * @return the value */ @@ -2568,13 +2572,13 @@ public Boolean getIsVariableCommitment() { } /** - * Indicates if a service can recieve usages and consequently have available amounts computed + * Indicates if a service can recieve usages and consequently have available amounts computed. */ @com.fasterxml.jackson.annotation.JsonProperty("isAllowance") private final Boolean isAllowance; /** - * Indicates if a service can recieve usages and consequently have available amounts computed + * Indicates if a service can recieve usages and consequently have available amounts computed. * * @return the value */ @@ -2582,12 +2586,12 @@ public Boolean getIsAllowance() { return isAllowance; } - /** Subscribed service used amount */ + /** Subscribed service used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private final String usedAmount; /** - * Subscribed service used amount + * Subscribed service used amount. * * @return the value */ @@ -2595,12 +2599,12 @@ public String getUsedAmount() { return usedAmount; } - /** Subscribed sercice available or remaining amount */ + /** Subscribed sercice available or remaining amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private final String availableAmount; /** - * Subscribed sercice available or remaining amount + * Subscribed sercice available or remaining amount. * * @return the value */ @@ -2608,12 +2612,12 @@ public String getAvailableAmount() { return availableAmount; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private final String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @return the value */ @@ -2621,12 +2625,12 @@ public String getFundedAllocationValue() { return fundedAllocationValue; } - /** Indicator on whether or not there has been usage for the subscribed service */ + /** Indicates whether or not there has been usage for the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("isHavingUsage") private final Boolean isHavingUsage; /** - * Indicator on whether or not there has been usage for the subscribed service + * Indicates whether or not there has been usage for the subscribed service. * * @return the value */ @@ -2635,15 +2639,15 @@ public Boolean getIsHavingUsage() { } /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares the rate between the rate card and the active price list, and the minimum + * rate would be fetched. */ @com.fasterxml.jackson.annotation.JsonProperty("isCapToPriceList") private final Boolean isCapToPriceList; /** - * If true compares rate between ratecard and the active pricelist and minimum rate would be - * fetched + * If true compares the rate between the rate card and the active price list, and the minimum + * rate would be fetched. * * @return the value */ @@ -2651,12 +2655,12 @@ public Boolean getIsCapToPriceList() { return isCapToPriceList; } - /** Subscribed service credit percentage */ + /** Subscribed service credit percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("creditPercentage") private final String creditPercentage; /** - * Subscribed service credit percentage + * Subscribed service credit percentage. * * @return the value */ @@ -2665,15 +2669,15 @@ public String getCreditPercentage() { } /** - * This field contains the name of the partner to which the subscription belongs - depending on - * which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerTransactionType") private final String partnerTransactionType; /** - * This field contains the name of the partner to which the subscription belongs - depending on - * which the invoicing may differ + * Contains the name of the partner to which the subscription belongs, however depending on + * which subscription, the invoicing can differ. * * @return the value */ @@ -2681,12 +2685,12 @@ public String getPartnerTransactionType() { return partnerTransactionType; } - /** Used in context of service credit lines */ + /** Used in context of service credit lines. */ @com.fasterxml.jackson.annotation.JsonProperty("isCreditEnabled") private final Boolean isCreditEnabled; /** - * Used in context of service credit lines + * Used in context of service credit lines. * * @return the value */ @@ -2694,12 +2698,12 @@ public Boolean getIsCreditEnabled() { return isCreditEnabled; } - /** Overage Policy of Subscribed Service */ + /** Overage policy of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overagePolicy") private final String overagePolicy; /** - * Overage Policy of Subscribed Service + * Overage policy of subscribed service. * * @return the value */ @@ -2707,12 +2711,12 @@ public String getOveragePolicy() { return overagePolicy; } - /** Overage Bill To of Subscribed Service */ + /** Overage bill to of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("overageBillTo") private final String overageBillTo; /** - * Overage Bill To of Subscribed Service + * Overage bill to of subscribed service. * * @return the value */ @@ -2720,12 +2724,12 @@ public String getOverageBillTo() { return overageBillTo; } - /** Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) */ + /** Pay As You Go policy of subscribed service. Can be null, indicating no PAYG policy. */ @com.fasterxml.jackson.annotation.JsonProperty("paygPolicy") private final String paygPolicy; /** - * Pay As You Go policy of Subscribed Service (Can be null - indicating no payg policy) + * Pay As You Go policy of subscribed service. Can be null, indicating no PAYG policy. * * @return the value */ @@ -2734,15 +2738,15 @@ public String getPaygPolicy() { } /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo line. */ @com.fasterxml.jackson.annotation.JsonProperty("promoOrderLineId") private final Long promoOrderLineId; /** - * Not null if this service has an associated promotion line in SPM. Contains the line - * identifier from Order Management of the associated promo line. + * Not null if this service has an associated promotion line in SPM (Subscription Plan + * Management). Contains the line identifier from order management of the associated promo line. * * @return the value */ @@ -2751,13 +2755,13 @@ public Long getPromoOrderLineId() { } /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional pricing. */ @com.fasterxml.jackson.annotation.JsonProperty("promotionPricingType") private final String promotionPricingType; /** - * Promotion Pricing Type of Subscribed Service (Can be null - indicating no promotion pricing) + * Promotion pricing type of subscribed service. Can be null, indicating no promotional pricing. * * @return the value */ @@ -2765,12 +2769,12 @@ public String getPromotionPricingType() { return promotionPricingType; } - /** Subscribed service Rate Card Discount Percentage */ + /** Subscribed service rate card ciscount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("rateCardDiscountPercentage") private final String rateCardDiscountPercentage; /** - * Subscribed service Rate Card Discount Percentage + * Subscribed service rate card ciscount percentage. * * @return the value */ @@ -2778,12 +2782,12 @@ public String getRateCardDiscountPercentage() { return rateCardDiscountPercentage; } - /** Subscribed service Overage Discount Percentage */ + /** Subscribed service overage discount percentage. */ @com.fasterxml.jackson.annotation.JsonProperty("overageDiscountPercentage") private final String overageDiscountPercentage; /** - * Subscribed service Overage Discount Percentage + * Subscribed service overage discount percentage. * * @return the value */ @@ -2812,12 +2816,12 @@ public SubscribedServiceAddress getBillToAddress() { return billToAddress; } - /** Payment Number of Subscribed Service */ + /** Payment number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentNumber") private final String paymentNumber; /** - * Payment Number of Subscribed Service + * Payment number of subscribed service. * * @return the value */ @@ -2825,12 +2829,12 @@ public String getPaymentNumber() { return paymentNumber; } - /** Subscribed service payment expiry date */ + /** Subscribed service payment expiration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timePaymentExpiry") private final java.util.Date timePaymentExpiry; /** - * Subscribed service payment expiry date + * Subscribed service payment expiration date. * * @return the value */ @@ -2845,12 +2849,12 @@ public SubscribedServicePaymentTerm getPaymentTerm() { return paymentTerm; } - /** Payment Method of Subscribed Service */ + /** Payment method of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("paymentMethod") private final String paymentMethod; /** - * Payment Method of Subscribed Service + * Payment method of subscribed service. * * @return the value */ @@ -2858,12 +2862,12 @@ public String getPaymentMethod() { return paymentMethod; } - /** Subscribed service Transaction Extension Id */ + /** Subscribed service transaction extension ID. */ @com.fasterxml.jackson.annotation.JsonProperty("transactionExtensionId") private final Long transactionExtensionId; /** - * Subscribed service Transaction Extension Id + * Subscribed service transaction extension ID. * * @return the value */ @@ -2871,12 +2875,12 @@ public Long getTransactionExtensionId() { return transactionExtensionId; } - /** Sales Channel of Subscribed Service */ + /** Sales channel of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("salesChannel") private final String salesChannel; /** - * Sales Channel of Subscribed Service + * Sales channel of subscribed service. * * @return the value */ @@ -2884,12 +2888,12 @@ public String getSalesChannel() { return salesChannel; } - /** Subscribed service eligible to renew field */ + /** Subscribed service eligible to renew field. */ @com.fasterxml.jackson.annotation.JsonProperty("eligibleToRenew") private final String eligibleToRenew; /** - * Subscribed service eligible to renew field + * Subscribed service eligible to renew field. * * @return the value */ @@ -2897,12 +2901,12 @@ public String getEligibleToRenew() { return eligibleToRenew; } - /** SPM renewed Subscription ID */ + /** SPM (Subscription Plan Management) renewed subscription ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewedSubscribedServiceId") private final String renewedSubscribedServiceId; /** - * SPM renewed Subscription ID + * SPM (Subscription Plan Management) renewed subscription ID. * * @return the value */ @@ -2910,12 +2914,12 @@ public String getRenewedSubscribedServiceId() { return renewedSubscribedServiceId; } - /** Term value in Months */ + /** Term value in months. */ @com.fasterxml.jackson.annotation.JsonProperty("termValue") private final Long termValue; /** - * Term value in Months + * Term value in months. * * @return the value */ @@ -2923,12 +2927,12 @@ public Long getTermValue() { return termValue; } - /** Term value UOM */ + /** Term value UOM (Unit of Measure). */ @com.fasterxml.jackson.annotation.JsonProperty("termValueUom") private final String termValueUom; /** - * Term value UOM + * Term value UOM (Unit of Measure). * * @return the value */ @@ -2936,12 +2940,12 @@ public String getTermValueUom() { return termValueUom; } - /** Subscribed service Opportunity Id */ + /** Subscribed service opportunity ID. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyId") private final Long renewalOptyId; /** - * Subscribed service Opportunity Id + * Subscribed service opportunity ID. * * @return the value */ @@ -2949,12 +2953,12 @@ public Long getRenewalOptyId() { return renewalOptyId; } - /** Renewal Opportunity Number of Subscribed Service */ + /** Renewal opportunity number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyNumber") private final String renewalOptyNumber; /** - * Renewal Opportunity Number of Subscribed Service + * Renewal opportunity number of subscribed service. * * @return the value */ @@ -2962,12 +2966,12 @@ public String getRenewalOptyNumber() { return renewalOptyNumber; } - /** Renewal Opportunity Type of Subscribed Service */ + /** Renewal opportunity type of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("renewalOptyType") private final String renewalOptyType; /** - * Renewal Opportunity Type of Subscribed Service + * Renewal opportunity type of subscribed service. * * @return the value */ @@ -2975,12 +2979,12 @@ public String getRenewalOptyType() { return renewalOptyType; } - /** Booking Opportunity Number of Subscribed Service */ + /** Booking opportunity number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("bookingOptyNumber") private final String bookingOptyNumber; /** - * Booking Opportunity Number of Subscribed Service + * Booking opportunity number of subscribed service. * * @return the value */ @@ -2988,12 +2992,12 @@ public String getBookingOptyNumber() { return bookingOptyNumber; } - /** Subscribed service Revenue Line Id */ + /** Subscribed service revenue line ID. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineId") private final Long revenueLineId; /** - * Subscribed service Revenue Line Id + * Subscribed service revenue line ID. * * @return the value */ @@ -3001,12 +3005,12 @@ public Long getRevenueLineId() { return revenueLineId; } - /** Revenue Line NUmber of Subscribed Service */ + /** Revenue line number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("revenueLineNumber") private final String revenueLineNumber; /** - * Revenue Line NUmber of Subscribed Service + * Revenue line number of subscribed service. * * @return the value */ @@ -3014,12 +3018,12 @@ public String getRevenueLineNumber() { return revenueLineNumber; } - /** Subscribed service Major Set */ + /** Subscribed service major set. */ @com.fasterxml.jackson.annotation.JsonProperty("majorSet") private final Long majorSet; /** - * Subscribed service Major Set + * Subscribed service major set. * * @return the value */ @@ -3027,12 +3031,12 @@ public Long getMajorSet() { return majorSet; } - /** Subscribed service Major Set Start date */ + /** Subscribed service major set start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetStart") private final java.util.Date timeMajorsetStart; /** - * Subscribed service Major Set Start date + * Subscribed service major set start date. * * @return the value */ @@ -3040,12 +3044,12 @@ public java.util.Date getTimeMajorsetStart() { return timeMajorsetStart; } - /** Subscribed service Major Set End date */ + /** Subscribed service major set end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeMajorsetEnd") private final java.util.Date timeMajorsetEnd; /** - * Subscribed service Major Set End date + * Subscribed service major set end date. * * @return the value */ @@ -3053,12 +3057,12 @@ public java.util.Date getTimeMajorsetEnd() { return timeMajorsetEnd; } - /** Subscribed service System ARR */ + /** Subscribed service system ARR (Annualized Recurring Revenue). */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInLc") private final String systemArrInLc; /** - * Subscribed service System ARR + * Subscribed service system ARR (Annualized Recurring Revenue). * * @return the value */ @@ -3066,12 +3070,12 @@ public String getSystemArrInLc() { return systemArrInLc; } - /** Subscribed service System ARR in Standard Currency */ + /** Subscribed service system ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemArrInSc") private final String systemArrInSc; /** - * Subscribed service System ARR in Standard Currency + * Subscribed service system ARR in standard currency. * * @return the value */ @@ -3079,12 +3083,12 @@ public String getSystemArrInSc() { return systemArrInSc; } - /** Subscribed service System ATR-ARR */ + /** Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInLc") private final String systemAtrArrInLc; /** - * Subscribed service System ATR-ARR + * Subscribed service system ATR-ARR (Annualized Recurring Revenue - Available to Renew). * * @return the value */ @@ -3092,12 +3096,12 @@ public String getSystemAtrArrInLc() { return systemAtrArrInLc; } - /** Subscribed service System ATR-ARR in Standard Currency */ + /** Subscribed service system ATR-ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("systemAtrArrInSc") private final String systemAtrArrInSc; /** - * Subscribed service System ATR-ARR in Standard Currency + * Subscribed service system ATR-ARR in standard currency. * * @return the value */ @@ -3105,12 +3109,12 @@ public String getSystemAtrArrInSc() { return systemAtrArrInSc; } - /** Subscribed service Revised ARR */ + /** Subscribed service revised ARR. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInLc") private final String revisedArrInLc; /** - * Subscribed service Revised ARR + * Subscribed service revised ARR. * * @return the value */ @@ -3118,12 +3122,12 @@ public String getRevisedArrInLc() { return revisedArrInLc; } - /** Subscribed service Revised ARR in Standard Currency */ + /** Subscribed service revised ARR in standard currency. */ @com.fasterxml.jackson.annotation.JsonProperty("revisedArrInSc") private final String revisedArrInSc; /** - * Subscribed service Revised ARR in Standard Currency + * Subscribed service revised ARR in standard currency. * * @return the value */ @@ -3131,12 +3135,12 @@ public String getRevisedArrInSc() { return revisedArrInSc; } - /** Subscribed service total value */ + /** Subscribed service total value. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private final String totalValue; /** - * Subscribed service total value + * Subscribed service total value. * * @return the value */ @@ -3144,12 +3148,12 @@ public String getTotalValue() { return totalValue; } - /** Subscribed service Promotion Amount */ + /** Subscribed service promotion amount. */ @com.fasterxml.jackson.annotation.JsonProperty("originalPromoAmount") private final String originalPromoAmount; /** - * Subscribed service Promotion Amount + * Subscribed service promotion amount. * * @return the value */ @@ -3157,12 +3161,12 @@ public String getOriginalPromoAmount() { return originalPromoAmount; } - /** Sales Order Header associated to the subscribed service */ + /** Sales order header associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderHeaderId") private final Long orderHeaderId; /** - * Sales Order Header associated to the subscribed service + * Sales order header associated with the subscribed service. * * @return the value */ @@ -3170,12 +3174,12 @@ public Long getOrderHeaderId() { return orderHeaderId; } - /** Sales Order Number associated to the subscribed service */ + /** Sales order number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private final Long orderNumber; /** - * Sales Order Number associated to the subscribed service + * Sales order number associated with the subscribed service. * * @return the value */ @@ -3183,12 +3187,12 @@ public Long getOrderNumber() { return orderNumber; } - /** Order Type of Subscribed Service */ + /** Order type of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderType") private final String orderType; /** - * Order Type of Subscribed Service + * Order type of subscribed service. * * @return the value */ @@ -3196,12 +3200,12 @@ public String getOrderType() { return orderType; } - /** Sales Order Line Id associated to the subscribed service */ + /** Sales order line ID associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineId") private final Long orderLineId; /** - * Sales Order Line Id associated to the subscribed service + * Sales order line ID associated with the subscribed service. * * @return the value */ @@ -3209,12 +3213,12 @@ public Long getOrderLineId() { return orderLineId; } - /** Sales Order Line Number associated to the subscribed service */ + /** Sales order line number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderLineNumber") private final Integer orderLineNumber; /** - * Sales Order Line Number associated to the subscribed service + * Sales order line number associated with the subscribed service. * * @return the value */ @@ -3222,12 +3226,12 @@ public Integer getOrderLineNumber() { return orderLineNumber; } - /** Subscribed service commitment schedule Id */ + /** Subscribed service commitment schedule ID. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentScheduleId") private final String commitmentScheduleId; /** - * Subscribed service commitment schedule Id + * Subscribed service commitment schedule ID. * * @return the value */ @@ -3235,12 +3239,12 @@ public String getCommitmentScheduleId() { return commitmentScheduleId; } - /** Subscribed service sales account party id */ + /** Subscribed service sales account party ID. */ @com.fasterxml.jackson.annotation.JsonProperty("salesAccountPartyId") private final Long salesAccountPartyId; /** - * Subscribed service sales account party id + * Subscribed service sales account party ID. * * @return the value */ @@ -3248,12 +3252,12 @@ public Long getSalesAccountPartyId() { return salesAccountPartyId; } - /** Subscribed service data center */ + /** Subscribed service data center. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenter") private final String dataCenter; /** - * Subscribed service data center + * Subscribed service data center. * * @return the value */ @@ -3261,12 +3265,12 @@ public String getDataCenter() { return dataCenter; } - /** Subscribed service data center region */ + /** Subscribed service data center region. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenterRegion") private final String dataCenterRegion; /** - * Subscribed service data center region + * Subscribed service data center region. * * @return the value */ @@ -3274,12 +3278,12 @@ public String getDataCenterRegion() { return dataCenterRegion; } - /** Subscribed service admin email id */ + /** Subscribed service admin email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("adminEmail") private final String adminEmail; /** - * Subscribed service admin email id + * Subscribed service admin email ID. * * @return the value */ @@ -3287,12 +3291,12 @@ public String getAdminEmail() { return adminEmail; } - /** Subscribed service buyer email id */ + /** Subscribed service buyer email ID. */ @com.fasterxml.jackson.annotation.JsonProperty("buyerEmail") private final String buyerEmail; /** - * Subscribed service buyer email id + * Subscribed service buyer email ID. * * @return the value */ @@ -3300,12 +3304,12 @@ public String getBuyerEmail() { return buyerEmail; } - /** Subscribed service source */ + /** Subscribed service source. */ @com.fasterxml.jackson.annotation.JsonProperty("subscriptionSource") private final String subscriptionSource; /** - * Subscribed service source + * Subscribed service source. * * @return the value */ @@ -3313,12 +3317,12 @@ public String getSubscriptionSource() { return subscriptionSource; } - /** Subscribed service provisioning source */ + /** Subscribed service provisioning source. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningSource") private final String provisioningSource; /** - * Subscribed service provisioning source + * Subscribed service provisioning source. * * @return the value */ @@ -3326,12 +3330,12 @@ public String getProvisioningSource() { return provisioningSource; } - /** Subscribed service fulfillment set */ + /** Subscribed service fulfillment set. */ @com.fasterxml.jackson.annotation.JsonProperty("fulfillmentSet") private final String fulfillmentSet; /** - * Subscribed service fulfillment set + * Subscribed service fulfillment set. * * @return the value */ @@ -3339,12 +3343,12 @@ public String getFulfillmentSet() { return fulfillmentSet; } - /** Subscribed service intent to pay flag */ + /** Subscribed service intent to pay parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isIntentToPay") private final Boolean isIntentToPay; /** - * Subscribed service intent to pay flag + * Subscribed service intent to pay parameter. * * @return the value */ @@ -3352,12 +3356,12 @@ public Boolean getIsIntentToPay() { return isIntentToPay; } - /** Subscribed service payg flag */ + /** Subscribed service PAYG parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isPayg") private final Boolean isPayg; /** - * Subscribed service payg flag + * Subscribed service PAYG parameter. * * @return the value */ @@ -3365,12 +3369,12 @@ public Boolean getIsPayg() { return isPayg; } - /** Subscribed service pricing model */ + /** Subscribed service pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private final String pricingModel; /** - * Subscribed service pricing model + * Subscribed service pricing model. * * @return the value */ @@ -3378,12 +3382,12 @@ public String getPricingModel() { return pricingModel; } - /** Subscribed service program type */ + /** Subscribed service program type. */ @com.fasterxml.jackson.annotation.JsonProperty("programType") private final String programType; /** - * Subscribed service program type + * Subscribed service program type. * * @return the value */ @@ -3391,12 +3395,12 @@ public String getProgramType() { return programType; } - /** Subscribed service start date type */ + /** Subscribed service start date type. */ @com.fasterxml.jackson.annotation.JsonProperty("startDateType") private final String startDateType; /** - * Subscribed service start date type + * Subscribed service start date type. * * @return the value */ @@ -3404,12 +3408,12 @@ public String getStartDateType() { return startDateType; } - /** Subscribed service provisioning date */ + /** Subscribed service provisioning date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeProvisioned") private final java.util.Date timeProvisioned; /** - * Subscribed service provisioning date + * Subscribed service provisioning date. * * @return the value */ @@ -3417,12 +3421,12 @@ public java.util.Date getTimeProvisioned() { return timeProvisioned; } - /** Subscribed service promotion type */ + /** Subscribed service promotion type. */ @com.fasterxml.jackson.annotation.JsonProperty("promoType") private final String promoType; /** - * Subscribed service promotion type + * Subscribed service promotion type. * * @return the value */ @@ -3507,12 +3511,12 @@ public SubscribedServiceAddress getResellerAddress() { return resellerAddress; } - /** Subscribed service CSI number */ + /** Subscribed service CSI number. */ @com.fasterxml.jackson.annotation.JsonProperty("csi") private final Long csi; /** - * Subscribed service CSI number + * Subscribed service CSI number. * * @return the value */ @@ -3520,12 +3524,12 @@ public Long getCsi() { return csi; } - /** Identifier for a customer's transactions for purchase of ay oracle services */ + /** Identifier for a customer's transactions for purchase of any Oracle services. */ @com.fasterxml.jackson.annotation.JsonProperty("customerTransactionReference") private final String customerTransactionReference; /** - * Identifier for a customer's transactions for purchase of ay oracle services + * Identifier for a customer's transactions for purchase of any Oracle services. * * @return the value */ @@ -3533,12 +3537,12 @@ public String getCustomerTransactionReference() { return customerTransactionReference; } - /** Subscribed service partner credit amount */ + /** Subscribed service partner credit amount. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerCreditAmount") private final String partnerCreditAmount; /** - * Subscribed service partner credit amount + * Subscribed service partner credit amount. * * @return the value */ @@ -3546,12 +3550,12 @@ public String getPartnerCreditAmount() { return partnerCreditAmount; } - /** Indicates if the Subscribed service has a single ratecard */ + /** Indicates if the subscribed service has a single rate card. */ @com.fasterxml.jackson.annotation.JsonProperty("isSingleRateCard") private final Boolean isSingleRateCard; /** - * Indicates if the Subscribed service has a single ratecard + * Indicates if the subscribed service has a single rate card. * * @return the value */ @@ -3559,12 +3563,12 @@ public Boolean getIsSingleRateCard() { return isSingleRateCard; } - /** Subscribed service agreement ID */ + /** Subscribed service agreement ID. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementId") private final Long agreementId; /** - * Subscribed service agreement ID + * Subscribed service agreement ID. * * @return the value */ @@ -3572,12 +3576,12 @@ public Long getAgreementId() { return agreementId; } - /** Subscribed service agrrement name */ + /** Subscribed service agreement name. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementName") private final String agreementName; /** - * Subscribed service agrrement name + * Subscribed service agreement name. * * @return the value */ @@ -3585,12 +3589,12 @@ public String getAgreementName() { return agreementName; } - /** Subscribed service agrrement type */ + /** Subscribed service agreement type. */ @com.fasterxml.jackson.annotation.JsonProperty("agreementType") private final String agreementType; /** - * Subscribed service agrrement type + * Subscribed service agreement type. * * @return the value */ @@ -3598,12 +3602,12 @@ public String getAgreementType() { return agreementType; } - /** Subscribed service invoice frequency */ + /** Subscribed service invoice frequency. */ @com.fasterxml.jackson.annotation.JsonProperty("billingFrequency") private final String billingFrequency; /** - * Subscribed service invoice frequency + * Subscribed service invoice frequency. * * @return the value */ @@ -3611,12 +3615,12 @@ public String getBillingFrequency() { return billingFrequency; } - /** Subscribed service welcome email sent date */ + /** Subscribed service welcome email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeWelcomeEmailSent") private final java.util.Date timeWelcomeEmailSent; /** - * Subscribed service welcome email sent date + * Subscribed service welcome email sent date. * * @return the value */ @@ -3624,12 +3628,12 @@ public java.util.Date getTimeWelcomeEmailSent() { return timeWelcomeEmailSent; } - /** Subscribed service service configuration email sent date */ + /** Subscribed service configuration email sent date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeServiceConfigurationEmailSent") private final java.util.Date timeServiceConfigurationEmailSent; /** - * Subscribed service service configuration email sent date + * Subscribed service configuration email sent date. * * @return the value */ @@ -3637,12 +3641,12 @@ public java.util.Date getTimeServiceConfigurationEmailSent() { return timeServiceConfigurationEmailSent; } - /** Subscribed service customer config date */ + /** Subscribed service customer configuration date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCustomerConfig") private final java.util.Date timeCustomerConfig; /** - * Subscribed service customer config date + * Subscribed service customer configuration date. * * @return the value */ @@ -3650,12 +3654,12 @@ public java.util.Date getTimeCustomerConfig() { return timeCustomerConfig; } - /** Subscribed service agrrement end date */ + /** Subscribed service agreement end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeAgreementEnd") private final java.util.Date timeAgreementEnd; /** - * Subscribed service agrrement end date + * Subscribed service agreement end date. * * @return the value */ @@ -3663,12 +3667,12 @@ public java.util.Date getTimeAgreementEnd() { return timeAgreementEnd; } - /** Subscribed service creation date */ + /** Subscribed service creation date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") private final java.util.Date timeCreated; /** - * Subscribed service creation date + * Subscribed service creation date. * * @return the value */ @@ -3676,12 +3680,12 @@ public java.util.Date getTimeCreated() { return timeCreated; } - /** User that created the subscribed service */ + /** User that created the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("createdBy") private final String createdBy; /** - * User that created the subscribed service + * User that created the subscribed service. * * @return the value */ @@ -3689,12 +3693,12 @@ public String getCreatedBy() { return createdBy; } - /** Subscribed service last update date */ + /** Subscribed service last update date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") private final java.util.Date timeUpdated; /** - * Subscribed service last update date + * Subscribed service last update date. * * @return the value */ @@ -3702,12 +3706,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** User that updated the subscribed service */ + /** User that updated the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("updatedBy") private final String updatedBy; /** - * User that updated the subscribed service + * User that updated the subscribed service. * * @return the value */ @@ -3715,12 +3719,12 @@ public String getUpdatedBy() { return updatedBy; } - /** SPM Ratecard Type */ + /** SPM (Subscription Plan Management) rate card type. */ @com.fasterxml.jackson.annotation.JsonProperty("ratecardType") private final String ratecardType; /** - * SPM Ratecard Type + * SPM (Subscription Plan Management) rate card type. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceUser.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceUser.java index b22d3db10db..40d43733d23 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceUser.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscribedServiceUser.java @@ -70,12 +70,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Username. */ + /** User name. */ @com.fasterxml.jackson.annotation.JsonProperty("username") private String username; /** - * Username. + * User name. * * @param username the value to set * @return this builder @@ -130,12 +130,12 @@ public Builder email(String email) { this.__explicitlySet__.add("email"); return this; } - /** TCA contact ID. */ + /** TCA (Trading Community Architecture) contact ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaContactId") private Long tcaContactId; /** - * TCA contact ID. + * TCA (Trading Community Architecture) contact ID. * * @param tcaContactId the value to set * @return this builder @@ -248,12 +248,12 @@ public String getName() { return name; } - /** Username. */ + /** User name. */ @com.fasterxml.jackson.annotation.JsonProperty("username") private final String username; /** - * Username. + * User name. * * @return the value */ @@ -300,12 +300,12 @@ public String getEmail() { return email; } - /** TCA contact ID. */ + /** TCA (Trading Community Architecture) contact ID. */ @com.fasterxml.jackson.annotation.JsonProperty("tcaContactId") private final Long tcaContactId; /** - * TCA contact ID. + * TCA (Trading Community Architecture) contact ID. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionCurrency.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionCurrency.java index f68fb54efa0..bd72b8d6528 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionCurrency.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionCurrency.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Currency details
+ * Currency details.
* 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 @@ -33,12 +33,12 @@ public SubscriptionCurrency(String name, String isoCode, Long stdPrecision) { @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Currency name */ + /** Currency name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Currency name + * Currency name. * * @param name the value to set * @return this builder @@ -48,12 +48,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Currency Code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("isoCode") private String isoCode; /** - * Currency Code + * Currency code. * * @param isoCode the value to set * @return this builder @@ -63,12 +63,12 @@ public Builder isoCode(String isoCode) { this.__explicitlySet__.add("isoCode"); return this; } - /** Standard Precision of the Currency */ + /** Standard precision of the currency. */ @com.fasterxml.jackson.annotation.JsonProperty("stdPrecision") private Long stdPrecision; /** - * Standard Precision of the Currency + * Standard precision of the currency. * * @param stdPrecision the value to set * @return this builder @@ -115,12 +115,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Currency name */ + /** Currency name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Currency name + * Currency name. * * @return the value */ @@ -128,12 +128,12 @@ public String getName() { return name; } - /** Currency Code */ + /** Currency code. */ @com.fasterxml.jackson.annotation.JsonProperty("isoCode") private final String isoCode; /** - * Currency Code + * Currency code. * * @return the value */ @@ -141,12 +141,12 @@ public String getIsoCode() { return isoCode; } - /** Standard Precision of the Currency */ + /** Standard precision of the currency. */ @com.fasterxml.jackson.annotation.JsonProperty("stdPrecision") private final Long stdPrecision; /** - * Standard Precision of the Currency + * Standard precision of the currency. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionDetails.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionDetails.java new file mode 100644 index 00000000000..0f671d24513 --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionDetails.java @@ -0,0 +1,627 @@ +/** + * 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.onesubscription.model; + +/** + * Commitment summary for a subscription.
+ * 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: 20190111") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = SubscriptionDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SubscriptionDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "contractId", + "subscriptionId", + "customerName", + "currencyCode", + "timeCommitmentStart", + "timeCommitmentEnd", + "amountCommitment", + "amountAuthorized", + "amountProvisioned", + "amountConsumed", + "amountAvailable", + "commitmentPeriods", + "productsAndServices" + }) + public SubscriptionDetails( + String contractId, + String subscriptionId, + String customerName, + String currencyCode, + java.util.Date timeCommitmentStart, + java.util.Date timeCommitmentEnd, + Double amountCommitment, + Double amountAuthorized, + Double amountProvisioned, + Double amountConsumed, + Double amountAvailable, + java.util.List commitmentPeriods, + java.util.List productsAndServices) { + super(); + this.contractId = contractId; + this.subscriptionId = subscriptionId; + this.customerName = customerName; + this.currencyCode = currencyCode; + this.timeCommitmentStart = timeCommitmentStart; + this.timeCommitmentEnd = timeCommitmentEnd; + this.amountCommitment = amountCommitment; + this.amountAuthorized = amountAuthorized; + this.amountProvisioned = amountProvisioned; + this.amountConsumed = amountConsumed; + this.amountAvailable = amountAvailable; + this.commitmentPeriods = commitmentPeriods; + this.productsAndServices = productsAndServices; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Contract identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("contractId") + private String contractId; + + /** + * Contract identifier. + * + * @param contractId the value to set + * @return this builder + */ + public Builder contractId(String contractId) { + this.contractId = contractId; + this.__explicitlySet__.add("contractId"); + return this; + } + /** Subscription identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private String subscriptionId; + + /** + * Subscription identifier. + * + * @param subscriptionId the value to set + * @return this builder + */ + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + this.__explicitlySet__.add("subscriptionId"); + return this; + } + /** Sold-to customer name. */ + @com.fasterxml.jackson.annotation.JsonProperty("customerName") + private String customerName; + + /** + * Sold-to customer name. + * + * @param customerName the value to set + * @return this builder + */ + public Builder customerName(String customerName) { + this.customerName = customerName; + this.__explicitlySet__.add("customerName"); + return this; + } + /** + * The currency of the subscription, in the format specified by + * [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html). + */ + @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") + private String currencyCode; + + /** + * The currency of the subscription, in the format specified by + * [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html). + * + * @param currencyCode the value to set + * @return this builder + */ + public Builder currencyCode(String currencyCode) { + this.currencyCode = currencyCode; + this.__explicitlySet__.add("currencyCode"); + return this; + } + /** Start date and time of the subscription commitment. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentStart") + private java.util.Date timeCommitmentStart; + + /** + * Start date and time of the subscription commitment. + * + * @param timeCommitmentStart the value to set + * @return this builder + */ + public Builder timeCommitmentStart(java.util.Date timeCommitmentStart) { + this.timeCommitmentStart = timeCommitmentStart; + this.__explicitlySet__.add("timeCommitmentStart"); + return this; + } + /** End date and time of the subscription commitment. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentEnd") + private java.util.Date timeCommitmentEnd; + + /** + * End date and time of the subscription commitment. + * + * @param timeCommitmentEnd the value to set + * @return this builder + */ + public Builder timeCommitmentEnd(java.util.Date timeCommitmentEnd) { + this.timeCommitmentEnd = timeCommitmentEnd; + this.__explicitlySet__.add("timeCommitmentEnd"); + return this; + } + /** Total committed amount for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountCommitment") + private Double amountCommitment; + + /** + * Total committed amount for the subscription. + * + * @param amountCommitment the value to set + * @return this builder + */ + public Builder amountCommitment(Double amountCommitment) { + this.amountCommitment = amountCommitment; + this.__explicitlySet__.add("amountCommitment"); + return this; + } + /** Amount authorized for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAuthorized") + private Double amountAuthorized; + + /** + * Amount authorized for the subscription. + * + * @param amountAuthorized the value to set + * @return this builder + */ + public Builder amountAuthorized(Double amountAuthorized) { + this.amountAuthorized = amountAuthorized; + this.__explicitlySet__.add("amountAuthorized"); + return this; + } + /** Amount provisioned for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountProvisioned") + private Double amountProvisioned; + + /** + * Amount provisioned for the subscription. + * + * @param amountProvisioned the value to set + * @return this builder + */ + public Builder amountProvisioned(Double amountProvisioned) { + this.amountProvisioned = amountProvisioned; + this.__explicitlySet__.add("amountProvisioned"); + return this; + } + /** Amount consumed from the subscription commitment. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountConsumed") + private Double amountConsumed; + + /** + * Amount consumed from the subscription commitment. + * + * @param amountConsumed the value to set + * @return this builder + */ + public Builder amountConsumed(Double amountConsumed) { + this.amountConsumed = amountConsumed; + this.__explicitlySet__.add("amountConsumed"); + return this; + } + /** Amount remaining and available for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAvailable") + private Double amountAvailable; + + /** + * Amount remaining and available for the subscription. + * + * @param amountAvailable the value to set + * @return this builder + */ + public Builder amountAvailable(Double amountAvailable) { + this.amountAvailable = amountAvailable; + this.__explicitlySet__.add("amountAvailable"); + return this; + } + /** Commitment periods associated with the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("commitmentPeriods") + private java.util.List commitmentPeriods; + + /** + * Commitment periods associated with the subscription. + * + * @param commitmentPeriods the value to set + * @return this builder + */ + public Builder commitmentPeriods(java.util.List commitmentPeriods) { + this.commitmentPeriods = commitmentPeriods; + this.__explicitlySet__.add("commitmentPeriods"); + return this; + } + /** Products and services that draw down from the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("productsAndServices") + private java.util.List productsAndServices; + + /** + * Products and services that draw down from the subscription. + * + * @param productsAndServices the value to set + * @return this builder + */ + public Builder productsAndServices(java.util.List productsAndServices) { + this.productsAndServices = productsAndServices; + this.__explicitlySet__.add("productsAndServices"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SubscriptionDetails build() { + SubscriptionDetails model = + new SubscriptionDetails( + this.contractId, + this.subscriptionId, + this.customerName, + this.currencyCode, + this.timeCommitmentStart, + this.timeCommitmentEnd, + this.amountCommitment, + this.amountAuthorized, + this.amountProvisioned, + this.amountConsumed, + this.amountAvailable, + this.commitmentPeriods, + this.productsAndServices); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SubscriptionDetails model) { + if (model.wasPropertyExplicitlySet("contractId")) { + this.contractId(model.getContractId()); + } + if (model.wasPropertyExplicitlySet("subscriptionId")) { + this.subscriptionId(model.getSubscriptionId()); + } + if (model.wasPropertyExplicitlySet("customerName")) { + this.customerName(model.getCustomerName()); + } + if (model.wasPropertyExplicitlySet("currencyCode")) { + this.currencyCode(model.getCurrencyCode()); + } + if (model.wasPropertyExplicitlySet("timeCommitmentStart")) { + this.timeCommitmentStart(model.getTimeCommitmentStart()); + } + if (model.wasPropertyExplicitlySet("timeCommitmentEnd")) { + this.timeCommitmentEnd(model.getTimeCommitmentEnd()); + } + if (model.wasPropertyExplicitlySet("amountCommitment")) { + this.amountCommitment(model.getAmountCommitment()); + } + if (model.wasPropertyExplicitlySet("amountAuthorized")) { + this.amountAuthorized(model.getAmountAuthorized()); + } + if (model.wasPropertyExplicitlySet("amountProvisioned")) { + this.amountProvisioned(model.getAmountProvisioned()); + } + if (model.wasPropertyExplicitlySet("amountConsumed")) { + this.amountConsumed(model.getAmountConsumed()); + } + if (model.wasPropertyExplicitlySet("amountAvailable")) { + this.amountAvailable(model.getAmountAvailable()); + } + if (model.wasPropertyExplicitlySet("commitmentPeriods")) { + this.commitmentPeriods(model.getCommitmentPeriods()); + } + if (model.wasPropertyExplicitlySet("productsAndServices")) { + this.productsAndServices(model.getProductsAndServices()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Contract identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("contractId") + private final String contractId; + + /** + * Contract identifier. + * + * @return the value + */ + public String getContractId() { + return contractId; + } + + /** Subscription identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("subscriptionId") + private final String subscriptionId; + + /** + * Subscription identifier. + * + * @return the value + */ + public String getSubscriptionId() { + return subscriptionId; + } + + /** Sold-to customer name. */ + @com.fasterxml.jackson.annotation.JsonProperty("customerName") + private final String customerName; + + /** + * Sold-to customer name. + * + * @return the value + */ + public String getCustomerName() { + return customerName; + } + + /** + * The currency of the subscription, in the format specified by + * [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html). + */ + @com.fasterxml.jackson.annotation.JsonProperty("currencyCode") + private final String currencyCode; + + /** + * The currency of the subscription, in the format specified by + * [ISO-4217](https://www.iso.org/iso-4217-currency-codes.html). + * + * @return the value + */ + public String getCurrencyCode() { + return currencyCode; + } + + /** Start date and time of the subscription commitment. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentStart") + private final java.util.Date timeCommitmentStart; + + /** + * Start date and time of the subscription commitment. + * + * @return the value + */ + public java.util.Date getTimeCommitmentStart() { + return timeCommitmentStart; + } + + /** End date and time of the subscription commitment. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCommitmentEnd") + private final java.util.Date timeCommitmentEnd; + + /** + * End date and time of the subscription commitment. + * + * @return the value + */ + public java.util.Date getTimeCommitmentEnd() { + return timeCommitmentEnd; + } + + /** Total committed amount for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountCommitment") + private final Double amountCommitment; + + /** + * Total committed amount for the subscription. + * + * @return the value + */ + public Double getAmountCommitment() { + return amountCommitment; + } + + /** Amount authorized for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAuthorized") + private final Double amountAuthorized; + + /** + * Amount authorized for the subscription. + * + * @return the value + */ + public Double getAmountAuthorized() { + return amountAuthorized; + } + + /** Amount provisioned for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountProvisioned") + private final Double amountProvisioned; + + /** + * Amount provisioned for the subscription. + * + * @return the value + */ + public Double getAmountProvisioned() { + return amountProvisioned; + } + + /** Amount consumed from the subscription commitment. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountConsumed") + private final Double amountConsumed; + + /** + * Amount consumed from the subscription commitment. + * + * @return the value + */ + public Double getAmountConsumed() { + return amountConsumed; + } + + /** Amount remaining and available for the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("amountAvailable") + private final Double amountAvailable; + + /** + * Amount remaining and available for the subscription. + * + * @return the value + */ + public Double getAmountAvailable() { + return amountAvailable; + } + + /** Commitment periods associated with the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("commitmentPeriods") + private final java.util.List commitmentPeriods; + + /** + * Commitment periods associated with the subscription. + * + * @return the value + */ + public java.util.List getCommitmentPeriods() { + return commitmentPeriods; + } + + /** Products and services that draw down from the subscription. */ + @com.fasterxml.jackson.annotation.JsonProperty("productsAndServices") + private final java.util.List productsAndServices; + + /** + * Products and services that draw down from the subscription. + * + * @return the value + */ + public java.util.List getProductsAndServices() { + return productsAndServices; + } + + @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("SubscriptionDetails("); + sb.append("super=").append(super.toString()); + sb.append("contractId=").append(String.valueOf(this.contractId)); + sb.append(", subscriptionId=").append(String.valueOf(this.subscriptionId)); + sb.append(", customerName=").append(String.valueOf(this.customerName)); + sb.append(", currencyCode=").append(String.valueOf(this.currencyCode)); + sb.append(", timeCommitmentStart=").append(String.valueOf(this.timeCommitmentStart)); + sb.append(", timeCommitmentEnd=").append(String.valueOf(this.timeCommitmentEnd)); + sb.append(", amountCommitment=").append(String.valueOf(this.amountCommitment)); + sb.append(", amountAuthorized=").append(String.valueOf(this.amountAuthorized)); + sb.append(", amountProvisioned=").append(String.valueOf(this.amountProvisioned)); + sb.append(", amountConsumed=").append(String.valueOf(this.amountConsumed)); + sb.append(", amountAvailable=").append(String.valueOf(this.amountAvailable)); + sb.append(", commitmentPeriods=").append(String.valueOf(this.commitmentPeriods)); + sb.append(", productsAndServices=").append(String.valueOf(this.productsAndServices)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SubscriptionDetails)) { + return false; + } + + SubscriptionDetails other = (SubscriptionDetails) o; + return java.util.Objects.equals(this.contractId, other.contractId) + && java.util.Objects.equals(this.subscriptionId, other.subscriptionId) + && java.util.Objects.equals(this.customerName, other.customerName) + && java.util.Objects.equals(this.currencyCode, other.currencyCode) + && java.util.Objects.equals(this.timeCommitmentStart, other.timeCommitmentStart) + && java.util.Objects.equals(this.timeCommitmentEnd, other.timeCommitmentEnd) + && java.util.Objects.equals(this.amountCommitment, other.amountCommitment) + && java.util.Objects.equals(this.amountAuthorized, other.amountAuthorized) + && java.util.Objects.equals(this.amountProvisioned, other.amountProvisioned) + && java.util.Objects.equals(this.amountConsumed, other.amountConsumed) + && java.util.Objects.equals(this.amountAvailable, other.amountAvailable) + && java.util.Objects.equals(this.commitmentPeriods, other.commitmentPeriods) + && java.util.Objects.equals(this.productsAndServices, other.productsAndServices) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.contractId == null ? 43 : this.contractId.hashCode()); + result = + (result * PRIME) + + (this.subscriptionId == null ? 43 : this.subscriptionId.hashCode()); + result = (result * PRIME) + (this.customerName == null ? 43 : this.customerName.hashCode()); + result = (result * PRIME) + (this.currencyCode == null ? 43 : this.currencyCode.hashCode()); + result = + (result * PRIME) + + (this.timeCommitmentStart == null + ? 43 + : this.timeCommitmentStart.hashCode()); + result = + (result * PRIME) + + (this.timeCommitmentEnd == null ? 43 : this.timeCommitmentEnd.hashCode()); + result = + (result * PRIME) + + (this.amountCommitment == null ? 43 : this.amountCommitment.hashCode()); + result = + (result * PRIME) + + (this.amountAuthorized == null ? 43 : this.amountAuthorized.hashCode()); + result = + (result * PRIME) + + (this.amountProvisioned == null ? 43 : this.amountProvisioned.hashCode()); + result = + (result * PRIME) + + (this.amountConsumed == null ? 43 : this.amountConsumed.hashCode()); + result = + (result * PRIME) + + (this.amountAvailable == null ? 43 : this.amountAvailable.hashCode()); + result = + (result * PRIME) + + (this.commitmentPeriods == null ? 43 : this.commitmentPeriods.hashCode()); + result = + (result * PRIME) + + (this.productsAndServices == null + ? 43 + : this.productsAndServices.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionProduct.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionProduct.java index c9eb8501ce0..b403e5e7d42 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionProduct.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionProduct.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Product description
+ * Product description.
* 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 @@ -35,12 +35,12 @@ public SubscriptionProduct( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Product part numner */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private String partNumber; /** - * Product part numner + * Product part number. * * @param partNumber the value to set * @return this builder @@ -50,12 +50,12 @@ public Builder partNumber(String partNumber) { this.__explicitlySet__.add("partNumber"); return this; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private String name; /** - * Product name + * Product name. * * @param name the value to set * @return this builder @@ -65,12 +65,12 @@ public Builder name(String name) { this.__explicitlySet__.add("name"); return this; } - /** Unit of measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private String unitOfMeasure; /** - * Unit of measure + * Unit of measure. * * @param unitOfMeasure the value to set * @return this builder @@ -80,12 +80,12 @@ public Builder unitOfMeasure(String unitOfMeasure) { this.__explicitlySet__.add("unitOfMeasure"); return this; } - /** Product provisioning group */ + /** Product provisioning group. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningGroup") private String provisioningGroup; /** - * Product provisioning group + * Product provisioning group. * * @param provisioningGroup the value to set * @return this builder @@ -136,12 +136,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Product part numner */ + /** Product part number. */ @com.fasterxml.jackson.annotation.JsonProperty("partNumber") private final String partNumber; /** - * Product part numner + * Product part number. * * @return the value */ @@ -149,12 +149,12 @@ public String getPartNumber() { return partNumber; } - /** Product name */ + /** Product name. */ @com.fasterxml.jackson.annotation.JsonProperty("name") private final String name; /** - * Product name + * Product name. * * @return the value */ @@ -162,12 +162,12 @@ public String getName() { return name; } - /** Unit of measure */ + /** Unit of measure. */ @com.fasterxml.jackson.annotation.JsonProperty("unitOfMeasure") private final String unitOfMeasure; /** - * Unit of measure + * Unit of measure. * * @return the value */ @@ -175,12 +175,12 @@ public String getUnitOfMeasure() { return unitOfMeasure; } - /** Product provisioning group */ + /** Product provisioning group. */ @com.fasterxml.jackson.annotation.JsonProperty("provisioningGroup") private final String provisioningGroup; /** - * Product provisioning group + * Product provisioning group. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSubscribedService.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSubscribedService.java index c5c00681b93..a83b0a2875c 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSubscribedService.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSubscribedService.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscribed Service summary
+ * Subscribed service summary.
* 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 @@ -48,7 +48,8 @@ public final class SubscriptionSubscribedService "isIntentToPay", "timeStart", "timeEnd", - "commitmentServices" + "commitmentServices", + "associatedSubscriptions" }) public SubscriptionSubscribedService( String id, @@ -75,7 +76,8 @@ public SubscriptionSubscribedService( Boolean isIntentToPay, java.util.Date timeStart, java.util.Date timeEnd, - java.util.List commitmentServices) { + java.util.List commitmentServices, + java.util.List associatedSubscriptions) { super(); this.id = id; this.product = product; @@ -102,16 +104,17 @@ public SubscriptionSubscribedService( this.timeStart = timeStart; this.timeEnd = timeEnd; this.commitmentServices = commitmentServices; + this.associatedSubscriptions = associatedSubscriptions; } @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private String id; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @param id the value to set * @return this builder @@ -130,12 +133,12 @@ public Builder product(SubscriptionProduct product) { this.__explicitlySet__.add("product"); return this; } - /** Subscribed service quantity */ + /** Subscribed service quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private String quantity; /** - * Subscribed service quantity + * Subscribed service quantity. * * @param quantity the value to set * @return this builder @@ -145,12 +148,12 @@ public Builder quantity(String quantity) { this.__explicitlySet__.add("quantity"); return this; } - /** Subscribed service status */ + /** Subscribed service status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private String status; /** - * Subscribed service status + * Subscribed service status. * * @param status the value to set * @return this builder @@ -160,12 +163,12 @@ public Builder status(String status) { this.__explicitlySet__.add("status"); return this; } - /** Subscribed service operation type */ + /** Subscribed service operation type. */ @com.fasterxml.jackson.annotation.JsonProperty("operationType") private String operationType; /** - * Subscribed service operation type + * Subscribed service operation type. * * @param operationType the value to set * @return this builder @@ -175,12 +178,12 @@ public Builder operationType(String operationType) { this.__explicitlySet__.add("operationType"); return this; } - /** Subscribed service net unit price */ + /** Subscribed service net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private String netUnitPrice; /** - * Subscribed service net unit price + * Subscribed service net unit price. * * @param netUnitPrice the value to set * @return this builder @@ -190,12 +193,12 @@ public Builder netUnitPrice(String netUnitPrice) { this.__explicitlySet__.add("netUnitPrice"); return this; } - /** Subscribed service used amount */ + /** Subscribed service used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private String usedAmount; /** - * Subscribed service used amount + * Subscribed service used amount. * * @param usedAmount the value to set * @return this builder @@ -205,12 +208,12 @@ public Builder usedAmount(String usedAmount) { this.__explicitlySet__.add("usedAmount"); return this; } - /** Subscribed sercice available or remaining amount */ + /** Subscribed sercice available or remaining amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private String availableAmount; /** - * Subscribed sercice available or remaining amount + * Subscribed sercice available or remaining amount. * * @param availableAmount the value to set * @return this builder @@ -220,12 +223,12 @@ public Builder availableAmount(String availableAmount) { this.__explicitlySet__.add("availableAmount"); return this; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @param fundedAllocationValue the value to set * @return this builder @@ -236,15 +239,15 @@ public Builder fundedAllocationValue(String fundedAllocationValue) { return this; } /** - * This field contains the name of the partner to which the subscription belongs - depending - * on which the invoicing may differ + * The name of the partner to which the subscription belongs, however depending on which + * subscription, the invoicing can differ. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerTransactionType") private String partnerTransactionType; /** - * This field contains the name of the partner to which the subscription belongs - depending - * on which the invoicing may differ + * The name of the partner to which the subscription belongs, however depending on which + * subscription, the invoicing can differ. * * @param partnerTransactionType the value to set * @return this builder @@ -254,12 +257,12 @@ public Builder partnerTransactionType(String partnerTransactionType) { this.__explicitlySet__.add("partnerTransactionType"); return this; } - /** Term value in Months */ + /** Term value in months. */ @com.fasterxml.jackson.annotation.JsonProperty("termValue") private Long termValue; /** - * Term value in Months + * Term value in months. * * @param termValue the value to set * @return this builder @@ -269,12 +272,12 @@ public Builder termValue(Long termValue) { this.__explicitlySet__.add("termValue"); return this; } - /** Term value UOM */ + /** Term value UOM (Unit of Measure). */ @com.fasterxml.jackson.annotation.JsonProperty("termValueUom") private String termValueUom; /** - * Term value UOM + * Term value UOM (Unit of Measure). * * @param termValueUom the value to set * @return this builder @@ -284,12 +287,12 @@ public Builder termValueUom(String termValueUom) { this.__explicitlySet__.add("termValueUom"); return this; } - /** Booking Opportunity Number of Subscribed Service */ + /** Booking opportunity number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("bookingOptyNumber") private String bookingOptyNumber; /** - * Booking Opportunity Number of Subscribed Service + * Booking opportunity number of subscribed service. * * @param bookingOptyNumber the value to set * @return this builder @@ -299,12 +302,12 @@ public Builder bookingOptyNumber(String bookingOptyNumber) { this.__explicitlySet__.add("bookingOptyNumber"); return this; } - /** Subscribed service total value */ + /** Subscribed service total value. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private String totalValue; /** - * Subscribed service total value + * Subscribed service total value. * * @param totalValue the value to set * @return this builder @@ -314,12 +317,12 @@ public Builder totalValue(String totalValue) { this.__explicitlySet__.add("totalValue"); return this; } - /** Subscribed service Promotion Amount */ + /** Subscribed service promotion amount. */ @com.fasterxml.jackson.annotation.JsonProperty("originalPromoAmount") private String originalPromoAmount; /** - * Subscribed service Promotion Amount + * Subscribed service promotion amount. * * @param originalPromoAmount the value to set * @return this builder @@ -329,12 +332,12 @@ public Builder originalPromoAmount(String originalPromoAmount) { this.__explicitlySet__.add("originalPromoAmount"); return this; } - /** Sales Order Number associated to the subscribed service */ + /** Sales order number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private Long orderNumber; /** - * Sales Order Number associated to the subscribed service + * Sales order number associated with the subscribed service. * * @param orderNumber the value to set * @return this builder @@ -344,12 +347,12 @@ public Builder orderNumber(Long orderNumber) { this.__explicitlySet__.add("orderNumber"); return this; } - /** Subscribed service data center region */ + /** Subscribed service data center region. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenterRegion") private String dataCenterRegion; /** - * Subscribed service data center region + * Subscribed service data center region. * * @param dataCenterRegion the value to set * @return this builder @@ -359,12 +362,12 @@ public Builder dataCenterRegion(String dataCenterRegion) { this.__explicitlySet__.add("dataCenterRegion"); return this; } - /** Subscribed service pricing model */ + /** Subscribed service pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private String pricingModel; /** - * Subscribed service pricing model + * Subscribed service pricing model. * * @param pricingModel the value to set * @return this builder @@ -374,12 +377,12 @@ public Builder pricingModel(String pricingModel) { this.__explicitlySet__.add("pricingModel"); return this; } - /** Subscribed service program type */ + /** Subscribed service program type. */ @com.fasterxml.jackson.annotation.JsonProperty("programType") private String programType; /** - * Subscribed service program type + * Subscribed service program type. * * @param programType the value to set * @return this builder @@ -389,12 +392,12 @@ public Builder programType(String programType) { this.__explicitlySet__.add("programType"); return this; } - /** Subscribed service promotion type */ + /** Subscribed service promotion type. */ @com.fasterxml.jackson.annotation.JsonProperty("promoType") private String promoType; /** - * Subscribed service promotion type + * Subscribed service promotion type. * * @param promoType the value to set * @return this builder @@ -404,12 +407,12 @@ public Builder promoType(String promoType) { this.__explicitlySet__.add("promoType"); return this; } - /** Subscribed service CSI number */ + /** Subscribed service CSI (Customer Service Identifier) number. */ @com.fasterxml.jackson.annotation.JsonProperty("csi") private Long csi; /** - * Subscribed service CSI number + * Subscribed service CSI (Customer Service Identifier) number. * * @param csi the value to set * @return this builder @@ -419,12 +422,12 @@ public Builder csi(Long csi) { this.__explicitlySet__.add("csi"); return this; } - /** Subscribed service intent to pay flag */ + /** Subscribed service intent to pay parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isIntentToPay") private Boolean isIntentToPay; /** - * Subscribed service intent to pay flag + * Subscribed service intent to pay parameter. * * @param isIntentToPay the value to set * @return this builder @@ -434,12 +437,12 @@ public Builder isIntentToPay(Boolean isIntentToPay) { this.__explicitlySet__.add("isIntentToPay"); return this; } - /** Subscribed service start date */ + /** Subscribed service start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Subscribed service start date + * Subscribed service start date. * * @param timeStart the value to set * @return this builder @@ -449,12 +452,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Subscribed service end date */ + /** Subscribed service end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Subscribed service end date + * Subscribed service end date. * * @param timeEnd the value to set * @return this builder @@ -464,12 +467,12 @@ public Builder timeEnd(java.util.Date timeEnd) { this.__explicitlySet__.add("timeEnd"); return this; } - /** List of Commitment services of a line */ + /** List of commitment services of a line. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServices") private java.util.List commitmentServices; /** - * List of Commitment services of a line + * List of commitment services of a line. * * @param commitmentServices the value to set * @return this builder @@ -479,6 +482,22 @@ public Builder commitmentServices(java.util.List commitmentSe this.__explicitlySet__.add("commitmentServices"); return this; } + /** List of Associated Subscriptions */ + @com.fasterxml.jackson.annotation.JsonProperty("associatedSubscriptions") + private java.util.List associatedSubscriptions; + + /** + * List of Associated Subscriptions + * + * @param associatedSubscriptions the value to set + * @return this builder + */ + public Builder associatedSubscriptions( + java.util.List associatedSubscriptions) { + this.associatedSubscriptions = associatedSubscriptions; + this.__explicitlySet__.add("associatedSubscriptions"); + return this; + } @com.fasterxml.jackson.annotation.JsonIgnore private final java.util.Set __explicitlySet__ = new java.util.HashSet(); @@ -510,7 +529,8 @@ public SubscriptionSubscribedService build() { this.isIntentToPay, this.timeStart, this.timeEnd, - this.commitmentServices); + this.commitmentServices, + this.associatedSubscriptions); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); } @@ -594,6 +614,9 @@ public Builder copy(SubscriptionSubscribedService model) { if (model.wasPropertyExplicitlySet("commitmentServices")) { this.commitmentServices(model.getCommitmentServices()); } + if (model.wasPropertyExplicitlySet("associatedSubscriptions")) { + this.associatedSubscriptions(model.getAssociatedSubscriptions()); + } return this; } } @@ -607,12 +630,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** SPM internal Subscribed Service ID */ + /** SPM (Subscription Plan Management) internal subscribed service ID. */ @com.fasterxml.jackson.annotation.JsonProperty("id") private final String id; /** - * SPM internal Subscribed Service ID + * SPM (Subscription Plan Management) internal subscribed service ID. * * @return the value */ @@ -627,12 +650,12 @@ public SubscriptionProduct getProduct() { return product; } - /** Subscribed service quantity */ + /** Subscribed service quantity. */ @com.fasterxml.jackson.annotation.JsonProperty("quantity") private final String quantity; /** - * Subscribed service quantity + * Subscribed service quantity. * * @return the value */ @@ -640,12 +663,12 @@ public String getQuantity() { return quantity; } - /** Subscribed service status */ + /** Subscribed service status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private final String status; /** - * Subscribed service status + * Subscribed service status. * * @return the value */ @@ -653,12 +676,12 @@ public String getStatus() { return status; } - /** Subscribed service operation type */ + /** Subscribed service operation type. */ @com.fasterxml.jackson.annotation.JsonProperty("operationType") private final String operationType; /** - * Subscribed service operation type + * Subscribed service operation type. * * @return the value */ @@ -666,12 +689,12 @@ public String getOperationType() { return operationType; } - /** Subscribed service net unit price */ + /** Subscribed service net unit price. */ @com.fasterxml.jackson.annotation.JsonProperty("netUnitPrice") private final String netUnitPrice; /** - * Subscribed service net unit price + * Subscribed service net unit price. * * @return the value */ @@ -679,12 +702,12 @@ public String getNetUnitPrice() { return netUnitPrice; } - /** Subscribed service used amount */ + /** Subscribed service used amount. */ @com.fasterxml.jackson.annotation.JsonProperty("usedAmount") private final String usedAmount; /** - * Subscribed service used amount + * Subscribed service used amount. * * @return the value */ @@ -692,12 +715,12 @@ public String getUsedAmount() { return usedAmount; } - /** Subscribed sercice available or remaining amount */ + /** Subscribed sercice available or remaining amount. */ @com.fasterxml.jackson.annotation.JsonProperty("availableAmount") private final String availableAmount; /** - * Subscribed sercice available or remaining amount + * Subscribed sercice available or remaining amount. * * @return the value */ @@ -705,12 +728,12 @@ public String getAvailableAmount() { return availableAmount; } - /** Funded Allocation line value example: 12000.00 */ + /** Funded allocation line value. Example: 12000.00 */ @com.fasterxml.jackson.annotation.JsonProperty("fundedAllocationValue") private final String fundedAllocationValue; /** - * Funded Allocation line value example: 12000.00 + * Funded allocation line value. Example: 12000.00 * * @return the value */ @@ -719,15 +742,15 @@ public String getFundedAllocationValue() { } /** - * This field contains the name of the partner to which the subscription belongs - depending on - * which the invoicing may differ + * The name of the partner to which the subscription belongs, however depending on which + * subscription, the invoicing can differ. */ @com.fasterxml.jackson.annotation.JsonProperty("partnerTransactionType") private final String partnerTransactionType; /** - * This field contains the name of the partner to which the subscription belongs - depending on - * which the invoicing may differ + * The name of the partner to which the subscription belongs, however depending on which + * subscription, the invoicing can differ. * * @return the value */ @@ -735,12 +758,12 @@ public String getPartnerTransactionType() { return partnerTransactionType; } - /** Term value in Months */ + /** Term value in months. */ @com.fasterxml.jackson.annotation.JsonProperty("termValue") private final Long termValue; /** - * Term value in Months + * Term value in months. * * @return the value */ @@ -748,12 +771,12 @@ public Long getTermValue() { return termValue; } - /** Term value UOM */ + /** Term value UOM (Unit of Measure). */ @com.fasterxml.jackson.annotation.JsonProperty("termValueUom") private final String termValueUom; /** - * Term value UOM + * Term value UOM (Unit of Measure). * * @return the value */ @@ -761,12 +784,12 @@ public String getTermValueUom() { return termValueUom; } - /** Booking Opportunity Number of Subscribed Service */ + /** Booking opportunity number of subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("bookingOptyNumber") private final String bookingOptyNumber; /** - * Booking Opportunity Number of Subscribed Service + * Booking opportunity number of subscribed service. * * @return the value */ @@ -774,12 +797,12 @@ public String getBookingOptyNumber() { return bookingOptyNumber; } - /** Subscribed service total value */ + /** Subscribed service total value. */ @com.fasterxml.jackson.annotation.JsonProperty("totalValue") private final String totalValue; /** - * Subscribed service total value + * Subscribed service total value. * * @return the value */ @@ -787,12 +810,12 @@ public String getTotalValue() { return totalValue; } - /** Subscribed service Promotion Amount */ + /** Subscribed service promotion amount. */ @com.fasterxml.jackson.annotation.JsonProperty("originalPromoAmount") private final String originalPromoAmount; /** - * Subscribed service Promotion Amount + * Subscribed service promotion amount. * * @return the value */ @@ -800,12 +823,12 @@ public String getOriginalPromoAmount() { return originalPromoAmount; } - /** Sales Order Number associated to the subscribed service */ + /** Sales order number associated with the subscribed service. */ @com.fasterxml.jackson.annotation.JsonProperty("orderNumber") private final Long orderNumber; /** - * Sales Order Number associated to the subscribed service + * Sales order number associated with the subscribed service. * * @return the value */ @@ -813,12 +836,12 @@ public Long getOrderNumber() { return orderNumber; } - /** Subscribed service data center region */ + /** Subscribed service data center region. */ @com.fasterxml.jackson.annotation.JsonProperty("dataCenterRegion") private final String dataCenterRegion; /** - * Subscribed service data center region + * Subscribed service data center region. * * @return the value */ @@ -826,12 +849,12 @@ public String getDataCenterRegion() { return dataCenterRegion; } - /** Subscribed service pricing model */ + /** Subscribed service pricing model. */ @com.fasterxml.jackson.annotation.JsonProperty("pricingModel") private final String pricingModel; /** - * Subscribed service pricing model + * Subscribed service pricing model. * * @return the value */ @@ -839,12 +862,12 @@ public String getPricingModel() { return pricingModel; } - /** Subscribed service program type */ + /** Subscribed service program type. */ @com.fasterxml.jackson.annotation.JsonProperty("programType") private final String programType; /** - * Subscribed service program type + * Subscribed service program type. * * @return the value */ @@ -852,12 +875,12 @@ public String getProgramType() { return programType; } - /** Subscribed service promotion type */ + /** Subscribed service promotion type. */ @com.fasterxml.jackson.annotation.JsonProperty("promoType") private final String promoType; /** - * Subscribed service promotion type + * Subscribed service promotion type. * * @return the value */ @@ -865,12 +888,12 @@ public String getPromoType() { return promoType; } - /** Subscribed service CSI number */ + /** Subscribed service CSI (Customer Service Identifier) number. */ @com.fasterxml.jackson.annotation.JsonProperty("csi") private final Long csi; /** - * Subscribed service CSI number + * Subscribed service CSI (Customer Service Identifier) number. * * @return the value */ @@ -878,12 +901,12 @@ public Long getCsi() { return csi; } - /** Subscribed service intent to pay flag */ + /** Subscribed service intent to pay parameter. */ @com.fasterxml.jackson.annotation.JsonProperty("isIntentToPay") private final Boolean isIntentToPay; /** - * Subscribed service intent to pay flag + * Subscribed service intent to pay parameter. * * @return the value */ @@ -891,12 +914,12 @@ public Boolean getIsIntentToPay() { return isIntentToPay; } - /** Subscribed service start date */ + /** Subscribed service start date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Subscribed service start date + * Subscribed service start date. * * @return the value */ @@ -904,12 +927,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Subscribed service end date */ + /** Subscribed service end date. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Subscribed service end date + * Subscribed service end date. * * @return the value */ @@ -917,12 +940,12 @@ public java.util.Date getTimeEnd() { return timeEnd; } - /** List of Commitment services of a line */ + /** List of commitment services of a line. */ @com.fasterxml.jackson.annotation.JsonProperty("commitmentServices") private final java.util.List commitmentServices; /** - * List of Commitment services of a line + * List of commitment services of a line. * * @return the value */ @@ -930,6 +953,19 @@ public java.util.List getCommitmentServices() { return commitmentServices; } + /** List of Associated Subscriptions */ + @com.fasterxml.jackson.annotation.JsonProperty("associatedSubscriptions") + private final java.util.List associatedSubscriptions; + + /** + * List of Associated Subscriptions + * + * @return the value + */ + public java.util.List getAssociatedSubscriptions() { + return associatedSubscriptions; + } + @Override public String toString() { return this.toString(true); @@ -970,6 +1006,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", timeStart=").append(String.valueOf(this.timeStart)); sb.append(", timeEnd=").append(String.valueOf(this.timeEnd)); sb.append(", commitmentServices=").append(String.valueOf(this.commitmentServices)); + sb.append(", associatedSubscriptions=") + .append(String.valueOf(this.associatedSubscriptions)); sb.append(")"); return sb.toString(); } @@ -1010,6 +1048,8 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.timeStart, other.timeStart) && java.util.Objects.equals(this.timeEnd, other.timeEnd) && java.util.Objects.equals(this.commitmentServices, other.commitmentServices) + && java.util.Objects.equals( + this.associatedSubscriptions, other.associatedSubscriptions) && super.equals(other); } @@ -1068,6 +1108,11 @@ public int hashCode() { + (this.commitmentServices == null ? 43 : this.commitmentServices.hashCode()); + result = + (result * PRIME) + + (this.associatedSubscriptions == null + ? 43 + : this.associatedSubscriptions.hashCode()); result = (result * PRIME) + super.hashCode(); return result; } diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSummary.java index b3ab37b2c64..a7e3476b6ba 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSummary.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/SubscriptionSummary.java @@ -5,7 +5,7 @@ package com.oracle.bmc.onesubscription.model; /** - * Subscription summary
+ * Subscription summary.
* 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 @@ -55,12 +55,12 @@ public SubscriptionSummary( @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Status of the plan */ + /** Plan status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private String status; /** - * Status of the plan + * Plan status. * * @param status the value to set * @return this builder @@ -70,12 +70,12 @@ public Builder status(String status) { this.__explicitlySet__.add("status"); return this; } - /** Represents the date when the first service of the subscription was activated */ + /** The date when the first service of the subscription was activated. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private java.util.Date timeStart; /** - * Represents the date when the first service of the subscription was activated + * The date when the first service of the subscription was activated. * * @param timeStart the value to set * @return this builder @@ -85,12 +85,12 @@ public Builder timeStart(java.util.Date timeStart) { this.__explicitlySet__.add("timeStart"); return this; } - /** Represents the date when the last service of the subscription ends */ + /** The date when the last service of the subscription ends. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private java.util.Date timeEnd; /** - * Represents the date when the last service of the subscription ends + * The date when the last service of the subscription ends. * * @param timeEnd the value to set * @return this builder @@ -109,12 +109,12 @@ public Builder currency(SubscriptionCurrency currency) { this.__explicitlySet__.add("currency"); return this; } - /** Customer friendly service name provided by PRG */ + /** Customer-friendly service name provided by the PRG (Product Release Group). */ @com.fasterxml.jackson.annotation.JsonProperty("serviceName") private String serviceName; /** - * Customer friendly service name provided by PRG + * Customer-friendly service name provided by the PRG (Product Release Group). * * @param serviceName the value to set * @return this builder @@ -124,12 +124,12 @@ public Builder serviceName(String serviceName) { this.__explicitlySet__.add("serviceName"); return this; } - /** Hold reason of the plan */ + /** Hold reason of the plan. */ @com.fasterxml.jackson.annotation.JsonProperty("holdReason") private String holdReason; /** - * Hold reason of the plan + * Hold reason of the plan. * * @param holdReason the value to set * @return this builder @@ -139,12 +139,12 @@ public Builder holdReason(String holdReason) { this.__explicitlySet__.add("holdReason"); return this; } - /** Represents the date of the hold release */ + /** The date of the hold release. */ @com.fasterxml.jackson.annotation.JsonProperty("timeHoldReleaseEta") private java.util.Date timeHoldReleaseEta; /** - * Represents the date of the hold release + * The date of the hold release. * * @param timeHoldReleaseEta the value to set * @return this builder @@ -154,12 +154,12 @@ public Builder timeHoldReleaseEta(java.util.Date timeHoldReleaseEta) { this.__explicitlySet__.add("timeHoldReleaseEta"); return this; } - /** List of Subscribed Services of the plan */ + /** List of plan's subscribed services. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServices") private java.util.List subscribedServices; /** - * List of Subscribed Services of the plan + * List of plan's subscribed services. * * @param subscribedServices the value to set * @return this builder @@ -230,12 +230,12 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Status of the plan */ + /** Plan status. */ @com.fasterxml.jackson.annotation.JsonProperty("status") private final String status; /** - * Status of the plan + * Plan status. * * @return the value */ @@ -243,12 +243,12 @@ public String getStatus() { return status; } - /** Represents the date when the first service of the subscription was activated */ + /** The date when the first service of the subscription was activated. */ @com.fasterxml.jackson.annotation.JsonProperty("timeStart") private final java.util.Date timeStart; /** - * Represents the date when the first service of the subscription was activated + * The date when the first service of the subscription was activated. * * @return the value */ @@ -256,12 +256,12 @@ public java.util.Date getTimeStart() { return timeStart; } - /** Represents the date when the last service of the subscription ends */ + /** The date when the last service of the subscription ends. */ @com.fasterxml.jackson.annotation.JsonProperty("timeEnd") private final java.util.Date timeEnd; /** - * Represents the date when the last service of the subscription ends + * The date when the last service of the subscription ends. * * @return the value */ @@ -276,12 +276,12 @@ public SubscriptionCurrency getCurrency() { return currency; } - /** Customer friendly service name provided by PRG */ + /** Customer-friendly service name provided by the PRG (Product Release Group). */ @com.fasterxml.jackson.annotation.JsonProperty("serviceName") private final String serviceName; /** - * Customer friendly service name provided by PRG + * Customer-friendly service name provided by the PRG (Product Release Group). * * @return the value */ @@ -289,12 +289,12 @@ public String getServiceName() { return serviceName; } - /** Hold reason of the plan */ + /** Hold reason of the plan. */ @com.fasterxml.jackson.annotation.JsonProperty("holdReason") private final String holdReason; /** - * Hold reason of the plan + * Hold reason of the plan. * * @return the value */ @@ -302,12 +302,12 @@ public String getHoldReason() { return holdReason; } - /** Represents the date of the hold release */ + /** The date of the hold release. */ @com.fasterxml.jackson.annotation.JsonProperty("timeHoldReleaseEta") private final java.util.Date timeHoldReleaseEta; /** - * Represents the date of the hold release + * The date of the hold release. * * @return the value */ @@ -315,12 +315,12 @@ public java.util.Date getTimeHoldReleaseEta() { return timeHoldReleaseEta; } - /** List of Subscribed Services of the plan */ + /** List of plan's subscribed services. */ @com.fasterxml.jackson.annotation.JsonProperty("subscribedServices") private final java.util.List subscribedServices; /** - * List of Subscribed Services of the plan + * List of plan's subscribed services. * * @return the value */ diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/UsageLedgerSummary.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/UsageLedgerSummary.java new file mode 100644 index 00000000000..57b18d19f37 --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/model/UsageLedgerSummary.java @@ -0,0 +1,341 @@ +/** + * 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.onesubscription.model; + +/** + * Revenue invoice consumption detail for a subscription.
+ * 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: 20190111") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UsageLedgerSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UsageLedgerSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "commitmentPeriod", + "timeConsumption", + "subId", + "serviceName", + "consumptionAmount", + "type" + }) + public UsageLedgerSummary( + String commitmentPeriod, + java.util.Date timeConsumption, + String subId, + String serviceName, + Double consumptionAmount, + String type) { + super(); + this.commitmentPeriod = commitmentPeriod; + this.timeConsumption = timeConsumption; + this.subId = subId; + this.serviceName = serviceName; + this.consumptionAmount = consumptionAmount; + this.type = type; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Commitment period from the subscription details summary. */ + @com.fasterxml.jackson.annotation.JsonProperty("commitmentPeriod") + private String commitmentPeriod; + + /** + * Commitment period from the subscription details summary. + * + * @param commitmentPeriod the value to set + * @return this builder + */ + public Builder commitmentPeriod(String commitmentPeriod) { + this.commitmentPeriod = commitmentPeriod; + this.__explicitlySet__.add("commitmentPeriod"); + return this; + } + /** Revenue invoice consumption date. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeConsumption") + private java.util.Date timeConsumption; + + /** + * Revenue invoice consumption date. + * + * @param timeConsumption the value to set + * @return this builder + */ + public Builder timeConsumption(java.util.Date timeConsumption) { + this.timeConsumption = timeConsumption; + this.__explicitlySet__.add("timeConsumption"); + return this; + } + /** Authorization-order subscription identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("subId") + private String subId; + + /** + * Authorization-order subscription identifier. + * + * @param subId the value to set + * @return this builder + */ + public Builder subId(String subId) { + this.subId = subId; + this.__explicitlySet__.add("subId"); + return this; + } + /** Name of the consumed product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the consumed product or service. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** Amount consumed on the consumption date. */ + @com.fasterxml.jackson.annotation.JsonProperty("consumptionAmount") + private Double consumptionAmount; + + /** + * Amount consumed on the consumption date. + * + * @param consumptionAmount the value to set + * @return this builder + */ + public Builder consumptionAmount(Double consumptionAmount) { + this.consumptionAmount = consumptionAmount; + this.__explicitlySet__.add("consumptionAmount"); + return this; + } + /** + * Consumption category. Known values include Consumption, Commitment Expiration, and + * Overage. + */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private String type; + + /** + * Consumption category. Known values include Consumption, Commitment Expiration, and + * Overage. + * + * @param type the value to set + * @return this builder + */ + public Builder type(String type) { + this.type = type; + this.__explicitlySet__.add("type"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UsageLedgerSummary build() { + UsageLedgerSummary model = + new UsageLedgerSummary( + this.commitmentPeriod, + this.timeConsumption, + this.subId, + this.serviceName, + this.consumptionAmount, + this.type); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UsageLedgerSummary model) { + if (model.wasPropertyExplicitlySet("commitmentPeriod")) { + this.commitmentPeriod(model.getCommitmentPeriod()); + } + if (model.wasPropertyExplicitlySet("timeConsumption")) { + this.timeConsumption(model.getTimeConsumption()); + } + if (model.wasPropertyExplicitlySet("subId")) { + this.subId(model.getSubId()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("consumptionAmount")) { + this.consumptionAmount(model.getConsumptionAmount()); + } + if (model.wasPropertyExplicitlySet("type")) { + this.type(model.getType()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Commitment period from the subscription details summary. */ + @com.fasterxml.jackson.annotation.JsonProperty("commitmentPeriod") + private final String commitmentPeriod; + + /** + * Commitment period from the subscription details summary. + * + * @return the value + */ + public String getCommitmentPeriod() { + return commitmentPeriod; + } + + /** Revenue invoice consumption date. */ + @com.fasterxml.jackson.annotation.JsonProperty("timeConsumption") + private final java.util.Date timeConsumption; + + /** + * Revenue invoice consumption date. + * + * @return the value + */ + public java.util.Date getTimeConsumption() { + return timeConsumption; + } + + /** Authorization-order subscription identifier. */ + @com.fasterxml.jackson.annotation.JsonProperty("subId") + private final String subId; + + /** + * Authorization-order subscription identifier. + * + * @return the value + */ + public String getSubId() { + return subId; + } + + /** Name of the consumed product or service. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the consumed product or service. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** Amount consumed on the consumption date. */ + @com.fasterxml.jackson.annotation.JsonProperty("consumptionAmount") + private final Double consumptionAmount; + + /** + * Amount consumed on the consumption date. + * + * @return the value + */ + public Double getConsumptionAmount() { + return consumptionAmount; + } + + /** + * Consumption category. Known values include Consumption, Commitment Expiration, and Overage. + */ + @com.fasterxml.jackson.annotation.JsonProperty("type") + private final String type; + + /** + * Consumption category. Known values include Consumption, Commitment Expiration, and Overage. + * + * @return the value + */ + public String getType() { + return type; + } + + @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("UsageLedgerSummary("); + sb.append("super=").append(super.toString()); + sb.append("commitmentPeriod=").append(String.valueOf(this.commitmentPeriod)); + sb.append(", timeConsumption=").append(String.valueOf(this.timeConsumption)); + sb.append(", subId=").append(String.valueOf(this.subId)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", consumptionAmount=").append(String.valueOf(this.consumptionAmount)); + sb.append(", type=").append(String.valueOf(this.type)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UsageLedgerSummary)) { + return false; + } + + UsageLedgerSummary other = (UsageLedgerSummary) o; + return java.util.Objects.equals(this.commitmentPeriod, other.commitmentPeriod) + && java.util.Objects.equals(this.timeConsumption, other.timeConsumption) + && java.util.Objects.equals(this.subId, other.subId) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.consumptionAmount, other.consumptionAmount) + && java.util.Objects.equals(this.type, other.type) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.commitmentPeriod == null ? 43 : this.commitmentPeriod.hashCode()); + result = + (result * PRIME) + + (this.timeConsumption == null ? 43 : this.timeConsumption.hashCode()); + result = (result * PRIME) + (this.subId == null ? 43 : this.subId.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = + (result * PRIME) + + (this.consumptionAmount == null ? 43 : this.consumptionAmount.hashCode()); + result = (result * PRIME) + (this.type == null ? 43 : this.type.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetCommitmentRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetCommitmentRequest.java index 703d5aedf1c..0a975a22cb7 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetCommitmentRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetCommitmentRequest.java @@ -13,10 +13,10 @@ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") public class GetCommitmentRequest extends com.oracle.bmc.requests.BmcRequest { - /** The Commitment Id */ + /** The commitment ID. */ private String commitmentId; - /** The Commitment Id */ + /** The commitment ID. */ public String getCommitmentId() { return commitmentId; } @@ -40,11 +40,11 @@ public static class Builder private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; - /** The Commitment Id */ + /** The commitment ID. */ private String commitmentId = null; /** - * The Commitment Id + * The commitment ID. * * @param commitmentId the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetComputedUsageRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetComputedUsageRequest.java index 136768886ae..ec59df5fff2 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetComputedUsageRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetComputedUsageRequest.java @@ -13,10 +13,10 @@ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") public class GetComputedUsageRequest extends com.oracle.bmc.requests.BmcRequest { - /** The Computed Usage Id */ + /** The computed usage ID. */ private String computedUsageId; - /** The Computed Usage Id */ + /** The computed usage ID. */ public String getComputedUsageId() { return computedUsageId; } @@ -28,16 +28,16 @@ public String getCompartmentId() { return compartmentId; } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls which + * fields to return. */ private java.util.List fields; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls which + * fields to return. */ public java.util.List getFields() { return fields; @@ -62,11 +62,11 @@ public static class Builder private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; - /** The Computed Usage Id */ + /** The computed usage ID. */ private String computedUsageId = null; /** - * The Computed Usage Id + * The computed usage ID. * * @param computedUsageId the value to set * @return this builder instance @@ -91,16 +91,16 @@ public Builder compartmentId(String compartmentId) { } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls + * which fields to return. */ private java.util.List fields = null; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls + * which fields to return. * * @param fields the value to set * @return this builder instance @@ -112,8 +112,8 @@ public Builder fields(java.util.List fields) { /** * Singular setter. Partial response refers to an optimization technique offered by the - * RESTful web APIs to return only the information (fields) required by the client. This - * parameter is used to control what fields to return. + * RESTful web APIs, to return only the information (fields) required by the client. This + * parameter controls which fields to return. * * @param singularValue the singular value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscribedServiceRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscribedServiceRequest.java index ac4c2087035..379e6d7544f 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscribedServiceRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscribedServiceRequest.java @@ -14,30 +14,30 @@ public class GetSubscribedServiceRequest extends com.oracle.bmc.requests.BmcRequest { - /** The Subscribed Service Id */ + /** The subscribed service ID. */ private String subscribedServiceId; - /** The Subscribed Service Id */ + /** The subscribed service ID. */ public String getSubscribedServiceId() { return subscribedServiceId; } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to + * Partial response refers to an optimization technique offered by the RESTful web APIs, to * return only the information (fields) required by the client. In this mechanism, the client * sends the required field names as the query parameters for an API to the server, and the * server trims down the default response content by removing the fields that are not required - * by the client. The parameter used to control what fields to return should be a query string - * parameter called "fields" of type array, and usecollectionFormat + * by the client. The parameter used to control which fields to return should be a query string + * parameter called "fields", of an array type, and use collectionFormat. */ private java.util.List fields; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to + * Partial response refers to an optimization technique offered by the RESTful web APIs, to * return only the information (fields) required by the client. In this mechanism, the client * sends the required field names as the query parameters for an API to the server, and the * server trims down the default response content by removing the fields that are not required - * by the client. The parameter used to control what fields to return should be a query string - * parameter called "fields" of type array, and usecollectionFormat + * by the client. The parameter used to control which fields to return should be a query string + * parameter called "fields", of an array type, and use collectionFormat. */ public java.util.List getFields() { return fields; @@ -62,11 +62,11 @@ public static class Builder private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; - /** The Subscribed Service Id */ + /** The subscribed service ID. */ private String subscribedServiceId = null; /** - * The Subscribed Service Id + * The subscribed service ID. * * @param subscribedServiceId the value to set * @return this builder instance @@ -77,22 +77,22 @@ public Builder subscribedServiceId(String subscribedServiceId) { } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to + * Partial response refers to an optimization technique offered by the RESTful web APIs, to * return only the information (fields) required by the client. In this mechanism, the * client sends the required field names as the query parameters for an API to the server, * and the server trims down the default response content by removing the fields that are - * not required by the client. The parameter used to control what fields to return should be - * a query string parameter called "fields" of type array, and usecollectionFormat + * not required by the client. The parameter used to control which fields to return should + * be a query string parameter called "fields", of an array type, and use collectionFormat. */ private java.util.List fields = null; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to + * Partial response refers to an optimization technique offered by the RESTful web APIs, to * return only the information (fields) required by the client. In this mechanism, the * client sends the required field names as the query parameters for an API to the server, * and the server trims down the default response content by removing the fields that are - * not required by the client. The parameter used to control what fields to return should be - * a query string parameter called "fields" of type array, and usecollectionFormat + * not required by the client. The parameter used to control which fields to return should + * be a query string parameter called "fields", of an array type, and use collectionFormat. * * @param fields the value to set * @return this builder instance @@ -104,12 +104,12 @@ public Builder fields(java.util.List fields) { /** * Singular setter. Partial response refers to an optimization technique offered by the - * RESTful web APIs to return only the information (fields) required by the client. In this + * RESTful web APIs, to return only the information (fields) required by the client. In this * mechanism, the client sends the required field names as the query parameters for an API * to the server, and the server trims down the default response content by removing the - * fields that are not required by the client. The parameter used to control what fields to - * return should be a query string parameter called "fields" of type array, and - * usecollectionFormat + * fields that are not required by the client. The parameter used to control which fields to + * return should be a query string parameter called "fields", of an array type, and use + * collectionFormat. * * @param singularValue the singular value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscriptionDetailsRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscriptionDetailsRequest.java new file mode 100644 index 00000000000..27765865fad --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/GetSubscriptionDetailsRequest.java @@ -0,0 +1,235 @@ +/** + * 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.onesubscription.requests; + +import com.oracle.bmc.onesubscription.model.*; +/** + * Example: Click here to see how to use + * GetSubscriptionDetailsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") +public class GetSubscriptionDetailsRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** Subscription identifier. */ + private String subscriptionId; + + /** Subscription identifier. */ + public String getSubscriptionId() { + return subscriptionId; + } + /** The OCID of the root compartment. */ + private String compartmentId; + + /** The OCID of 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; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetSubscriptionDetailsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Subscription identifier. */ + private String subscriptionId = null; + + /** + * Subscription identifier. + * + * @param subscriptionId the value to set + * @return this builder instance + */ + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + return this; + } + + /** The OCID of the root compartment. */ + private String compartmentId = null; + + /** + * The OCID of 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; + } + + /** + * 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(GetSubscriptionDetailsRequest o) { + subscriptionId(o.getSubscriptionId()); + compartmentId(o.getCompartmentId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetSubscriptionDetailsRequest 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 GetSubscriptionDetailsRequest + */ + public GetSubscriptionDetailsRequest build() { + GetSubscriptionDetailsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetSubscriptionDetailsRequest 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 GetSubscriptionDetailsRequest + */ + public GetSubscriptionDetailsRequest buildWithoutInvocationCallback() { + GetSubscriptionDetailsRequest request = new GetSubscriptionDetailsRequest(); + request.subscriptionId = subscriptionId; + request.compartmentId = compartmentId; + request.opcRequestId = opcRequestId; + return request; + // new GetSubscriptionDetailsRequest(subscriptionId, compartmentId, 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() + .subscriptionId(subscriptionId) + .compartmentId(compartmentId) + .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(",subscriptionId=").append(String.valueOf(this.subscriptionId)); + sb.append(",compartmentId=").append(String.valueOf(this.compartmentId)); + 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 GetSubscriptionDetailsRequest)) { + return false; + } + + GetSubscriptionDetailsRequest other = (GetSubscriptionDetailsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.subscriptionId, other.subscriptionId) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.subscriptionId == null ? 43 : this.subscriptionId.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListAggregatedComputedUsagesRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListAggregatedComputedUsagesRequest.java index 1b5ab7e20c4..0c443fe84fc 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListAggregatedComputedUsagesRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListAggregatedComputedUsagesRequest.java @@ -23,56 +23,56 @@ public String getCompartmentId() { return compartmentId; } /** - * Subscription Id is an identifier associated to the service used for filter the Computed Usage - * in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the computed + * usage in SPM. */ private String subscriptionId; /** - * Subscription Id is an identifier associated to the service used for filter the Computed Usage - * in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the computed + * usage in SPM. */ public String getSubscriptionId() { return subscriptionId; } /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time period + * between fromDate and toDate, expressed in RFC 3339 timestamp format. */ private java.util.Date timeFrom; /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time period + * between fromDate and toDate, expressed in RFC 3339 timestamp format. */ public java.util.Date getTimeFrom() { return timeFrom; } - /** Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. */ + /** Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. */ private java.util.Date timeTo; - /** Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. */ + /** Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. */ public java.util.Date getTimeTo() { return timeTo; } - /** Product part number for subscribed service line, called parent product. */ + /** Product part number for the subscribed service line, referred to as the parent product. */ private String parentProduct; - /** Product part number for subscribed service line, called parent product. */ + /** Product part number for the subscribed service line, referred to as the parent product. */ public String getParentProduct() { return parentProduct; } /** - * Grouping criteria to use for aggregate the computed Usage, either hourly ({@code HOURLY}), - * daily ({@code DAILY}), monthly({@code MONTHLY}) or none ({@code NONE}) to not follow a - * grouping criteria by date. + * Grouping criteria to use for aggregating the computed usage, whether hourly ({@code HOURLY}), + * daily ({@code DAILY}), monthly ({@code MONTHLY}), or none ({@code NONE}), so as not to follow + * a grouping criteria by date. */ private Grouping grouping; /** - * Grouping criteria to use for aggregate the computed Usage, either hourly ({@code HOURLY}), - * daily ({@code DAILY}), monthly({@code MONTHLY}) or none ({@code NONE}) to not follow a - * grouping criteria by date. + * Grouping criteria to use for aggregating the computed usage, whether hourly ({@code HOURLY}), + * daily ({@code DAILY}), monthly ({@code MONTHLY}), or none ({@code NONE}), so as not to follow + * a grouping criteria by date. */ public enum Grouping implements com.oracle.bmc.http.internal.BmcEnum { Hourly("HOURLY"), @@ -110,22 +110,22 @@ public static Grouping create(String key) { }; /** - * Grouping criteria to use for aggregate the computed Usage, either hourly ({@code HOURLY}), - * daily ({@code DAILY}), monthly({@code MONTHLY}) or none ({@code NONE}) to not follow a - * grouping criteria by date. + * Grouping criteria to use for aggregating the computed usage, whether hourly ({@code HOURLY}), + * daily ({@code DAILY}), monthly ({@code MONTHLY}), or none ({@code NONE}), so as not to follow + * a grouping criteria by date. */ public Grouping getGrouping() { return grouping; } /** - * The maximum number aggregatedComputedUsages of items to return within the Subscription "List" - * call, this counts the overall count across all items Example: {@code 500} + * The maximum number of aggregatedComputedUsages items to return within the Subscription "List" + * call, this counts the overall count across all items. Example: {@code 500} */ private Integer limit; /** - * The maximum number aggregatedComputedUsages of items to return within the Subscription "List" - * call, this counts the overall count across all items Example: {@code 500} + * The maximum number of aggregatedComputedUsages items to return within the Subscription "List" + * call, this counts the overall count across all items. Example: {@code 500} */ public Integer getLimit() { return limit; @@ -172,14 +172,14 @@ public Builder compartmentId(String compartmentId) { } /** - * Subscription Id is an identifier associated to the service used for filter the Computed - * Usage in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the + * computed usage in SPM. */ private String subscriptionId = null; /** - * Subscription Id is an identifier associated to the service used for filter the Computed - * Usage in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the + * computed usage in SPM. * * @param subscriptionId the value to set * @return this builder instance @@ -190,14 +190,14 @@ public Builder subscriptionId(String subscriptionId) { } /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time + * period between fromDate and toDate, expressed in RFC 3339 timestamp format. */ private java.util.Date timeFrom = null; /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time + * period between fromDate and toDate, expressed in RFC 3339 timestamp format. * * @param timeFrom the value to set * @return this builder instance @@ -208,12 +208,12 @@ public Builder timeFrom(java.util.Date timeFrom) { } /** - * Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. + * Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. */ private java.util.Date timeTo = null; /** - * Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. + * Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. * * @param timeTo the value to set * @return this builder instance @@ -223,11 +223,13 @@ public Builder timeTo(java.util.Date timeTo) { return this; } - /** Product part number for subscribed service line, called parent product. */ + /** + * Product part number for the subscribed service line, referred to as the parent product. + */ private String parentProduct = null; /** - * Product part number for subscribed service line, called parent product. + * Product part number for the subscribed service line, referred to as the parent product. * * @param parentProduct the value to set * @return this builder instance @@ -238,16 +240,16 @@ public Builder parentProduct(String parentProduct) { } /** - * Grouping criteria to use for aggregate the computed Usage, either hourly ({@code - * HOURLY}), daily ({@code DAILY}), monthly({@code MONTHLY}) or none ({@code NONE}) to not - * follow a grouping criteria by date. + * Grouping criteria to use for aggregating the computed usage, whether hourly ({@code + * HOURLY}), daily ({@code DAILY}), monthly ({@code MONTHLY}), or none ({@code NONE}), so as + * not to follow a grouping criteria by date. */ private Grouping grouping = null; /** - * Grouping criteria to use for aggregate the computed Usage, either hourly ({@code - * HOURLY}), daily ({@code DAILY}), monthly({@code MONTHLY}) or none ({@code NONE}) to not - * follow a grouping criteria by date. + * Grouping criteria to use for aggregating the computed usage, whether hourly ({@code + * HOURLY}), daily ({@code DAILY}), monthly ({@code MONTHLY}), or none ({@code NONE}), so as + * not to follow a grouping criteria by date. * * @param grouping the value to set * @return this builder instance @@ -258,14 +260,14 @@ public Builder grouping(Grouping grouping) { } /** - * The maximum number aggregatedComputedUsages of items to return within the Subscription - * "List" call, this counts the overall count across all items Example: {@code 500} + * The maximum number of aggregatedComputedUsages items to return within the Subscription + * "List" call, this counts the overall count across all items. Example: {@code 500} */ private Integer limit = null; /** - * The maximum number aggregatedComputedUsages of items to return within the Subscription - * "List" call, this counts the overall count across all items Example: {@code 500} + * The maximum number of aggregatedComputedUsages items to return within the Subscription + * "List" call, this counts the overall count across all items. Example: {@code 500} * * @param limit the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListBillingSchedulesRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListBillingSchedulesRequest.java index af04c6d724b..1a0e1e6d0a5 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListBillingSchedulesRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListBillingSchedulesRequest.java @@ -21,17 +21,17 @@ public class ListBillingSchedulesRequest public String getCompartmentId() { return compartmentId; } - /** This param is used to get only the billing schedules for a particular Subscription Id */ + /** This parameter gets the billing schedules for a particular subscription ID. */ private String subscriptionId; - /** This param is used to get only the billing schedules for a particular Subscription Id */ + /** This parameter gets the billing schedules for a particular subscription ID. */ public String getSubscriptionId() { return subscriptionId; } - /** This param is used to get only the billing schedules for a particular Subscribed Service */ + /** This parameter gets the billing schedules for a particular subscribed service. */ private String subscribedServiceId; - /** This param is used to get only the billing schedules for a particular Subscribed Service */ + /** This parameter gets the billing schedules for a particular subscribed service. */ public String getSubscribedServiceId() { return subscribedServiceId; } @@ -173,11 +173,11 @@ public Builder compartmentId(String compartmentId) { return this; } - /** This param is used to get only the billing schedules for a particular Subscription Id */ + /** This parameter gets the billing schedules for a particular subscription ID. */ private String subscriptionId = null; /** - * This param is used to get only the billing schedules for a particular Subscription Id + * This parameter gets the billing schedules for a particular subscription ID. * * @param subscriptionId the value to set * @return this builder instance @@ -187,13 +187,11 @@ public Builder subscriptionId(String subscriptionId) { return this; } - /** - * This param is used to get only the billing schedules for a particular Subscribed Service - */ + /** This parameter gets the billing schedules for a particular subscribed service. */ private String subscribedServiceId = null; /** - * This param is used to get only the billing schedules for a particular Subscribed Service + * This parameter gets the billing schedules for a particular subscribed service. * * @param subscribedServiceId the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListCommitmentsRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListCommitmentsRequest.java index b689304330d..755bdfff46f 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListCommitmentsRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListCommitmentsRequest.java @@ -13,10 +13,10 @@ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") public class ListCommitmentsRequest extends com.oracle.bmc.requests.BmcRequest { - /** This param is used to get the commitments for a particular subscribed service */ + /** Obtains the commitments for a particular subscribed service. */ private String subscribedServiceId; - /** This param is used to get the commitments for a particular subscribed service */ + /** Obtains the commitments for a particular subscribed service. */ public String getSubscribedServiceId() { return subscribedServiceId; } @@ -151,11 +151,11 @@ public static class Builder private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; - /** This param is used to get the commitments for a particular subscribed service */ + /** Obtains the commitments for a particular subscribed service. */ private String subscribedServiceId = null; /** - * This param is used to get the commitments for a particular subscribed service + * Obtains the commitments for a particular subscribed service. * * @param subscribedServiceId the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListComputedUsagesRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListComputedUsagesRequest.java index 01990606726..e6bc398b176 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListComputedUsagesRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListComputedUsagesRequest.java @@ -21,49 +21,49 @@ public String getCompartmentId() { return compartmentId; } /** - * Subscription Id is an identifier associated to the service used for filter the Computed Usage - * in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the computed + * usage in SPM. */ private String subscriptionId; /** - * Subscription Id is an identifier associated to the service used for filter the Computed Usage - * in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the computed + * usage in SPM. */ public String getSubscriptionId() { return subscriptionId; } /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time period + * between fromDate and toDate, expressed in RFC 3339 timestamp format. */ private java.util.Date timeFrom; /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time period + * between fromDate and toDate, expressed in RFC 3339 timestamp format. */ public java.util.Date getTimeFrom() { return timeFrom; } - /** Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. */ + /** Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. */ private java.util.Date timeTo; - /** Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. */ + /** Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. */ public java.util.Date getTimeTo() { return timeTo; } - /** Product part number for subscribed service line, called parent product. */ + /** Product part number for the subscribed service line, called the parent product. */ private String parentProduct; - /** Product part number for subscribed service line, called parent product. */ + /** Product part number for the subscribed service line, called the parent product. */ public String getParentProduct() { return parentProduct; } - /** Product part number for Computed Usage . */ + /** Product part number for the computed usage. */ private String computedProduct; - /** Product part number for Computed Usage . */ + /** Product part number for the computed usage. */ public String getComputedProduct() { return computedProduct; } @@ -207,14 +207,14 @@ public Builder compartmentId(String compartmentId) { } /** - * Subscription Id is an identifier associated to the service used for filter the Computed - * Usage in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the + * computed usage in SPM. */ private String subscriptionId = null; /** - * Subscription Id is an identifier associated to the service used for filter the Computed - * Usage in SPM. + * Subscription ID is an identifier associated with the service, used for filtering the + * computed usage in SPM. * * @param subscriptionId the value to set * @return this builder instance @@ -225,14 +225,14 @@ public Builder subscriptionId(String subscriptionId) { } /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time + * period between fromDate and toDate, expressed in RFC 3339 timestamp format. */ private java.util.Date timeFrom = null; /** - * Initial date to filter Computed Usage data in SPM. In the case of non aggregated data the - * time period between of fromDate and toDate , expressed in RFC 3339 timestamp format. + * Initial date to filter computed usage data in SPM. For non-aggregated data, the time + * period between fromDate and toDate, expressed in RFC 3339 timestamp format. * * @param timeFrom the value to set * @return this builder instance @@ -243,12 +243,12 @@ public Builder timeFrom(java.util.Date timeFrom) { } /** - * Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. + * Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. */ private java.util.Date timeTo = null; /** - * Final date to filter Computed Usage data in SPM, expressed in RFC 3339 timestamp format. + * Final date to filter computed usage data in SPM, expressed in RFC 3339 timestamp format. * * @param timeTo the value to set * @return this builder instance @@ -258,11 +258,11 @@ public Builder timeTo(java.util.Date timeTo) { return this; } - /** Product part number for subscribed service line, called parent product. */ + /** Product part number for the subscribed service line, called the parent product. */ private String parentProduct = null; /** - * Product part number for subscribed service line, called parent product. + * Product part number for the subscribed service line, called the parent product. * * @param parentProduct the value to set * @return this builder instance @@ -272,11 +272,11 @@ public Builder parentProduct(String parentProduct) { return this; } - /** Product part number for Computed Usage . */ + /** Product part number for the computed usage. */ private String computedProduct = null; /** - * Product part number for Computed Usage . + * Product part number for the computed usage. * * @param computedProduct the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicelineComputedUsagesRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicelineComputedUsagesRequest.java index 2a0c7cb3951..f89203c3b0f 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicelineComputedUsagesRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicelineComputedUsagesRequest.java @@ -22,10 +22,10 @@ public class ListInvoicelineComputedUsagesRequest public String getCompartmentId() { return compartmentId; } - /** Invoice Line Identifier - Primary Key SPM */ + /** Invoice line identifier - Primary Key SPM (Subscription Plan Management). */ private String invoiceLineId; - /** Invoice Line Identifier - Primary Key SPM */ + /** Invoice line identifier - Primary Key SPM (Subscription Plan Management). */ public String getInvoiceLineId() { return invoiceLineId; } @@ -71,13 +71,13 @@ public SortOrder getSortOrder() { return sortOrder; } /** - * The field to sort by Invoiced Computed Usages. You can provide one sort order ({@code + * The field to sort by invoiced computed usages. You can provide one sort order ({@code * sortOrder}). */ private SortBy sortBy; /** - * The field to sort by Invoiced Computed Usages. You can provide one sort order ({@code + * The field to sort by invoiced computed usages. You can provide one sort order ({@code * sortOrder}). */ public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { @@ -114,7 +114,7 @@ public static SortBy create(String key) { }; /** - * The field to sort by Invoiced Computed Usages. You can provide one sort order ({@code + * The field to sort by invoiced computed usages. You can provide one sort order ({@code * sortOrder}). */ public SortBy getSortBy() { @@ -143,16 +143,16 @@ public String getPage() { return page; } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls which + * fields to return. */ private java.util.List fields; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls which + * fields to return. */ public java.util.List getFields() { return fields; @@ -191,11 +191,11 @@ public Builder compartmentId(String compartmentId) { return this; } - /** Invoice Line Identifier - Primary Key SPM */ + /** Invoice line identifier - Primary Key SPM (Subscription Plan Management). */ private String invoiceLineId = null; /** - * Invoice Line Identifier - Primary Key SPM + * Invoice line identifier - Primary Key SPM (Subscription Plan Management). * * @param invoiceLineId the value to set * @return this builder instance @@ -220,13 +220,13 @@ public Builder sortOrder(SortOrder sortOrder) { } /** - * The field to sort by Invoiced Computed Usages. You can provide one sort order ({@code + * The field to sort by invoiced computed usages. You can provide one sort order ({@code * sortOrder}). */ private SortBy sortBy = null; /** - * The field to sort by Invoiced Computed Usages. You can provide one sort order ({@code + * The field to sort by invoiced computed usages. You can provide one sort order ({@code * sortOrder}). * * @param sortBy the value to set @@ -272,16 +272,16 @@ public Builder page(String page) { } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls + * which fields to return. */ private java.util.List fields = null; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls + * which fields to return. * * @param fields the value to set * @return this builder instance @@ -293,8 +293,8 @@ public Builder fields(java.util.List fields) { /** * Singular setter. Partial response refers to an optimization technique offered by the - * RESTful web APIs to return only the information (fields) required by the client. This - * parameter is used to control what fields to return. + * RESTful web APIs, to return only the information (fields) required by the client. This + * parameter controls which fields to return. * * @param singularValue the singular value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicesRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicesRequest.java index 6a2640e6514..deec7542d68 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicesRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListInvoicesRequest.java @@ -20,24 +20,24 @@ public class ListInvoicesRequest extends com.oracle.bmc.requests.BmcRequest fields; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls which + * fields to return. */ public java.util.List getFields() { return fields; @@ -194,11 +194,11 @@ public Builder compartmentId(String compartmentId) { return this; } - /** AR Unique identifier for an invoice . */ + /** Accounts receivable unique identifier for an invoice. */ private String arCustomerTransactionId = null; /** - * AR Unique identifier for an invoice . + * Accounts receivable unique identifier for an invoice. * * @param arCustomerTransactionId the value to set * @return this builder instance @@ -208,11 +208,11 @@ public Builder arCustomerTransactionId(String arCustomerTransactionId) { return this; } - /** Initial date to filter Invoice data in SPM. */ + /** Initial date to filter invoice data in SPM (Subscription Plan Management). */ private java.util.Date timeFrom = null; /** - * Initial date to filter Invoice data in SPM. + * Initial date to filter invoice data in SPM (Subscription Plan Management). * * @param timeFrom the value to set * @return this builder instance @@ -222,11 +222,11 @@ public Builder timeFrom(java.util.Date timeFrom) { return this; } - /** Final date to filter Invoice data in SPM. */ + /** Final date to filter invoice data in SPM (Subscription Plan Management). */ private java.util.Date timeTo = null; /** - * Final date to filter Invoice data in SPM. + * Final date to filter invoice data in SPM (Subscription Plan Management). * * @param timeTo the value to set * @return this builder instance @@ -299,16 +299,16 @@ public Builder page(String page) { } /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls + * which fields to return. */ private java.util.List fields = null; /** - * Partial response refers to an optimization technique offered by the RESTful web APIs to - * return only the information (fields) required by the client. This parameter is used to - * control what fields to return. + * Partial response refers to an optimization technique offered by the RESTful web APIs, to + * return only the information (fields) required by the client. This parameter controls + * which fields to return. * * @param fields the value to set * @return this builder instance @@ -320,8 +320,8 @@ public Builder fields(java.util.List fields) { /** * Singular setter. Partial response refers to an optimization technique offered by the - * RESTful web APIs to return only the information (fields) required by the client. This - * parameter is used to control what fields to return. + * RESTful web APIs, to return only the information (fields) required by the client. This + * parameter controls which fields to return. * * @param singularValue the singular value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListRateCardsRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListRateCardsRequest.java index a40cac5c69a..27bf40442d8 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListRateCardsRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListRateCardsRequest.java @@ -13,10 +13,10 @@ @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") public class ListRateCardsRequest extends com.oracle.bmc.requests.BmcRequest { - /** Line level Subscription Id */ + /** Line-level subscription ID. */ private String subscriptionId; - /** Line level Subscription Id */ + /** Line-level subscription ID. */ public String getSubscriptionId() { return subscriptionId; } @@ -27,36 +27,24 @@ public String getSubscriptionId() { public String getCompartmentId() { return compartmentId; } - /** - * This param is used to get the rate card(s) whose effective start date starts on or after a - * particular date - */ + /** Gets the rate cards whose effective start date starts on or after a particular date. */ private java.util.Date timeFrom; - /** - * This param is used to get the rate card(s) whose effective start date starts on or after a - * particular date - */ + /** Gets the rate cards whose effective start date starts on or after a particular date. */ public java.util.Date getTimeFrom() { return timeFrom; } - /** - * This param is used to get the rate card(s) whose effective end date ends on or before a - * particular date - */ + /** Gets the rate cards whose effective end date ends on or before a particular date. */ private java.util.Date timeTo; - /** - * This param is used to get the rate card(s) whose effective end date ends on or before a - * particular date - */ + /** Gets the rate cards whose effective end date ends on or before a particular date. */ public java.util.Date getTimeTo() { return timeTo; } - /** This param is used to get the rate card(s) filterd by the partNumber */ + /** Gets the rate cards filterd by the part number. */ private String partNumber; - /** This param is used to get the rate card(s) filterd by the partNumber */ + /** Gets the rate cards filterd by the part number. */ public String getPartNumber() { return partNumber; } @@ -184,11 +172,11 @@ public static class Builder private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; - /** Line level Subscription Id */ + /** Line-level subscription ID. */ private String subscriptionId = null; /** - * Line level Subscription Id + * Line-level subscription ID. * * @param subscriptionId the value to set * @return this builder instance @@ -212,15 +200,11 @@ public Builder compartmentId(String compartmentId) { return this; } - /** - * This param is used to get the rate card(s) whose effective start date starts on or after - * a particular date - */ + /** Gets the rate cards whose effective start date starts on or after a particular date. */ private java.util.Date timeFrom = null; /** - * This param is used to get the rate card(s) whose effective start date starts on or after - * a particular date + * Gets the rate cards whose effective start date starts on or after a particular date. * * @param timeFrom the value to set * @return this builder instance @@ -230,15 +214,11 @@ public Builder timeFrom(java.util.Date timeFrom) { return this; } - /** - * This param is used to get the rate card(s) whose effective end date ends on or before a - * particular date - */ + /** Gets the rate cards whose effective end date ends on or before a particular date. */ private java.util.Date timeTo = null; /** - * This param is used to get the rate card(s) whose effective end date ends on or before a - * particular date + * Gets the rate cards whose effective end date ends on or before a particular date. * * @param timeTo the value to set * @return this builder instance @@ -248,11 +228,11 @@ public Builder timeTo(java.util.Date timeTo) { return this; } - /** This param is used to get the rate card(s) filterd by the partNumber */ + /** Gets the rate cards filterd by the part number. */ private String partNumber = null; /** - * This param is used to get the rate card(s) filterd by the partNumber + * Gets the rate cards filterd by the part number. * * @param partNumber the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscribedServicesRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscribedServicesRequest.java index f841d369f46..ffe2e4c7199 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscribedServicesRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscribedServicesRequest.java @@ -22,30 +22,30 @@ public class ListSubscribedServicesRequest public String getCompartmentId() { return compartmentId; } - /** Line level Subscription Id */ + /** Line level subscription ID. */ private String subscriptionId; - /** Line level Subscription Id */ + /** Line level subscription ID. */ public String getSubscriptionId() { return subscriptionId; } /** - * Order Line identifier at subscribed service level . This identifier is originated in Order - * Management module. Default is null. + * Order line identifier at subscribed service level. This identifier originates from the order + * management module. Default is null. */ private Long orderLineId; /** - * Order Line identifier at subscribed service level . This identifier is originated in Order - * Management module. Default is null. + * Order line identifier at subscribed service level. This identifier originates from the order + * management module. Default is null. */ public Long getOrderLineId() { return orderLineId; } - /** This param is used to filter subscribed services based on its status */ + /** This parameter filters subscribed services based on its status. */ private String status; - /** This param is used to filter subscribed services based on its status */ + /** This parameter filters subscribed services based on its status. */ public String getStatus() { return status; } @@ -187,11 +187,11 @@ public Builder compartmentId(String compartmentId) { return this; } - /** Line level Subscription Id */ + /** Line level subscription ID. */ private String subscriptionId = null; /** - * Line level Subscription Id + * Line level subscription ID. * * @param subscriptionId the value to set * @return this builder instance @@ -202,14 +202,14 @@ public Builder subscriptionId(String subscriptionId) { } /** - * Order Line identifier at subscribed service level . This identifier is originated in - * Order Management module. Default is null. + * Order line identifier at subscribed service level. This identifier originates from the + * order management module. Default is null. */ private Long orderLineId = null; /** - * Order Line identifier at subscribed service level . This identifier is originated in - * Order Management module. Default is null. + * Order line identifier at subscribed service level. This identifier originates from the + * order management module. Default is null. * * @param orderLineId the value to set * @return this builder instance @@ -219,11 +219,11 @@ public Builder orderLineId(Long orderLineId) { return this; } - /** This param is used to filter subscribed services based on its status */ + /** This parameter filters subscribed services based on its status. */ private String status = null; /** - * This param is used to filter subscribed services based on its status + * This parameter filters subscribed services based on its status. * * @param status the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscriptionsRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscriptionsRequest.java index e3411362b37..164fbf02678 100644 --- a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscriptionsRequest.java +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListSubscriptionsRequest.java @@ -20,31 +20,31 @@ public class ListSubscriptionsRequest extends com.oracle.bmc.requests.BmcRequest public String getCompartmentId() { return compartmentId; } - /** The Plan Number */ + /** The plan number. */ private String planNumber; - /** The Plan Number */ + /** The plan number. */ public String getPlanNumber() { return planNumber; } - /** Line level Subscription Id */ + /** Line level subscription ID. */ private String subscriptionId; - /** Line level Subscription Id */ + /** Line level subscription ID. */ public String getSubscriptionId() { return subscriptionId; } - /** Buyer Email Id */ + /** Buyer email ID. */ private String buyerEmail; - /** Buyer Email Id */ + /** Buyer email ID. */ public String getBuyerEmail() { return buyerEmail; } - /** Boolean value to decide whether commitment services will be shown */ + /** Boolean value to determine whether commitment services are shown. */ private Boolean isCommitInfoRequired; - /** Boolean value to decide whether commitment services will be shown */ + /** Boolean value to determine whether commitment services are shown. */ public Boolean getIsCommitInfoRequired() { return isCommitInfoRequired; } @@ -186,11 +186,11 @@ public Builder compartmentId(String compartmentId) { return this; } - /** The Plan Number */ + /** The plan number. */ private String planNumber = null; /** - * The Plan Number + * The plan number. * * @param planNumber the value to set * @return this builder instance @@ -200,11 +200,11 @@ public Builder planNumber(String planNumber) { return this; } - /** Line level Subscription Id */ + /** Line level subscription ID. */ private String subscriptionId = null; /** - * Line level Subscription Id + * Line level subscription ID. * * @param subscriptionId the value to set * @return this builder instance @@ -214,11 +214,11 @@ public Builder subscriptionId(String subscriptionId) { return this; } - /** Buyer Email Id */ + /** Buyer email ID. */ private String buyerEmail = null; /** - * Buyer Email Id + * Buyer email ID. * * @param buyerEmail the value to set * @return this builder instance @@ -228,11 +228,11 @@ public Builder buyerEmail(String buyerEmail) { return this; } - /** Boolean value to decide whether commitment services will be shown */ + /** Boolean value to determine whether commitment services are shown. */ private Boolean isCommitInfoRequired = null; /** - * Boolean value to decide whether commitment services will be shown + * Boolean value to determine whether commitment services are shown. * * @param isCommitInfoRequired the value to set * @return this builder instance diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListUsageLedgersRequest.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListUsageLedgersRequest.java new file mode 100644 index 00000000000..b8cdaf585af --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/requests/ListUsageLedgersRequest.java @@ -0,0 +1,511 @@ +/** + * 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.onesubscription.requests; + +import com.oracle.bmc.onesubscription.model.*; +/** + * Example: Click here to see how to use ListUsageLedgersRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") +public class ListUsageLedgersRequest extends com.oracle.bmc.requests.BmcRequest { + + /** Subscription identifier. */ + private String subscriptionId; + + /** Subscription identifier. */ + public String getSubscriptionId() { + return subscriptionId; + } + /** The OCID of the root compartment. */ + private String compartmentId; + + /** The OCID of the root compartment. */ + public String getCompartmentId() { + return compartmentId; + } + /** + * The maximum number of items to return in a paginated "List" call. Default: ({@code 50}) + * + *

Example: '500' + */ + private Integer limit; + + /** + * The maximum number of items to return in a paginated "List" call. Default: ({@code 50}) + * + *

Example: '500' + */ + public Integer getLimit() { + return limit; + } + /** The value of the 'opc-next-page' response header from the previous "List" call. */ + private String page; + + /** The value of the 'opc-next-page' response header from the previous "List" call. */ + public String getPage() { + return page; + } + /** The usage-ledger sort order to use, either ascending ('ASC') or descending ('DESC'). */ + private SortOrder sortOrder; + + /** The usage-ledger sort order to use, either ascending ('ASC') or descending ('DESC'). */ + public enum SortOrder implements com.oracle.bmc.http.internal.BmcEnum { + Asc("ASC"), + Desc("DESC"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortOrder v : SortOrder.values()) { + map.put(v.getValue(), v); + } + } + + SortOrder(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortOrder create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortOrder: " + key); + } + }; + + /** The usage-ledger sort order to use, either ascending ('ASC') or descending ('DESC'). */ + public SortOrder getSortOrder() { + return sortOrder; + } + /** The usage-ledger field to sort by. You can provide one sort order ('sortOrder'). */ + private SortBy sortBy; + + /** The usage-ledger field to sort by. You can provide one sort order ('sortOrder'). */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeConsumption("timeConsumption"), + ConsumptionAmount("consumptionAmount"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** The usage-ledger field to sort by. You can provide one sort order ('sortOrder'). */ + public SortBy getSortBy() { + return sortBy; + } + /** + * The lower bound of the consumption-date range, expressed in RFC 3339 timestamp format. The + * value is inclusive (>=). + */ + private java.util.Date timeConsumptionGreaterThanOrEqualTo; + + /** + * The lower bound of the consumption-date range, expressed in RFC 3339 timestamp format. The + * value is inclusive (>=). + */ + public java.util.Date getTimeConsumptionGreaterThanOrEqualTo() { + return timeConsumptionGreaterThanOrEqualTo; + } + /** + * The upper bound of the consumption-date range, expressed in RFC 3339 timestamp format. The + * value is exclusive (<). + */ + private java.util.Date timeConsumptionLessThan; + + /** + * The upper bound of the consumption-date range, expressed in RFC 3339 timestamp format. The + * value is exclusive (<). + */ + public java.util.Date getTimeConsumptionLessThan() { + return timeConsumptionLessThan; + } + /** + * 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< + ListUsageLedgersRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Subscription identifier. */ + private String subscriptionId = null; + + /** + * Subscription identifier. + * + * @param subscriptionId the value to set + * @return this builder instance + */ + public Builder subscriptionId(String subscriptionId) { + this.subscriptionId = subscriptionId; + return this; + } + + /** The OCID of the root compartment. */ + private String compartmentId = null; + + /** + * The OCID of the root compartment. + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * The maximum number of items to return in a paginated "List" call. Default: ({@code 50}) + * + *

Example: '500' + */ + private Integer limit = null; + + /** + * The maximum number of items to return in a paginated "List" call. Default: ({@code 50}) + * + *

Example: '500' + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** The value of the 'opc-next-page' response header from the previous "List" call. */ + private String page = null; + + /** + * The value of the '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 usage-ledger sort order to use, either ascending ('ASC') or descending ('DESC'). */ + private SortOrder sortOrder = null; + + /** + * The usage-ledger sort order to use, either ascending ('ASC') or descending ('DESC'). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** The usage-ledger field to sort by. You can provide one sort order ('sortOrder'). */ + private SortBy sortBy = null; + + /** + * The usage-ledger field to sort by. You can provide one sort order ('sortOrder'). + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** + * The lower bound of the consumption-date range, expressed in RFC 3339 timestamp format. + * The value is inclusive (>=). + */ + private java.util.Date timeConsumptionGreaterThanOrEqualTo = null; + + /** + * The lower bound of the consumption-date range, expressed in RFC 3339 timestamp format. + * The value is inclusive (>=). + * + * @param timeConsumptionGreaterThanOrEqualTo the value to set + * @return this builder instance + */ + public Builder timeConsumptionGreaterThanOrEqualTo( + java.util.Date timeConsumptionGreaterThanOrEqualTo) { + this.timeConsumptionGreaterThanOrEqualTo = timeConsumptionGreaterThanOrEqualTo; + return this; + } + + /** + * The upper bound of the consumption-date range, expressed in RFC 3339 timestamp format. + * The value is exclusive (<). + */ + private java.util.Date timeConsumptionLessThan = null; + + /** + * The upper bound of the consumption-date range, expressed in RFC 3339 timestamp format. + * The value is exclusive (<). + * + * @param timeConsumptionLessThan the value to set + * @return this builder instance + */ + public Builder timeConsumptionLessThan(java.util.Date timeConsumptionLessThan) { + this.timeConsumptionLessThan = timeConsumptionLessThan; + 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(ListUsageLedgersRequest o) { + subscriptionId(o.getSubscriptionId()); + compartmentId(o.getCompartmentId()); + limit(o.getLimit()); + page(o.getPage()); + sortOrder(o.getSortOrder()); + sortBy(o.getSortBy()); + timeConsumptionGreaterThanOrEqualTo(o.getTimeConsumptionGreaterThanOrEqualTo()); + timeConsumptionLessThan(o.getTimeConsumptionLessThan()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListUsageLedgersRequest 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 ListUsageLedgersRequest + */ + public ListUsageLedgersRequest build() { + ListUsageLedgersRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListUsageLedgersRequest 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 ListUsageLedgersRequest + */ + public ListUsageLedgersRequest buildWithoutInvocationCallback() { + ListUsageLedgersRequest request = new ListUsageLedgersRequest(); + request.subscriptionId = subscriptionId; + request.compartmentId = compartmentId; + request.limit = limit; + request.page = page; + request.sortOrder = sortOrder; + request.sortBy = sortBy; + request.timeConsumptionGreaterThanOrEqualTo = timeConsumptionGreaterThanOrEqualTo; + request.timeConsumptionLessThan = timeConsumptionLessThan; + request.opcRequestId = opcRequestId; + return request; + // new ListUsageLedgersRequest(subscriptionId, compartmentId, limit, page, sortOrder, + // sortBy, timeConsumptionGreaterThanOrEqualTo, timeConsumptionLessThan, 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() + .subscriptionId(subscriptionId) + .compartmentId(compartmentId) + .limit(limit) + .page(page) + .sortOrder(sortOrder) + .sortBy(sortBy) + .timeConsumptionGreaterThanOrEqualTo(timeConsumptionGreaterThanOrEqualTo) + .timeConsumptionLessThan(timeConsumptionLessThan) + .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(",subscriptionId=").append(String.valueOf(this.subscriptionId)); + sb.append(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",timeConsumptionGreaterThanOrEqualTo=") + .append(String.valueOf(this.timeConsumptionGreaterThanOrEqualTo)); + sb.append(",timeConsumptionLessThan=").append(String.valueOf(this.timeConsumptionLessThan)); + 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 ListUsageLedgersRequest)) { + return false; + } + + ListUsageLedgersRequest other = (ListUsageLedgersRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.subscriptionId, other.subscriptionId) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals( + this.timeConsumptionGreaterThanOrEqualTo, + other.timeConsumptionGreaterThanOrEqualTo) + && java.util.Objects.equals( + this.timeConsumptionLessThan, other.timeConsumptionLessThan) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.subscriptionId == null ? 43 : this.subscriptionId.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = + (result * PRIME) + + (this.timeConsumptionGreaterThanOrEqualTo == null + ? 43 + : this.timeConsumptionGreaterThanOrEqualTo.hashCode()); + result = + (result * PRIME) + + (this.timeConsumptionLessThan == null + ? 43 + : this.timeConsumptionLessThan.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/responses/GetSubscriptionDetailsResponse.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/responses/GetSubscriptionDetailsResponse.java new file mode 100644 index 00000000000..1e5b4a94cde --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/responses/GetSubscriptionDetailsResponse.java @@ -0,0 +1,181 @@ +/** + * 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.onesubscription.responses; + +import com.oracle.bmc.onesubscription.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") +public class GetSubscriptionDetailsResponse 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; + } + + /** The returned {@code SubscriptionDetails} instance. */ + private com.oracle.bmc.onesubscription.model.SubscriptionDetails subscriptionDetails; + + /** + * The returned {@code SubscriptionDetails} instance. + * + * @return the value + */ + public com.oracle.bmc.onesubscription.model.SubscriptionDetails getSubscriptionDetails() { + return subscriptionDetails; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "subscriptionDetails" + }) + private GetSubscriptionDetailsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + com.oracle.bmc.onesubscription.model.SubscriptionDetails subscriptionDetails) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.subscriptionDetails = subscriptionDetails; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + GetSubscriptionDetailsResponse> { + 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; + } + + /** The returned {@code SubscriptionDetails} instance. */ + private com.oracle.bmc.onesubscription.model.SubscriptionDetails subscriptionDetails; + + /** + * The returned {@code SubscriptionDetails} instance. + * + * @param subscriptionDetails the value to set + * @return this builder + */ + public Builder subscriptionDetails( + com.oracle.bmc.onesubscription.model.SubscriptionDetails subscriptionDetails) { + this.subscriptionDetails = subscriptionDetails; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetSubscriptionDetailsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + subscriptionDetails(o.getSubscriptionDetails()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetSubscriptionDetailsResponse build() { + return new GetSubscriptionDetailsResponse( + __httpStatusCode__, headers, opcRequestId, subscriptionDetails); + } + } + + /** + * 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(",subscriptionDetails=").append(String.valueOf(subscriptionDetails)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetSubscriptionDetailsResponse)) { + return false; + } + + GetSubscriptionDetailsResponse other = (GetSubscriptionDetailsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.subscriptionDetails, other.subscriptionDetails); + } + + @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.subscriptionDetails == null + ? 43 + : this.subscriptionDetails.hashCode()); + return result; + } +} diff --git a/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/responses/ListUsageLedgersResponse.java b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/responses/ListUsageLedgersResponse.java new file mode 100644 index 00000000000..2320d3a9257 --- /dev/null +++ b/bmc-onesubscription/src/main/java/com/oracle/bmc/onesubscription/responses/ListUsageLedgersResponse.java @@ -0,0 +1,221 @@ +/** + * 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.onesubscription.responses; + +import com.oracle.bmc.onesubscription.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190111") +public class ListUsageLedgersResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * For pagination of a list of items. When paging through a list, if this header appears in the + * response, then a partial list might have been returned. Include this value as the {@code + * page} parameter for the subsequent GET request to get the next batch of items. + */ + private String opcNextPage; + + /** + * For pagination of a list of items. When paging through a list, if this header appears in the + * response, then a partial list might have been returned. Include this value as the {@code + * page} parameter for the subsequent GET request to get the next batch of items. + * + * @return the value + */ + public String getOpcNextPage() { + return opcNextPage; + } + + /** + * 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; + } + + /** A list of {@code com.oracle.bmc.onesubscription.model.UsageLedgerSummary} instances. */ + private java.util.List items; + + /** + * A list of {@code com.oracle.bmc.onesubscription.model.UsageLedgerSummary} instances. + * + * @return the value + */ + public java.util.List getItems() { + return items; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcNextPage", + "opcRequestId", + "items" + }) + private ListUsageLedgersResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcNextPage, + String opcRequestId, + java.util.List items) { + super(__httpStatusCode__, headers); + this.opcNextPage = opcNextPage; + this.opcRequestId = opcRequestId; + this.items = items; + } + + 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; + } + + /** + * For pagination of a list of items. When paging through a list, if this header appears in + * the response, then a partial list might have been returned. Include this value as the + * {@code page} parameter for the subsequent GET request to get the next batch of items. + */ + private String opcNextPage; + + /** + * For pagination of a list of items. When paging through a list, if this header appears in + * the response, then a partial list might have been returned. Include this value as the + * {@code page} parameter for the subsequent GET request to get the next batch of items. + * + * @param opcNextPage the value to set + * @return this builder + */ + public Builder opcNextPage(String opcNextPage) { + this.opcNextPage = opcNextPage; + 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; + } + + /** A list of {@code com.oracle.bmc.onesubscription.model.UsageLedgerSummary} instances. */ + private java.util.List items; + + /** + * A list of {@code com.oracle.bmc.onesubscription.model.UsageLedgerSummary} instances. + * + * @param items the value to set + * @return this builder + */ + public Builder items( + java.util.List items) { + this.items = items; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListUsageLedgersResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcNextPage(o.getOpcNextPage()); + opcRequestId(o.getOpcRequestId()); + items(o.getItems()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListUsageLedgersResponse build() { + return new ListUsageLedgersResponse( + __httpStatusCode__, headers, opcNextPage, opcRequestId, items); + } + } + + /** + * 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(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",items=").append(String.valueOf(items)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListUsageLedgersResponse)) { + return false; + } + + ListUsageLedgersResponse other = (ListUsageLedgersResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.items, other.items); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.items == null ? 43 : this.items.hashCode()); + return result; + } +} diff --git a/bmc-onesubscription/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-onesubscription/reflect-config.json b/bmc-onesubscription/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-onesubscription/reflect-config.json index 24d8f5e5d95..279116083b0 100644 --- a/bmc-onesubscription/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-onesubscription/reflect-config.json +++ b/bmc-onesubscription/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-onesubscription/reflect-config.json @@ -19,6 +19,20 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.AssociatedSubscriptions", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.AssociatedSubscriptions$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.onesubscription.model.BillingScheduleProduct", @@ -67,6 +81,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.CommitmentPeriod", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.CommitmentPeriod$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.onesubscription.model.CommitmentService", @@ -357,6 +385,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.ProductAndService", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.ProductAndService$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.onesubscription.model.RateCardProduct", @@ -511,6 +553,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.SubscriptionDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.SubscriptionDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.onesubscription.model.SubscriptionProduct", @@ -552,5 +608,19 @@ "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.UsageLedgerSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.onesubscription.model.UsageLedgerSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true } ] \ No newline at end of file diff --git a/bmc-ons/pom.xml b/bmc-ons/pom.xml index 2ff1eeb9473..0ae395b4b5b 100644 --- a/bmc-ons/pom.xml +++ b/bmc-ons/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ons @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-opa/pom.xml b/bmc-opa/pom.xml index 327e3617002..22c269f8aee 100644 --- a/bmc-opa/pom.xml +++ b/bmc-opa/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-opa @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-opensearch/pom.xml b/bmc-opensearch/pom.xml index 547ac575147..fde71bbc745 100644 --- a/bmc-opensearch/pom.xml +++ b/bmc-opensearch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-opensearch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexSourceDetails.java b/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexSourceDetails.java index 9b6a4ea2b4e..aa5da54e79b 100644 --- a/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexSourceDetails.java +++ b/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexSourceDetails.java @@ -5,7 +5,7 @@ package com.oracle.bmc.opensearch.model; /** - * Connection and certificate details for a remote cluster.
+ * Connection and CA bundle trust details for a remote cluster.
* 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 @@ -23,13 +23,13 @@ public final class RemoteReindexSourceDetails extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { @Deprecated - @java.beans.ConstructorProperties({"endpoint", "endpointResolutionIp", "certificateId"}) + @java.beans.ConstructorProperties({"endpoint", "endpointResolutionIp", "caBundleId"}) public RemoteReindexSourceDetails( - String endpoint, String endpointResolutionIp, String certificateId) { + String endpoint, String endpointResolutionIp, String caBundleId) { super(); this.endpoint = endpoint; this.endpointResolutionIp = endpointResolutionIp; - this.certificateId = certificateId; + this.caBundleId = caBundleId; } @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") @@ -77,22 +77,22 @@ public Builder endpointResolutionIp(String endpointResolutionIp) { return this; } /** - * OCID of the certificate or CA chain used to verify the remote cluster's HTTPS - * certificate. + * OCID of the OCI Certificates service CA bundle containing the trusted CA certificates + * used to verify the remote cluster's HTTPS certificate. */ - @com.fasterxml.jackson.annotation.JsonProperty("certificateId") - private String certificateId; + @com.fasterxml.jackson.annotation.JsonProperty("caBundleId") + private String caBundleId; /** - * OCID of the certificate or CA chain used to verify the remote cluster's HTTPS - * certificate. + * OCID of the OCI Certificates service CA bundle containing the trusted CA certificates + * used to verify the remote cluster's HTTPS certificate. * - * @param certificateId the value to set + * @param caBundleId the value to set * @return this builder */ - public Builder certificateId(String certificateId) { - this.certificateId = certificateId; - this.__explicitlySet__.add("certificateId"); + public Builder caBundleId(String caBundleId) { + this.caBundleId = caBundleId; + this.__explicitlySet__.add("caBundleId"); return this; } @@ -102,7 +102,7 @@ public Builder certificateId(String certificateId) { public RemoteReindexSourceDetails build() { RemoteReindexSourceDetails model = new RemoteReindexSourceDetails( - this.endpoint, this.endpointResolutionIp, this.certificateId); + this.endpoint, this.endpointResolutionIp, this.caBundleId); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); } @@ -117,8 +117,8 @@ public Builder copy(RemoteReindexSourceDetails model) { if (model.wasPropertyExplicitlySet("endpointResolutionIp")) { this.endpointResolutionIp(model.getEndpointResolutionIp()); } - if (model.wasPropertyExplicitlySet("certificateId")) { - this.certificateId(model.getCertificateId()); + if (model.wasPropertyExplicitlySet("caBundleId")) { + this.caBundleId(model.getCaBundleId()); } return this; } @@ -172,18 +172,20 @@ public String getEndpointResolutionIp() { } /** - * OCID of the certificate or CA chain used to verify the remote cluster's HTTPS certificate. + * OCID of the OCI Certificates service CA bundle containing the trusted CA certificates used to + * verify the remote cluster's HTTPS certificate. */ - @com.fasterxml.jackson.annotation.JsonProperty("certificateId") - private final String certificateId; + @com.fasterxml.jackson.annotation.JsonProperty("caBundleId") + private final String caBundleId; /** - * OCID of the certificate or CA chain used to verify the remote cluster's HTTPS certificate. + * OCID of the OCI Certificates service CA bundle containing the trusted CA certificates used to + * verify the remote cluster's HTTPS certificate. * * @return the value */ - public String getCertificateId() { - return certificateId; + public String getCaBundleId() { + return caBundleId; } @Override @@ -203,7 +205,7 @@ public String toString(boolean includeByteArrayContents) { sb.append("super=").append(super.toString()); sb.append("endpoint=").append(String.valueOf(this.endpoint)); sb.append(", endpointResolutionIp=").append(String.valueOf(this.endpointResolutionIp)); - sb.append(", certificateId=").append(String.valueOf(this.certificateId)); + sb.append(", caBundleId=").append(String.valueOf(this.caBundleId)); sb.append(")"); return sb.toString(); } @@ -220,7 +222,7 @@ public boolean equals(Object o) { RemoteReindexSourceDetails other = (RemoteReindexSourceDetails) o; return java.util.Objects.equals(this.endpoint, other.endpoint) && java.util.Objects.equals(this.endpointResolutionIp, other.endpointResolutionIp) - && java.util.Objects.equals(this.certificateId, other.certificateId) + && java.util.Objects.equals(this.caBundleId, other.caBundleId) && super.equals(other); } @@ -234,9 +236,7 @@ public int hashCode() { + (this.endpointResolutionIp == null ? 43 : this.endpointResolutionIp.hashCode()); - result = - (result * PRIME) - + (this.certificateId == null ? 43 : this.certificateId.hashCode()); + result = (result * PRIME) + (this.caBundleId == null ? 43 : this.caBundleId.hashCode()); result = (result * PRIME) + super.hashCode(); return result; } diff --git a/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexTrustConfig.java b/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexTrustConfig.java index d7f6236d495..faeaafb2150 100644 --- a/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexTrustConfig.java +++ b/bmc-opensearch/src/main/java/com/oracle/bmc/opensearch/model/RemoteReindexTrustConfig.java @@ -31,12 +31,18 @@ public RemoteReindexTrustConfig(java.util.List remot @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") public static class Builder { - /** Remote cluster sources to trust for reindexing. */ + /** + * Remote sources trusted for reindexing. When creating a cluster with this configuration, + * provide at least one source. When updating a cluster, this list replaces the existing + * sources. Specify an empty list to remove all remote-reindex trust configuration. + */ @com.fasterxml.jackson.annotation.JsonProperty("remoteSources") private java.util.List remoteSources; /** - * Remote cluster sources to trust for reindexing. + * Remote sources trusted for reindexing. When creating a cluster with this configuration, + * provide at least one source. When updating a cluster, this list replaces the existing + * sources. Specify an empty list to remove all remote-reindex trust configuration. * * @param remoteSources the value to set * @return this builder @@ -76,12 +82,18 @@ public Builder toBuilder() { return new Builder().copy(this); } - /** Remote cluster sources to trust for reindexing. */ + /** + * Remote sources trusted for reindexing. When creating a cluster with this configuration, + * provide at least one source. When updating a cluster, this list replaces the existing + * sources. Specify an empty list to remove all remote-reindex trust configuration. + */ @com.fasterxml.jackson.annotation.JsonProperty("remoteSources") private final java.util.List remoteSources; /** - * Remote cluster sources to trust for reindexing. + * Remote sources trusted for reindexing. When creating a cluster with this configuration, + * provide at least one source. When updating a cluster, this list replaces the existing + * sources. Specify an empty list to remove all remote-reindex trust configuration. * * @return the value */ diff --git a/bmc-operatoraccesscontrol/pom.xml b/bmc-operatoraccesscontrol/pom.xml index 408c3eda546..3d4d778bfaa 100644 --- a/bmc-operatoraccesscontrol/pom.xml +++ b/bmc-operatoraccesscontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-operatoraccesscontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-opsi/pom.xml b/bmc-opsi/pom.xml index 84afb8a80ae..c1b8ee8937f 100644 --- a/bmc-opsi/pom.xml +++ b/bmc-opsi/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-opsi @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-optimizer/pom.xml b/bmc-optimizer/pom.xml index 85f1d0255ee..b8f44e30e5c 100644 --- a/bmc-optimizer/pom.xml +++ b/bmc-optimizer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-optimizer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-osmanagementhub/pom.xml b/bmc-osmanagementhub/pom.xml index ad93ad76909..bdc7a65b265 100644 --- a/bmc-osmanagementhub/pom.xml +++ b/bmc-osmanagementhub/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-osmanagementhub @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-ospgateway/pom.xml b/bmc-ospgateway/pom.xml index d3d4951ff19..94c24554af6 100644 --- a/bmc-ospgateway/pom.xml +++ b/bmc-ospgateway/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-ospgateway @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-osubbillingschedule/pom.xml b/bmc-osubbillingschedule/pom.xml index 4682765f7a4..ba50daa8eea 100644 --- a/bmc-osubbillingschedule/pom.xml +++ b/bmc-osubbillingschedule/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-osubbillingschedule @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-osuborganizationsubscription/pom.xml b/bmc-osuborganizationsubscription/pom.xml index 850f603aeca..2e7aa21360a 100644 --- a/bmc-osuborganizationsubscription/pom.xml +++ b/bmc-osuborganizationsubscription/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-osuborganizationsubscription @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-osubsubscription/pom.xml b/bmc-osubsubscription/pom.xml index 40ffb365267..1c07a791a7d 100644 --- a/bmc-osubsubscription/pom.xml +++ b/bmc-osubsubscription/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-osubsubscription @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-osubusage/pom.xml b/bmc-osubusage/pom.xml index 5819db9cf74..ad93e221cb5 100644 --- a/bmc-osubusage/pom.xml +++ b/bmc-osubusage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-osubusage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ 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 51fa56f33ab..d70fdf16462 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.98.0 + 3.99.0 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.98.0 + 3.99.0 false @@ -95,14 +95,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.98.0 + 3.99.0 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 pom import diff --git a/bmc-other-examples/bmc-jersey3-examples/pom.xml b/bmc-other-examples/bmc-jersey3-examples/pom.xml index 15237ebdd2a..f2142597ed6 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.98.0 + 3.99.0 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.98.0 + 3.99.0 false @@ -95,14 +95,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.98.0 + 3.99.0 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.98.0 + 3.99.0 pom import diff --git a/bmc-other-examples/native-maven-example/pom.xml b/bmc-other-examples/native-maven-example/pom.xml index 13dbf22e255..a60a5604c1c 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.98.0 + 3.99.0 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.98.0 + 3.99.0 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.98.0 + 3.99.0 pom import diff --git a/bmc-other-examples/pom.xml b/bmc-other-examples/pom.xml index 6a82d687dd9..a8e624e0e50 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.98.0 + 3.99.0 ../pom.xml diff --git a/bmc-psa/pom.xml b/bmc-psa/pom.xml index 1f22f62ee6c..6018353c9e9 100644 --- a/bmc-psa/pom.xml +++ b/bmc-psa/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-psa @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-psql/pom.xml b/bmc-psql/pom.xml index eb98c24408e..991aa0b6e5a 100644 --- a/bmc-psql/pom.xml +++ b/bmc-psql/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-psql @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/Postgresql.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/Postgresql.java index 8fdd6c98e8a..ac76e04c176 100644 --- a/bmc-psql/src/main/java/com/oracle/bmc/psql/Postgresql.java +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/Postgresql.java @@ -734,6 +734,22 @@ RestartDbInstanceInDbSystemResponse restartDbInstanceInDbSystem( UpdateDbSystemDbInstanceResponse updateDbSystemDbInstance( UpdateDbSystemDbInstanceRequest request); + /** + * Upgrade db version of the database system. + * + * @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 UpgradeDbSystem + * API. + */ + UpgradeDbSystemResponse upgradeDbSystem(UpgradeDbSystemRequest request); + /** * Gets the pre-configured waiters available for resources for this service. * diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsync.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsync.java index a7c59205b1c..1e87a0ba1c5 100644 --- a/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsync.java +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsync.java @@ -717,4 +717,19 @@ java.util.concurrent.Future updateDbSystemDbIn com.oracle.bmc.responses.AsyncHandler< UpdateDbSystemDbInstanceRequest, UpdateDbSystemDbInstanceResponse> handler); + + /** + * Upgrade db version of the database system. + * + * @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 upgradeDbSystem( + UpgradeDbSystemRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); } diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsyncClient.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsyncClient.java index b57a480f0e3..4da6cde9db6 100644 --- a/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsyncClient.java +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlAsyncClient.java @@ -1550,6 +1550,42 @@ public java.util.concurrent.Future updateDbSys .callAsync(handler); } + @Override + public java.util.concurrent.Future upgradeDbSystem( + UpgradeDbSystemRequest request, + final com.oracle.bmc.responses.AsyncHandler< + UpgradeDbSystemRequest, UpgradeDbSystemResponse> + handler) { + + Validate.notBlank(request.getDbSystemId(), "dbSystemId must not be blank"); + Objects.requireNonNull( + request.getUpgradeDbSystemDetails(), "upgradeDbSystemDetails is required"); + + return clientCall(request, UpgradeDbSystemResponse::builder) + .logger(LOG, "upgradeDbSystem") + .serviceDetails( + "Postgresql", + "UpgradeDbSystem", + "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/UpgradeDbSystem") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(UpgradeDbSystemRequest::builder) + .basePath("/20220915") + .appendPathParam("dbSystems") + .appendPathParam(request.getDbSystemId()) + .appendPathParam("actions") + .appendPathParam("upgrade") + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .hasBody() + .handleResponseHeaderString( + "opc-work-request-id", UpgradeDbSystemResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", UpgradeDbSystemResponse.Builder::opcRequestId) + .callAsync(handler); + } + /** * Create a new client instance. * diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlClient.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlClient.java index 7fe09c5aa31..21f67df8486 100644 --- a/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlClient.java +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/PostgresqlClient.java @@ -1472,6 +1472,39 @@ public UpdateDbSystemDbInstanceResponse updateDbSystemDbInstance( .callSync(); } + @Override + public UpgradeDbSystemResponse upgradeDbSystem(UpgradeDbSystemRequest request) { + + Validate.notBlank(request.getDbSystemId(), "dbSystemId must not be blank"); + Objects.requireNonNull( + request.getUpgradeDbSystemDetails(), "upgradeDbSystemDetails is required"); + + return clientCall(request, UpgradeDbSystemResponse::builder) + .logger(LOG, "upgradeDbSystem") + .serviceDetails( + "Postgresql", + "UpgradeDbSystem", + "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/UpgradeDbSystem") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(UpgradeDbSystemRequest::builder) + .basePath("/20220915") + .appendPathParam("dbSystems") + .appendPathParam(request.getDbSystemId()) + .appendPathParam("actions") + .appendPathParam("upgrade") + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .operationUsesDefaultRetries() + .hasBody() + .handleResponseHeaderString( + "opc-work-request-id", UpgradeDbSystemResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", UpgradeDbSystemResponse.Builder::opcRequestId) + .callSync(); + } + @Override public PostgresqlWaiters getWaiters() { return waiters; diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/model/PlainTextPasswordDetails.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/model/PlainTextPasswordDetails.java index bac6b66476c..2bc038c0033 100644 --- a/bmc-psql/src/main/java/com/oracle/bmc/psql/model/PlainTextPasswordDetails.java +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/model/PlainTextPasswordDetails.java @@ -29,7 +29,7 @@ public final class PlainTextPasswordDetails extends PasswordDetails { public static class Builder { /** The database system password. */ @com.fasterxml.jackson.annotation.JsonProperty("password") - private String password; + private char[] password; /** * The database system password. @@ -37,12 +37,18 @@ public static class Builder { * @param password the value to set * @return this builder */ - public Builder password(String password) { + public Builder password(char[] password) { this.password = password; this.__explicitlySet__.add("password"); return this; } + public Builder password(String password) { + this.password = password != null ? password.toCharArray() : null; + this.__explicitlySet__.add("password"); + return this; + } + @com.fasterxml.jackson.annotation.JsonIgnore private final java.util.Set __explicitlySet__ = new java.util.HashSet(); @@ -75,19 +81,40 @@ public Builder toBuilder() { @Deprecated public PlainTextPasswordDetails(String password) { super(); + this.password = password != null ? password.toCharArray() : null; + } + + @com.fasterxml.jackson.annotation.JsonCreator + @Deprecated + public PlainTextPasswordDetails( + @com.fasterxml.jackson.annotation.JsonProperty("password") char[] password) { + super(); this.password = password; } /** The database system password. */ @com.fasterxml.jackson.annotation.JsonProperty("password") - private final String password; + private final char[] password; /** * The database system password. * * @return the value + * @deprecated Use getPassword__AsCharArray() instead. */ + @Deprecated + @com.fasterxml.jackson.annotation.JsonIgnore public String getPassword() { + return password != null ? new String(password) : null; + } + + /** + * The database system password. + * + * @return the value + */ + @com.fasterxml.jackson.annotation.JsonProperty("password") + public char[] getPassword__AsCharArray() { return password; } @@ -106,7 +133,7 @@ public String toString(boolean includeByteArrayContents) { java.lang.StringBuilder sb = new java.lang.StringBuilder(); sb.append("PlainTextPasswordDetails("); sb.append("super=").append(super.toString(includeByteArrayContents)); - sb.append(", password=").append(String.valueOf(this.password)); + sb.append(", password=").append(""); sb.append(")"); return sb.toString(); } diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/model/UpgradeDbSystemDetails.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/model/UpgradeDbSystemDetails.java new file mode 100644 index 00000000000..c574def3ead --- /dev/null +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/model/UpgradeDbSystemDetails.java @@ -0,0 +1,263 @@ +/** + * 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.psql.model; + +/** + * Upgrade details for the database system.
+ * 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: 20220915") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpgradeDbSystemDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpgradeDbSystemDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"dbVersion", "configId", "options"}) + public UpgradeDbSystemDetails( + String dbVersion, String configId, java.util.List options) { + super(); + this.dbVersion = dbVersion; + this.configId = configId; + this.options = options; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The target major version of the database system software. Example: "17" */ + @com.fasterxml.jackson.annotation.JsonProperty("dbVersion") + private String dbVersion; + + /** + * The target major version of the database system software. Example: "17" + * + * @param dbVersion the value to set + * @return this builder + */ + public Builder dbVersion(String dbVersion) { + this.dbVersion = dbVersion; + this.__explicitlySet__.add("dbVersion"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * configuration for target database version to be associated with database system. + * Optional, if database system is currently running with default configuration object. + * Mandatory, if database system is currently running with custom configuration object. + */ + @com.fasterxml.jackson.annotation.JsonProperty("configId") + private String configId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * configuration for target database version to be associated with database system. + * Optional, if database system is currently running with default configuration object. + * Mandatory, if database system is currently running with custom configuration object. + * + * @param configId the value to set + * @return this builder + */ + public Builder configId(String configId) { + this.configId = configId; + this.__explicitlySet__.add("configId"); + return this; + } + /** + * Optional post-upgrade operations to run. Verification and vacuum are skipped unless their + * corresponding options are included. If omitted or empty, both operations are skipped. + */ + @com.fasterxml.jackson.annotation.JsonProperty("options") + private java.util.List options; + + /** + * Optional post-upgrade operations to run. Verification and vacuum are skipped unless their + * corresponding options are included. If omitted or empty, both operations are skipped. + * + * @param options the value to set + * @return this builder + */ + public Builder options(java.util.List options) { + this.options = options; + this.__explicitlySet__.add("options"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpgradeDbSystemDetails build() { + UpgradeDbSystemDetails model = + new UpgradeDbSystemDetails(this.dbVersion, this.configId, this.options); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpgradeDbSystemDetails model) { + if (model.wasPropertyExplicitlySet("dbVersion")) { + this.dbVersion(model.getDbVersion()); + } + if (model.wasPropertyExplicitlySet("configId")) { + this.configId(model.getConfigId()); + } + if (model.wasPropertyExplicitlySet("options")) { + this.options(model.getOptions()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The target major version of the database system software. Example: "17" */ + @com.fasterxml.jackson.annotation.JsonProperty("dbVersion") + private final String dbVersion; + + /** + * The target major version of the database system software. Example: "17" + * + * @return the value + */ + public String getDbVersion() { + return dbVersion; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * configuration for target database version to be associated with database system. Optional, if + * database system is currently running with default configuration object. Mandatory, if + * database system is currently running with custom configuration object. + */ + @com.fasterxml.jackson.annotation.JsonProperty("configId") + private final String configId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * configuration for target database version to be associated with database system. Optional, if + * database system is currently running with default configuration object. Mandatory, if + * database system is currently running with custom configuration object. + * + * @return the value + */ + public String getConfigId() { + return configId; + } + + /** */ + public enum Options implements com.oracle.bmc.http.internal.BmcEnum { + RunPostUpgradeVerification("RUN_POST_UPGRADE_VERIFICATION"), + RunPostUpgradeVacuum("RUN_POST_UPGRADE_VACUUM"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (Options v : Options.values()) { + map.put(v.getValue(), v); + } + } + + Options(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static Options create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid Options: " + key); + } + }; + /** + * Optional post-upgrade operations to run. Verification and vacuum are skipped unless their + * corresponding options are included. If omitted or empty, both operations are skipped. + */ + @com.fasterxml.jackson.annotation.JsonProperty("options") + private final java.util.List options; + + /** + * Optional post-upgrade operations to run. Verification and vacuum are skipped unless their + * corresponding options are included. If omitted or empty, both operations are skipped. + * + * @return the value + */ + public java.util.List getOptions() { + return options; + } + + @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("UpgradeDbSystemDetails("); + sb.append("super=").append(super.toString()); + sb.append("dbVersion=").append(String.valueOf(this.dbVersion)); + sb.append(", configId=").append(String.valueOf(this.configId)); + sb.append(", options=").append(String.valueOf(this.options)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpgradeDbSystemDetails)) { + return false; + } + + UpgradeDbSystemDetails other = (UpgradeDbSystemDetails) o; + return java.util.Objects.equals(this.dbVersion, other.dbVersion) + && java.util.Objects.equals(this.configId, other.configId) + && java.util.Objects.equals(this.options, other.options) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.dbVersion == null ? 43 : this.dbVersion.hashCode()); + result = (result * PRIME) + (this.configId == null ? 43 : this.configId.hashCode()); + result = (result * PRIME) + (this.options == null ? 43 : this.options.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/requests/UpgradeDbSystemRequest.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/requests/UpgradeDbSystemRequest.java new file mode 100644 index 00000000000..5eec4dea59a --- /dev/null +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/requests/UpgradeDbSystemRequest.java @@ -0,0 +1,347 @@ +/** + * 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.psql.requests; + +import com.oracle.bmc.psql.model.*; +/** + * Example: Click here to see how to use UpgradeDbSystemRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20220915") +public class UpgradeDbSystemRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.psql.model.UpgradeDbSystemDetails> { + + /** A unique identifier for the database system. */ + private String dbSystemId; + + /** A unique identifier for the database system. */ + public String getDbSystemId() { + return dbSystemId; + } + /** Database system upgrade parameters. */ + private com.oracle.bmc.psql.model.UpgradeDbSystemDetails upgradeDbSystemDetails; + + /** Database system upgrade parameters. */ + public com.oracle.bmc.psql.model.UpgradeDbSystemDetails getUpgradeDbSystemDetails() { + return upgradeDbSystemDetails; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** The client request ID for tracing. */ + private String opcRequestId; + + /** The client request ID for tracing. */ + 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. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and purged from the system, {@code retrytoken} could be expired or + * invalidated. + */ + 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. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and purged from the system, {@code retrytoken} could be expired or + * invalidated. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.psql.model.UpgradeDbSystemDetails getBody$() { + return upgradeDbSystemDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpgradeDbSystemRequest, com.oracle.bmc.psql.model.UpgradeDbSystemDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** A unique identifier for the database system. */ + private String dbSystemId = null; + + /** + * A unique identifier for the database system. + * + * @param dbSystemId the value to set + * @return this builder instance + */ + public Builder dbSystemId(String dbSystemId) { + this.dbSystemId = dbSystemId; + return this; + } + + /** Database system upgrade parameters. */ + private com.oracle.bmc.psql.model.UpgradeDbSystemDetails upgradeDbSystemDetails = null; + + /** + * Database system upgrade parameters. + * + * @param upgradeDbSystemDetails the value to set + * @return this builder instance + */ + public Builder upgradeDbSystemDetails( + com.oracle.bmc.psql.model.UpgradeDbSystemDetails upgradeDbSystemDetails) { + this.upgradeDbSystemDetails = upgradeDbSystemDetails; + 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 will be 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 will be 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; + } + + /** The client request ID for tracing. */ + private String opcRequestId = null; + + /** + * The client request ID for tracing. + * + * @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. Retry tokens expire after + * 24 hours, but can be invalidated before then due to conflicting operations. For example, + * if a resource has been deleted and purged from the system, {@code retrytoken} could be + * expired or invalidated. + */ + 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. Retry tokens expire after + * 24 hours, but can be invalidated before then due to conflicting operations. For example, + * if a resource has been deleted and purged from the system, {@code retrytoken} could be + * expired or invalidated. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + 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(UpgradeDbSystemRequest o) { + dbSystemId(o.getDbSystemId()); + upgradeDbSystemDetails(o.getUpgradeDbSystemDetails()); + ifMatch(o.getIfMatch()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpgradeDbSystemRequest 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 UpgradeDbSystemRequest + */ + public UpgradeDbSystemRequest build() { + UpgradeDbSystemRequest 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.psql.model.UpgradeDbSystemDetails body) { + upgradeDbSystemDetails(body); + return this; + } + + /** + * Build the instance of UpgradeDbSystemRequest 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 UpgradeDbSystemRequest + */ + public UpgradeDbSystemRequest buildWithoutInvocationCallback() { + UpgradeDbSystemRequest request = new UpgradeDbSystemRequest(); + request.dbSystemId = dbSystemId; + request.upgradeDbSystemDetails = upgradeDbSystemDetails; + request.ifMatch = ifMatch; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + return request; + // new UpgradeDbSystemRequest(dbSystemId, upgradeDbSystemDetails, ifMatch, opcRequestId, + // opcRetryToken); + } + } + + /** + * 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() + .dbSystemId(dbSystemId) + .upgradeDbSystemDetails(upgradeDbSystemDetails) + .ifMatch(ifMatch) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken); + } + + /** + * 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(",dbSystemId=").append(String.valueOf(this.dbSystemId)); + sb.append(",upgradeDbSystemDetails=").append(String.valueOf(this.upgradeDbSystemDetails)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpgradeDbSystemRequest)) { + return false; + } + + UpgradeDbSystemRequest other = (UpgradeDbSystemRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.dbSystemId, other.dbSystemId) + && java.util.Objects.equals( + this.upgradeDbSystemDetails, other.upgradeDbSystemDetails) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.dbSystemId == null ? 43 : this.dbSystemId.hashCode()); + result = + (result * PRIME) + + (this.upgradeDbSystemDetails == null + ? 43 + : this.upgradeDbSystemDetails.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + return result; + } +} diff --git a/bmc-psql/src/main/java/com/oracle/bmc/psql/responses/UpgradeDbSystemResponse.java b/bmc-psql/src/main/java/com/oracle/bmc/psql/responses/UpgradeDbSystemResponse.java new file mode 100644 index 00000000000..b7bac829607 --- /dev/null +++ b/bmc-psql/src/main/java/com/oracle/bmc/psql/responses/UpgradeDbSystemResponse.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.psql.responses; + +import com.oracle.bmc.psql.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20220915") +public class UpgradeDbSystemResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * Unique Oracle-assigned identifier for the asynchronous work. You can use this to query its + * status. + */ + private String opcWorkRequestId; + + /** + * Unique Oracle-assigned identifier for the asynchronous work. You can use this to query its + * status. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** + * 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", + "opcWorkRequestId", + "opcRequestId" + }) + private UpgradeDbSystemResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + 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 asynchronous work. You can use this to query + * its status. + */ + private String opcWorkRequestId; + + /** + * Unique Oracle-assigned identifier for the asynchronous work. You can use this to query + * its status. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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(UpgradeDbSystemResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpgradeDbSystemResponse build() { + return new UpgradeDbSystemResponse( + __httpStatusCode__, headers, opcWorkRequestId, 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + 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 UpgradeDbSystemResponse)) { + return false; + } + + UpgradeDbSystemResponse other = (UpgradeDbSystemResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-psql/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-psql/reflect-config.json b/bmc-psql/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-psql/reflect-config.json index 212603efda6..64dbc48cd19 100644 --- a/bmc-psql/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-psql/reflect-config.json +++ b/bmc-psql/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-psql/reflect-config.json @@ -1667,6 +1667,26 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.psql.model.UpgradeDbSystemDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.psql.model.UpgradeDbSystemDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.psql.model.UpgradeDbSystemDetails$Options", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.psql.model.VaultSecretPasswordDetails", diff --git a/bmc-pss/pom.xml b/bmc-pss/pom.xml new file mode 100644 index 00000000000..b9183c3093b --- /dev/null +++ b/bmc-pss/pom.xml @@ -0,0 +1,21 @@ + + + 4.0.0 + + com.oracle.oci.sdk + oci-java-sdk + 3.99.0 + ../pom.xml + + oci-java-sdk-pss + Oracle Cloud Infrastructure SDK - Pss + This project contains the SDK used for Oracle Cloud Infrastructure Pss + https://docs.cloud.oracle.com/Content/API/SDKDocs/javasdk.htm + + + com.oracle.oci.sdk + oci-java-sdk-common + 3.99.0 + + + \ No newline at end of file diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/Instance.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/Instance.java new file mode 100644 index 00000000000..1b895104f43 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/Instance.java @@ -0,0 +1,255 @@ +/** + * 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.pss; + +import com.oracle.bmc.pss.requests.*; +import com.oracle.bmc.pss.responses.*; + +/** + * Use the Public Safety and Security API to manage PSS instances. 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: 20260831") +public interface Instance 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); + + /** + * Cancels a work request. + * + * @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 CancelWorkRequest + * API. + */ + CancelWorkRequestResponse cancelWorkRequest(CancelWorkRequestRequest request); + + /** + * Moves an Instance into a different compartment within the same tenancy. For information about + * moving resources between compartments, see [Moving Resources to a Different + * Compartment](https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes). + * + * @param request The request object containing the details to send + * @return A response object containing details about the completed operation + * @throws BmcException when an error occurs. 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 + * ChangeInstanceCompartment API. + */ + ChangeInstanceCompartmentResponse changeInstanceCompartment( + ChangeInstanceCompartmentRequest request); + + /** + * Creates an Instance. + * + * @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 CreateInstance API. + */ + CreateInstanceResponse createInstance(CreateInstanceRequest request); + + /** + * Deletes an Instance. + * + * @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 DeleteInstance API. + */ + DeleteInstanceResponse deleteInstance(DeleteInstanceRequest request); + + /** + * Gets information about an Instance. + * + * @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 GetInstance API. + */ + GetInstanceResponse getInstance(GetInstanceRequest request); + + /** + * Gets the details of a work request. + * + * @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 GetWorkRequest API. + */ + GetWorkRequestResponse getWorkRequest(GetWorkRequestRequest request); + + /** + * Gets a list of Instances. + * + * @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 ListInstances API. + */ + ListInstancesResponse listInstances(ListInstancesRequest request); + + /** + * Lists the errors for a work request. + * + * @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 + * ListWorkRequestErrors API. + */ + ListWorkRequestErrorsResponse listWorkRequestErrors(ListWorkRequestErrorsRequest request); + + /** + * Lists the logs for a work request. + * + * @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 ListWorkRequestLogs + * API. + */ + ListWorkRequestLogsResponse listWorkRequestLogs(ListWorkRequestLogsRequest request); + + /** + * Lists the work requests in a 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 ListWorkRequests + * API. + */ + ListWorkRequestsResponse listWorkRequests(ListWorkRequestsRequest request); + + /** + * Updates an Instance. + * + * @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 UpdateInstance API. + */ + UpdateInstanceResponse updateInstance(UpdateInstanceRequest request); + + /** + * Gets the pre-configured waiters available for resources for this service. + * + * @return The service waiters. + */ + InstanceWaiters 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. + */ + InstancePaginators getPaginators(); +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceAsync.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceAsync.java new file mode 100644 index 00000000000..d27993d0705 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceAsync.java @@ -0,0 +1,231 @@ +/** + * 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.pss; + +import com.oracle.bmc.pss.requests.*; +import com.oracle.bmc.pss.responses.*; + +/** Use the Public Safety and Security API to manage PSS instances. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public interface InstanceAsync 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); + + /** + * Cancels a work request. + * + * @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 cancelWorkRequest( + CancelWorkRequestRequest request, + com.oracle.bmc.responses.AsyncHandler< + CancelWorkRequestRequest, CancelWorkRequestResponse> + handler); + + /** + * Moves an Instance into a different compartment within the same tenancy. For information about + * moving resources between compartments, see [Moving Resources to a Different + * Compartment](https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes). + * + * @param request The request object containing the details to send + * @param handler The request handler to invoke upon completion, may be null. + * @return A Future that can be used to get the response if no AsyncHandler was provided. Note, + * if you provide an AsyncHandler and use the Future, some types of responses (like + * java.io.InputStream) may not be able to be read in both places as the underlying stream + * may only be consumed once. + */ + java.util.concurrent.Future changeInstanceCompartment( + ChangeInstanceCompartmentRequest request, + com.oracle.bmc.responses.AsyncHandler< + ChangeInstanceCompartmentRequest, ChangeInstanceCompartmentResponse> + handler); + + /** + * Creates an Instance. + * + * @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 createInstance( + CreateInstanceRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Deletes an Instance. + * + * @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 deleteInstance( + DeleteInstanceRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Gets information about an Instance. + * + * @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 getInstance( + GetInstanceRequest request, + com.oracle.bmc.responses.AsyncHandler handler); + + /** + * Gets the details of a work request. + * + * @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 getWorkRequest( + GetWorkRequestRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Gets a list of Instances. + * + * @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 listInstances( + ListInstancesRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Lists the errors for a work request. + * + * @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 listWorkRequestErrors( + ListWorkRequestErrorsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListWorkRequestErrorsRequest, ListWorkRequestErrorsResponse> + handler); + + /** + * Lists the logs for a work request. + * + * @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 listWorkRequestLogs( + ListWorkRequestLogsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListWorkRequestLogsRequest, ListWorkRequestLogsResponse> + handler); + + /** + * Lists the work requests in a 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 listWorkRequests( + ListWorkRequestsRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Updates an Instance. + * + * @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 updateInstance( + UpdateInstanceRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceAsyncClient.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceAsyncClient.java new file mode 100644 index 00000000000..ea6672fe08a --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceAsyncClient.java @@ -0,0 +1,598 @@ +/** + * 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.pss; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.pss.requests.*; +import com.oracle.bmc.pss.responses.*; + +import java.util.Objects; + +/** + * Async client implementation for Instance 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: 20260831") +public class InstanceAsyncClient extends com.oracle.bmc.http.internal.BaseAsyncClient + implements InstanceAsync { + /** Service instance for Instance. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(InstanceClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate("https://pss.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(InstanceAsyncClient.class); + + InstanceAsyncClient( + 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 = "pss"; + 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 InstanceAsyncClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new InstanceAsyncClient(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 cancelWorkRequest( + CancelWorkRequestRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CancelWorkRequestRequest, CancelWorkRequestResponse> + handler) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, CancelWorkRequestResponse::builder) + .logger(LOG, "cancelWorkRequest") + .serviceDetails("Instance", "CancelWorkRequest", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(CancelWorkRequestRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleResponseHeaderString( + "opc-request-id", CancelWorkRequestResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future changeInstanceCompartment( + ChangeInstanceCompartmentRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ChangeInstanceCompartmentRequest, ChangeInstanceCompartmentResponse> + handler) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + Objects.requireNonNull( + request.getChangeInstanceCompartmentDetails(), + "changeInstanceCompartmentDetails is required"); + + return clientCall(request, ChangeInstanceCompartmentResponse::builder) + .logger(LOG, "changeInstanceCompartment") + .serviceDetails("Instance", "ChangeInstanceCompartment", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ChangeInstanceCompartmentRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .appendPathParam("actions") + .appendPathParam("changeCompartment") + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleResponseHeaderString( + "opc-work-request-id", + ChangeInstanceCompartmentResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", ChangeInstanceCompartmentResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future createInstance( + CreateInstanceRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CreateInstanceRequest, CreateInstanceResponse> + handler) { + Objects.requireNonNull( + request.getCreateInstanceDetails(), "createInstanceDetails is required"); + + return clientCall(request, CreateInstanceResponse::builder) + .logger(LOG, "createInstance") + .serviceDetails("Instance", "CreateInstance", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.pss.model.Instance.class, + CreateInstanceResponse.Builder::instance) + .handleResponseHeaderString("location", CreateInstanceResponse.Builder::location) + .handleResponseHeaderString( + "content-location", CreateInstanceResponse.Builder::contentLocation) + .handleResponseHeaderString("etag", CreateInstanceResponse.Builder::etag) + .handleResponseHeaderString( + "opc-work-request-id", CreateInstanceResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", CreateInstanceResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future deleteInstance( + DeleteInstanceRequest request, + final com.oracle.bmc.responses.AsyncHandler< + DeleteInstanceRequest, DeleteInstanceResponse> + handler) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + + return clientCall(request, DeleteInstanceResponse::builder) + .logger(LOG, "deleteInstance") + .serviceDetails("Instance", "DeleteInstance", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleResponseHeaderString( + "opc-work-request-id", DeleteInstanceResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", DeleteInstanceResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getInstance( + GetInstanceRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + + return clientCall(request, GetInstanceResponse::builder) + .logger(LOG, "getInstance") + .serviceDetails("Instance", "GetInstance", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.pss.model.Instance.class, + GetInstanceResponse.Builder::instance) + .handleResponseHeaderString("etag", GetInstanceResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetInstanceResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getWorkRequest( + GetWorkRequestRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetWorkRequestRequest, GetWorkRequestResponse> + handler) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, GetWorkRequestResponse::builder) + .logger(LOG, "getWorkRequest") + .serviceDetails("Instance", "GetWorkRequest", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetWorkRequestRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.pss.model.WorkRequest.class, + GetWorkRequestResponse.Builder::workRequest) + .handleResponseHeaderString("etag", GetWorkRequestResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetWorkRequestResponse.Builder::opcRequestId) + .handleResponseHeaderInteger( + "retry-after", GetWorkRequestResponse.Builder::retryAfter) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listInstances( + ListInstancesRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + return clientCall(request, ListInstancesResponse::builder) + .logger(LOG, "listInstances") + .serviceDetails("Instance", "ListInstances", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListInstancesRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendQueryParam("displayName", request.getDisplayName()) + .appendQueryParam("id", request.getId()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.pss.model.InstanceCollection.class, + ListInstancesResponse.Builder::instanceCollection) + .handleResponseHeaderString( + "opc-request-id", ListInstancesResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListInstancesResponse.Builder::opcNextPage) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listWorkRequestErrors( + ListWorkRequestErrorsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListWorkRequestErrorsRequest, ListWorkRequestErrorsResponse> + handler) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, ListWorkRequestErrorsResponse::builder) + .logger(LOG, "listWorkRequestErrors") + .serviceDetails("Instance", "ListWorkRequestErrors", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListWorkRequestErrorsRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .appendPathParam("errors") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.pss.model.WorkRequestErrorCollection.class, + ListWorkRequestErrorsResponse.Builder::workRequestErrorCollection) + .handleResponseHeaderString( + "opc-next-page", ListWorkRequestErrorsResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListWorkRequestErrorsResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listWorkRequestLogs( + ListWorkRequestLogsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListWorkRequestLogsRequest, ListWorkRequestLogsResponse> + handler) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, ListWorkRequestLogsResponse::builder) + .logger(LOG, "listWorkRequestLogs") + .serviceDetails("Instance", "ListWorkRequestLogs", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListWorkRequestLogsRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .appendPathParam("logs") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.pss.model.WorkRequestLogEntryCollection.class, + ListWorkRequestLogsResponse.Builder::workRequestLogEntryCollection) + .handleResponseHeaderString( + "opc-next-page", ListWorkRequestLogsResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListWorkRequestLogsResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listWorkRequests( + ListWorkRequestsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListWorkRequestsRequest, ListWorkRequestsResponse> + handler) { + + return clientCall(request, ListWorkRequestsResponse::builder) + .logger(LOG, "listWorkRequests") + .serviceDetails("Instance", "ListWorkRequests", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListWorkRequestsRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("workRequestId", request.getWorkRequestId()) + .appendEnumQueryParam("status", request.getStatus()) + .appendQueryParam("resourceIdentifier", request.getResourceIdentifier()) + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.pss.model.WorkRequestSummaryCollection.class, + ListWorkRequestsResponse.Builder::workRequestSummaryCollection) + .handleResponseHeaderString( + "opc-request-id", ListWorkRequestsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListWorkRequestsResponse.Builder::opcNextPage) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future updateInstance( + UpdateInstanceRequest request, + final com.oracle.bmc.responses.AsyncHandler< + UpdateInstanceRequest, UpdateInstanceResponse> + handler) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + Objects.requireNonNull( + request.getUpdateInstanceDetails(), "updateInstanceDetails is required"); + + return clientCall(request, UpdateInstanceResponse::builder) + .logger(LOG, "updateInstance") + .serviceDetails("Instance", "UpdateInstance", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleResponseHeaderString( + "opc-work-request-id", UpdateInstanceResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", UpdateInstanceResponse.Builder::opcRequestId) + .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 InstanceAsyncClient( + 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 InstanceAsyncClient( + 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 InstanceAsyncClient( + 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 InstanceAsyncClient( + 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 InstanceAsyncClient( + 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 InstanceAsyncClient( + 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 InstanceAsyncClient( + 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-pss/src/main/java/com/oracle/bmc/pss/InstanceClient.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceClient.java new file mode 100644 index 00000000000..96af56d7462 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceClient.java @@ -0,0 +1,652 @@ +/** + * 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.pss; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.pss.requests.*; +import com.oracle.bmc.pss.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: 20260831") +public class InstanceClient extends com.oracle.bmc.http.internal.BaseSyncClient + implements Instance { + /** Service instance for Instance. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(InstanceClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate("https://pss.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(InstanceClient.class); + + private final InstanceWaiters waiters; + + private final InstancePaginators paginators; + + InstanceClient( + 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("Instance-waiters-%d") + .build()); + threadPoolExecutor.allowCoreThreadTimeOut(true); + + executorService = threadPoolExecutor; + } + this.waiters = new InstanceWaiters(executorService, this); + + this.paginators = new InstancePaginators(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 = "pss"; + 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 InstanceClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new InstanceClient(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 CancelWorkRequestResponse cancelWorkRequest(CancelWorkRequestRequest request) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, CancelWorkRequestResponse::builder) + .logger(LOG, "cancelWorkRequest") + .serviceDetails("Instance", "CancelWorkRequest", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(CancelWorkRequestRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-request-id", CancelWorkRequestResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ChangeInstanceCompartmentResponse changeInstanceCompartment( + ChangeInstanceCompartmentRequest request) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + Objects.requireNonNull( + request.getChangeInstanceCompartmentDetails(), + "changeInstanceCompartmentDetails is required"); + + return clientCall(request, ChangeInstanceCompartmentResponse::builder) + .logger(LOG, "changeInstanceCompartment") + .serviceDetails("Instance", "ChangeInstanceCompartment", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ChangeInstanceCompartmentRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .appendPathParam("actions") + .appendPathParam("changeCompartment") + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .hasBody() + .handleResponseHeaderString( + "opc-work-request-id", + ChangeInstanceCompartmentResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", ChangeInstanceCompartmentResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public CreateInstanceResponse createInstance(CreateInstanceRequest request) { + Objects.requireNonNull( + request.getCreateInstanceDetails(), "createInstanceDetails is required"); + + return clientCall(request, CreateInstanceResponse::builder) + .logger(LOG, "createInstance") + .serviceDetails("Instance", "CreateInstance", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.pss.model.Instance.class, + CreateInstanceResponse.Builder::instance) + .handleResponseHeaderString("location", CreateInstanceResponse.Builder::location) + .handleResponseHeaderString( + "content-location", CreateInstanceResponse.Builder::contentLocation) + .handleResponseHeaderString("etag", CreateInstanceResponse.Builder::etag) + .handleResponseHeaderString( + "opc-work-request-id", CreateInstanceResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", CreateInstanceResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public DeleteInstanceResponse deleteInstance(DeleteInstanceRequest request) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + + return clientCall(request, DeleteInstanceResponse::builder) + .logger(LOG, "deleteInstance") + .serviceDetails("Instance", "DeleteInstance", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-work-request-id", DeleteInstanceResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", DeleteInstanceResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetInstanceResponse getInstance(GetInstanceRequest request) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + + return clientCall(request, GetInstanceResponse::builder) + .logger(LOG, "getInstance") + .serviceDetails("Instance", "GetInstance", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.pss.model.Instance.class, + GetInstanceResponse.Builder::instance) + .handleResponseHeaderString("etag", GetInstanceResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetInstanceResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetWorkRequestResponse getWorkRequest(GetWorkRequestRequest request) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, GetWorkRequestResponse::builder) + .logger(LOG, "getWorkRequest") + .serviceDetails("Instance", "GetWorkRequest", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetWorkRequestRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.pss.model.WorkRequest.class, + GetWorkRequestResponse.Builder::workRequest) + .handleResponseHeaderString("etag", GetWorkRequestResponse.Builder::etag) + .handleResponseHeaderString( + "opc-request-id", GetWorkRequestResponse.Builder::opcRequestId) + .handleResponseHeaderInteger( + "retry-after", GetWorkRequestResponse.Builder::retryAfter) + .callSync(); + } + + @Override + public ListInstancesResponse listInstances(ListInstancesRequest request) { + + return clientCall(request, ListInstancesResponse::builder) + .logger(LOG, "listInstances") + .serviceDetails("Instance", "ListInstances", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListInstancesRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendEnumQueryParam("lifecycleState", request.getLifecycleState()) + .appendQueryParam("displayName", request.getDisplayName()) + .appendQueryParam("id", request.getId()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("page", request.getPage()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.pss.model.InstanceCollection.class, + ListInstancesResponse.Builder::instanceCollection) + .handleResponseHeaderString( + "opc-request-id", ListInstancesResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListInstancesResponse.Builder::opcNextPage) + .callSync(); + } + + @Override + public ListWorkRequestErrorsResponse listWorkRequestErrors( + ListWorkRequestErrorsRequest request) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, ListWorkRequestErrorsResponse::builder) + .logger(LOG, "listWorkRequestErrors") + .serviceDetails("Instance", "ListWorkRequestErrors", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListWorkRequestErrorsRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .appendPathParam("errors") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.pss.model.WorkRequestErrorCollection.class, + ListWorkRequestErrorsResponse.Builder::workRequestErrorCollection) + .handleResponseHeaderString( + "opc-next-page", ListWorkRequestErrorsResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListWorkRequestErrorsResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ListWorkRequestLogsResponse listWorkRequestLogs(ListWorkRequestLogsRequest request) { + + Validate.notBlank(request.getWorkRequestId(), "workRequestId must not be blank"); + + return clientCall(request, ListWorkRequestLogsResponse::builder) + .logger(LOG, "listWorkRequestLogs") + .serviceDetails("Instance", "ListWorkRequestLogs", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListWorkRequestLogsRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendPathParam(request.getWorkRequestId()) + .appendPathParam("logs") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.pss.model.WorkRequestLogEntryCollection.class, + ListWorkRequestLogsResponse.Builder::workRequestLogEntryCollection) + .handleResponseHeaderString( + "opc-next-page", ListWorkRequestLogsResponse.Builder::opcNextPage) + .handleResponseHeaderString( + "opc-request-id", ListWorkRequestLogsResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public ListWorkRequestsResponse listWorkRequests(ListWorkRequestsRequest request) { + + return clientCall(request, ListWorkRequestsResponse::builder) + .logger(LOG, "listWorkRequests") + .serviceDetails("Instance", "ListWorkRequests", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListWorkRequestsRequest::builder) + .basePath("/20260831") + .appendPathParam("workRequests") + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("workRequestId", request.getWorkRequestId()) + .appendEnumQueryParam("status", request.getStatus()) + .appendQueryParam("resourceIdentifier", request.getResourceIdentifier()) + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendEnumQueryParam("sortOrder", request.getSortOrder()) + .appendEnumQueryParam("sortBy", request.getSortBy()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.pss.model.WorkRequestSummaryCollection.class, + ListWorkRequestsResponse.Builder::workRequestSummaryCollection) + .handleResponseHeaderString( + "opc-request-id", ListWorkRequestsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListWorkRequestsResponse.Builder::opcNextPage) + .callSync(); + } + + @Override + public UpdateInstanceResponse updateInstance(UpdateInstanceRequest request) { + + Validate.notBlank(request.getInstanceId(), "instanceId must not be blank"); + Objects.requireNonNull( + request.getUpdateInstanceDetails(), "updateInstanceDetails is required"); + + return clientCall(request, UpdateInstanceResponse::builder) + .logger(LOG, "updateInstance") + .serviceDetails("Instance", "UpdateInstance", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateInstanceRequest::builder) + .basePath("/20260831") + .appendPathParam("instances") + .appendPathParam(request.getInstanceId()) + .accept("application/json") + .appendHeader("if-match", request.getIfMatch()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .hasBody() + .handleResponseHeaderString( + "opc-work-request-id", UpdateInstanceResponse.Builder::opcWorkRequestId) + .handleResponseHeaderString( + "opc-request-id", UpdateInstanceResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public InstanceWaiters getWaiters() { + return waiters; + } + + @Override + public InstancePaginators 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 InstanceClient( + 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 InstanceClient( + 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 InstanceClient( + 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 InstanceClient( + 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 InstanceClient( + 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 InstanceClient( + 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 InstanceClient( + 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 InstanceClient( + 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-pss/src/main/java/com/oracle/bmc/pss/InstancePaginators.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstancePaginators.java new file mode 100644 index 00000000000..5798e3cdd8e --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstancePaginators.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.pss; + +import com.oracle.bmc.pss.requests.*; +import com.oracle.bmc.pss.responses.*; + +/** + * Collection of helper methods that can be used to provide an {@link java.lang.Iterable} interface + * to any list operations of Instance 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: 20260831") +public class InstancePaginators { + private final Instance client; + + public InstancePaginators(Instance client) { + this.client = client; + } + + /** + * Creates a new iterable which will iterate over the responses received from the listInstances + * 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 listInstancesResponseIterator( + final ListInstancesRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListInstancesRequest.Builder, ListInstancesRequest, ListInstancesResponse>( + new java.util.function.Supplier() { + @Override + public ListInstancesRequest.Builder get() { + return ListInstancesRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListInstancesResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInstancesRequest.Builder>, + ListInstancesRequest>() { + @Override + public ListInstancesRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInstancesRequest.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 ListInstancesResponse apply(ListInstancesRequest request) { + return client.listInstances(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.pss.model.InstanceSummary} objects contained in responses from the + * listInstances 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.pss.model.InstanceSummary} objects contained in responses received from + * the service. + */ + public Iterable listInstancesRecordIterator( + final ListInstancesRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListInstancesRequest.Builder, + ListInstancesRequest, + ListInstancesResponse, + com.oracle.bmc.pss.model.InstanceSummary>( + new java.util.function.Supplier() { + @Override + public ListInstancesRequest.Builder get() { + return ListInstancesRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListInstancesResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInstancesRequest.Builder>, + ListInstancesRequest>() { + @Override + public ListInstancesRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInstancesRequest.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 ListInstancesResponse apply(ListInstancesRequest request) { + return client.listInstances(request); + } + }, + new java.util.function.Function< + ListInstancesResponse, + java.util.List>() { + @Override + public java.util.List apply( + ListInstancesResponse response) { + return response.getInstanceCollection().getItems(); + } + }); + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listWorkRequestErrors 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 listWorkRequestErrorsResponseIterator( + final ListWorkRequestErrorsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListWorkRequestErrorsRequest.Builder, + ListWorkRequestErrorsRequest, + ListWorkRequestErrorsResponse>( + new java.util.function.Supplier() { + @Override + public ListWorkRequestErrorsRequest.Builder get() { + return ListWorkRequestErrorsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListWorkRequestErrorsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestErrorsRequest.Builder>, + ListWorkRequestErrorsRequest>() { + @Override + public ListWorkRequestErrorsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestErrorsRequest.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< + ListWorkRequestErrorsRequest, ListWorkRequestErrorsResponse>() { + @Override + public ListWorkRequestErrorsResponse apply( + ListWorkRequestErrorsRequest request) { + return client.listWorkRequestErrors(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.pss.model.WorkRequestError} objects contained in responses from the + * listWorkRequestErrors 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.pss.model.WorkRequestError} objects contained in responses received from + * the service. + */ + public Iterable listWorkRequestErrorsRecordIterator( + final ListWorkRequestErrorsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListWorkRequestErrorsRequest.Builder, + ListWorkRequestErrorsRequest, + ListWorkRequestErrorsResponse, + com.oracle.bmc.pss.model.WorkRequestError>( + new java.util.function.Supplier() { + @Override + public ListWorkRequestErrorsRequest.Builder get() { + return ListWorkRequestErrorsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListWorkRequestErrorsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestErrorsRequest.Builder>, + ListWorkRequestErrorsRequest>() { + @Override + public ListWorkRequestErrorsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestErrorsRequest.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< + ListWorkRequestErrorsRequest, ListWorkRequestErrorsResponse>() { + @Override + public ListWorkRequestErrorsResponse apply( + ListWorkRequestErrorsRequest request) { + return client.listWorkRequestErrors(request); + } + }, + new java.util.function.Function< + ListWorkRequestErrorsResponse, + java.util.List>() { + @Override + public java.util.List apply( + ListWorkRequestErrorsResponse response) { + return response.getWorkRequestErrorCollection().getItems(); + } + }); + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listWorkRequestLogs 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 listWorkRequestLogsResponseIterator( + final ListWorkRequestLogsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListWorkRequestLogsRequest.Builder, + ListWorkRequestLogsRequest, + ListWorkRequestLogsResponse>( + new java.util.function.Supplier() { + @Override + public ListWorkRequestLogsRequest.Builder get() { + return ListWorkRequestLogsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListWorkRequestLogsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestLogsRequest.Builder>, + ListWorkRequestLogsRequest>() { + @Override + public ListWorkRequestLogsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestLogsRequest.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< + ListWorkRequestLogsRequest, ListWorkRequestLogsResponse>() { + @Override + public ListWorkRequestLogsResponse apply(ListWorkRequestLogsRequest request) { + return client.listWorkRequestLogs(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.pss.model.WorkRequestLogEntry} objects contained in responses from the + * listWorkRequestLogs 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.pss.model.WorkRequestLogEntry} objects contained in responses received + * from the service. + */ + public Iterable listWorkRequestLogsRecordIterator( + final ListWorkRequestLogsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListWorkRequestLogsRequest.Builder, + ListWorkRequestLogsRequest, + ListWorkRequestLogsResponse, + com.oracle.bmc.pss.model.WorkRequestLogEntry>( + new java.util.function.Supplier() { + @Override + public ListWorkRequestLogsRequest.Builder get() { + return ListWorkRequestLogsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListWorkRequestLogsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestLogsRequest.Builder>, + ListWorkRequestLogsRequest>() { + @Override + public ListWorkRequestLogsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestLogsRequest.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< + ListWorkRequestLogsRequest, ListWorkRequestLogsResponse>() { + @Override + public ListWorkRequestLogsResponse apply(ListWorkRequestLogsRequest request) { + return client.listWorkRequestLogs(request); + } + }, + new java.util.function.Function< + ListWorkRequestLogsResponse, + java.util.List>() { + @Override + public java.util.List apply( + ListWorkRequestLogsResponse response) { + return response.getWorkRequestLogEntryCollection().getItems(); + } + }); + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listWorkRequests 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 listWorkRequestsResponseIterator( + final ListWorkRequestsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListWorkRequestsRequest.Builder, ListWorkRequestsRequest, ListWorkRequestsResponse>( + new java.util.function.Supplier() { + @Override + public ListWorkRequestsRequest.Builder get() { + return ListWorkRequestsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListWorkRequestsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestsRequest.Builder>, + ListWorkRequestsRequest>() { + @Override + public ListWorkRequestsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestsRequest.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< + ListWorkRequestsRequest, ListWorkRequestsResponse>() { + @Override + public ListWorkRequestsResponse apply(ListWorkRequestsRequest request) { + return client.listWorkRequests(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.pss.model.WorkRequestSummary} objects contained in responses from the + * listWorkRequests 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.pss.model.WorkRequestSummary} objects contained in responses received from + * the service. + */ + public Iterable listWorkRequestsRecordIterator( + final ListWorkRequestsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListWorkRequestsRequest.Builder, + ListWorkRequestsRequest, + ListWorkRequestsResponse, + com.oracle.bmc.pss.model.WorkRequestSummary>( + new java.util.function.Supplier() { + @Override + public ListWorkRequestsRequest.Builder get() { + return ListWorkRequestsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListWorkRequestsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestsRequest.Builder>, + ListWorkRequestsRequest>() { + @Override + public ListWorkRequestsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListWorkRequestsRequest.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< + ListWorkRequestsRequest, ListWorkRequestsResponse>() { + @Override + public ListWorkRequestsResponse apply(ListWorkRequestsRequest request) { + return client.listWorkRequests(request); + } + }, + new java.util.function.Function< + ListWorkRequestsResponse, + java.util.List>() { + @Override + public java.util.List apply( + ListWorkRequestsResponse response) { + return response.getWorkRequestSummaryCollection().getItems(); + } + }); + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceWaiters.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceWaiters.java new file mode 100644 index 00000000000..85c09ea03d9 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/InstanceWaiters.java @@ -0,0 +1,181 @@ +/** + * 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.pss; + +import com.oracle.bmc.pss.requests.*; +import com.oracle.bmc.pss.responses.*; + +/** + * Collection of helper methods to produce {@link com.oracle.bmc.waiter.Waiter}s for different + * resources of Instance. + * + *

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: 20260831") +public class InstanceWaiters { + private final java.util.concurrent.ExecutorService executorService; + private final Instance client; + + public InstanceWaiters(java.util.concurrent.ExecutorService executorService, Instance 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 forInstance( + GetInstanceRequest request, + com.oracle.bmc.pss.model.Instance.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 forInstance( + 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 forInstance( + GetInstanceRequest request, + com.oracle.bmc.pss.model.Instance.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 forInstance( + 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 forInstance( + GetInstanceRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.pss.model.Instance.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 forInstance( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for Instance. + private com.oracle.bmc.waiter.Waiter forInstance( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetInstanceRequest request, + final com.oracle.bmc.pss.model.Instance.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 GetInstanceResponse apply(GetInstanceRequest request) { + return client.getInstance(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetInstanceResponse response) { + return targetStatesSet.contains( + response.getInstance().getLifecycleState()); + } + }, + targetStatesSet.contains( + com.oracle.bmc.pss.model.Instance.LifecycleState.Deleted)), + request); + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using default configuration. + * + * @param request the request to send + * @return a new {@code Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter + forWorkRequest(GetWorkRequestRequest request) { + return forWorkRequest(com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_WAITER, request); + } + + /** + * 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 {@linkcom.oracle.bmc.waiter. DelayStrategy} to use + * @return a new {@code com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter + forWorkRequest( + GetWorkRequestRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy) { + return forWorkRequest( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request); + } + + // Helper method to create a new Waiter for WorkRequest. + private com.oracle.bmc.waiter.Waiter + forWorkRequest( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetWorkRequestRequest request) { + return new com.oracle.bmc.waiter.internal.SimpleWaiterImpl<>( + executorService, + waiter.toCallable( + () -> request, + new java.util.function.Function< + GetWorkRequestRequest, GetWorkRequestResponse>() { + @Override + public GetWorkRequestResponse apply(GetWorkRequestRequest request) { + return client.getWorkRequest(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetWorkRequestResponse response) { + // work requests are complete once the time finished is available + return response.getWorkRequest().getTimeFinished() != null; + } + }, + false), + request); + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/ActionType.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/ActionType.java new file mode 100644 index 00000000000..c0f6cf48508 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/ActionType.java @@ -0,0 +1,56 @@ +/** + * 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.pss.model; + +/** Possible types of actions. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public enum ActionType implements com.oracle.bmc.http.internal.BmcEnum { + Created("CREATED"), + Updated("UPDATED"), + Deleted("DELETED"), + InProgress("IN_PROGRESS"), + Related("RELATED"), + Failed("FAILED"), + + /** + * 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(ActionType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (ActionType v : ActionType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + ActionType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static ActionType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'ActionType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/ChangeInstanceCompartmentDetails.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/ChangeInstanceCompartmentDetails.java new file mode 100644 index 00000000000..ad411da801e --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/ChangeInstanceCompartmentDetails.java @@ -0,0 +1,145 @@ +/** + * 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.pss.model; + +/** + * The configuration details for the move operation.
+ * Note: Objects should always be created or deserialized using the {@link Builder}. This model + * distinguishes fields that are {@code null} because they are unset from fields that are explicitly + * set to {@code null}. This is done in the setter methods of the {@link Builder}, which maintain a + * set of all explicitly set fields called {@link 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ChangeInstanceCompartmentDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ChangeInstanceCompartmentDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"compartmentId"}) + public ChangeInstanceCompartmentDetails(String compartmentId) { + super(); + this.compartmentId = compartmentId; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to move the Instance to. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to move the Instance to. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ChangeInstanceCompartmentDetails build() { + ChangeInstanceCompartmentDetails model = + new ChangeInstanceCompartmentDetails(this.compartmentId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ChangeInstanceCompartmentDetails model) { + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to move the Instance to. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to move the Instance to. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + @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("ChangeInstanceCompartmentDetails("); + sb.append("super=").append(super.toString()); + 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 ChangeInstanceCompartmentDetails)) { + return false; + } + + ChangeInstanceCompartmentDetails other = (ChangeInstanceCompartmentDetails) o; + return java.util.Objects.equals(this.compartmentId, other.compartmentId) + && 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) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/CreateInstanceDetails.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/CreateInstanceDetails.java new file mode 100644 index 00000000000..a2efc137e06 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/CreateInstanceDetails.java @@ -0,0 +1,416 @@ +/** + * 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.pss.model; + +/** + * The data to create an Instance.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateInstanceDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateInstanceDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "displayName", + "identityDomainUrl", + "adminIdentityDomainUserId", + "compartmentId", + "freeformTags", + "definedTags" + }) + public CreateInstanceDetails( + String displayName, + String identityDomainUrl, + String adminIdentityDomainUserId, + String compartmentId, + java.util.Map freeformTags, + java.util.Map> definedTags) { + super(); + this.displayName = displayName; + this.identityDomainUrl = identityDomainUrl; + this.adminIdentityDomainUserId = adminIdentityDomainUserId; + this.compartmentId = compartmentId; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainUrl") + private String identityDomainUrl; + + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + * + * @param identityDomainUrl the value to set + * @return this builder + */ + public Builder identityDomainUrl(String identityDomainUrl) { + this.identityDomainUrl = identityDomainUrl; + this.__explicitlySet__.add("identityDomainUrl"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminIdentityDomainUserId") + private String adminIdentityDomainUserId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + * + * @param adminIdentityDomainUserId the value to set + * @return this builder + */ + public Builder adminIdentityDomainUserId(String adminIdentityDomainUserId) { + this.adminIdentityDomainUserId = adminIdentityDomainUserId; + this.__explicitlySet__.add("adminIdentityDomainUserId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to create the Instance in. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to create the Instance in. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + 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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateInstanceDetails build() { + CreateInstanceDetails model = + new CreateInstanceDetails( + this.displayName, + this.identityDomainUrl, + this.adminIdentityDomainUserId, + this.compartmentId, + this.freeformTags, + this.definedTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateInstanceDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("identityDomainUrl")) { + this.identityDomainUrl(model.getIdentityDomainUrl()); + } + if (model.wasPropertyExplicitlySet("adminIdentityDomainUserId")) { + this.adminIdentityDomainUserId(model.getAdminIdentityDomainUserId()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainUrl") + private final String identityDomainUrl; + + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + * + * @return the value + */ + public String getIdentityDomainUrl() { + return identityDomainUrl; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminIdentityDomainUserId") + private final String adminIdentityDomainUserId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + * + * @return the value + */ + public String getAdminIdentityDomainUserId() { + return adminIdentityDomainUserId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to create the Instance in. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment to create the Instance in. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** + * 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; + } + + @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("CreateInstanceDetails("); + sb.append("super=").append(super.toString()); + sb.append("displayName=").append(String.valueOf(this.displayName)); + sb.append(", identityDomainUrl=").append(String.valueOf(this.identityDomainUrl)); + sb.append(", adminIdentityDomainUserId=") + .append(String.valueOf(this.adminIdentityDomainUserId)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateInstanceDetails)) { + return false; + } + + CreateInstanceDetails other = (CreateInstanceDetails) o; + return java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.identityDomainUrl, other.identityDomainUrl) + && java.util.Objects.equals( + this.adminIdentityDomainUserId, other.adminIdentityDomainUserId) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = + (result * PRIME) + + (this.identityDomainUrl == null ? 43 : this.identityDomainUrl.hashCode()); + result = + (result * PRIME) + + (this.adminIdentityDomainUserId == null + ? 43 + : this.adminIdentityDomainUserId.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/Instance.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/Instance.java new file mode 100644 index 00000000000..643b4107123 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/Instance.java @@ -0,0 +1,1002 @@ +/** + * 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.pss.model; + +/** + * A Public Safety and Security instance. + * + *

To use any of the API operations, you must be authorized in an IAM policy. If you're not + * authorized, talk to an administrator. If you're an administrator who needs to write policies to + * give users access, see [Getting Started with + * Policies](https://docs.oracle.com/iaas/Content/Identity/policiesgs/get-started-with-policies.htm). + *
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Instance.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class Instance extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "displayName", + "compartmentId", + "identityDomainUrl", + "identityDomainWebAuthClientId", + "identityDomainWebAuthClientSecretVaultId", + "adminIdentityDomainUserId", + "publicIp", + "serviceEndpoint", + "uiEndpoint", + "timeCreated", + "timeUpdated", + "lifecycleState", + "lifecycleDetails", + "freeformTags", + "definedTags", + "systemTags" + }) + public Instance( + String id, + String displayName, + String compartmentId, + String identityDomainUrl, + String identityDomainWebAuthClientId, + String identityDomainWebAuthClientSecretVaultId, + String adminIdentityDomainUserId, + String publicIp, + String serviceEndpoint, + String uiEndpoint, + java.util.Date timeCreated, + java.util.Date timeUpdated, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags) { + super(); + this.id = id; + this.displayName = displayName; + this.compartmentId = compartmentId; + this.identityDomainUrl = identityDomainUrl; + this.identityDomainWebAuthClientId = identityDomainWebAuthClientId; + this.identityDomainWebAuthClientSecretVaultId = identityDomainWebAuthClientSecretVaultId; + this.adminIdentityDomainUserId = adminIdentityDomainUserId; + this.publicIp = publicIp; + this.serviceEndpoint = serviceEndpoint; + this.uiEndpoint = uiEndpoint; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + 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; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainUrl") + private String identityDomainUrl; + + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + * + * @param identityDomainUrl the value to set + * @return this builder + */ + public Builder identityDomainUrl(String identityDomainUrl) { + this.identityDomainUrl = identityDomainUrl; + this.__explicitlySet__.add("identityDomainUrl"); + return this; + } + /** + * The client ID of the identity-domain confidential application used for browser + * authentication. + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainWebAuthClientId") + private String identityDomainWebAuthClientId; + + /** + * The client ID of the identity-domain confidential application used for browser + * authentication. + * + * @param identityDomainWebAuthClientId the value to set + * @return this builder + */ + public Builder identityDomainWebAuthClientId(String identityDomainWebAuthClientId) { + this.identityDomainWebAuthClientId = identityDomainWebAuthClientId; + this.__explicitlySet__.add("identityDomainWebAuthClientId"); + return this; + } + /** + * The OCID of the Vault secret containing the identity-domain confidential application's + * client secret. + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainWebAuthClientSecretVaultId") + private String identityDomainWebAuthClientSecretVaultId; + + /** + * The OCID of the Vault secret containing the identity-domain confidential application's + * client secret. + * + * @param identityDomainWebAuthClientSecretVaultId the value to set + * @return this builder + */ + public Builder identityDomainWebAuthClientSecretVaultId( + String identityDomainWebAuthClientSecretVaultId) { + this.identityDomainWebAuthClientSecretVaultId = + identityDomainWebAuthClientSecretVaultId; + this.__explicitlySet__.add("identityDomainWebAuthClientSecretVaultId"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminIdentityDomainUserId") + private String adminIdentityDomainUserId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + * + * @param adminIdentityDomainUserId the value to set + * @return this builder + */ + public Builder adminIdentityDomainUserId(String adminIdentityDomainUserId) { + this.adminIdentityDomainUserId = adminIdentityDomainUserId; + this.__explicitlySet__.add("adminIdentityDomainUserId"); + return this; + } + /** The public IP address for the instance's API gateway. */ + @com.fasterxml.jackson.annotation.JsonProperty("publicIp") + private String publicIp; + + /** + * The public IP address for the instance's API gateway. + * + * @param publicIp the value to set + * @return this builder + */ + public Builder publicIp(String publicIp) { + this.publicIp = publicIp; + this.__explicitlySet__.add("publicIp"); + return this; + } + /** + * The HTTPS endpoint for the instance's PSS API. + * + *

Example: {@code https://example.pss.oraclecloud.com/api/} + */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceEndpoint") + private String serviceEndpoint; + + /** + * The HTTPS endpoint for the instance's PSS API. + * + *

Example: {@code https://example.pss.oraclecloud.com/api/} + * + * @param serviceEndpoint the value to set + * @return this builder + */ + public Builder serviceEndpoint(String serviceEndpoint) { + this.serviceEndpoint = serviceEndpoint; + this.__explicitlySet__.add("serviceEndpoint"); + return this; + } + /** + * The HTTPS endpoint for the instance's PSS user interface. + * + *

Example: {@code https://example.pss.oraclecloud.com/ui/} + */ + @com.fasterxml.jackson.annotation.JsonProperty("uiEndpoint") + private String uiEndpoint; + + /** + * The HTTPS endpoint for the instance's PSS user interface. + * + *

Example: {@code https://example.pss.oraclecloud.com/ui/} + * + * @param uiEndpoint the value to set + * @return this builder + */ + public Builder uiEndpoint(String uiEndpoint) { + this.uiEndpoint = uiEndpoint; + this.__explicitlySet__.add("uiEndpoint"); + return this; + } + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-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; + } + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-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; + } + /** The current state of the Instance. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The current state of the Instance. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * A message that describes the current state of the Instance in more detail. For example, + * can be used to provide actionable information for a resource in the Failed state. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * A message that describes the current state of the Instance in more detail. For example, + * can be used to provide actionable information for a resource in the Failed state. + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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": {"example-key": "example-value"}}} + */ + @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": {"example-key": "example-value"}}} + * + * @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 Instance build() { + Instance model = + new Instance( + this.id, + this.displayName, + this.compartmentId, + this.identityDomainUrl, + this.identityDomainWebAuthClientId, + this.identityDomainWebAuthClientSecretVaultId, + this.adminIdentityDomainUserId, + this.publicIp, + this.serviceEndpoint, + this.uiEndpoint, + this.timeCreated, + this.timeUpdated, + this.lifecycleState, + this.lifecycleDetails, + this.freeformTags, + this.definedTags, + this.systemTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(Instance model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("identityDomainUrl")) { + this.identityDomainUrl(model.getIdentityDomainUrl()); + } + if (model.wasPropertyExplicitlySet("identityDomainWebAuthClientId")) { + this.identityDomainWebAuthClientId(model.getIdentityDomainWebAuthClientId()); + } + if (model.wasPropertyExplicitlySet("identityDomainWebAuthClientSecretVaultId")) { + this.identityDomainWebAuthClientSecretVaultId( + model.getIdentityDomainWebAuthClientSecretVaultId()); + } + if (model.wasPropertyExplicitlySet("adminIdentityDomainUserId")) { + this.adminIdentityDomainUserId(model.getAdminIdentityDomainUserId()); + } + if (model.wasPropertyExplicitlySet("publicIp")) { + this.publicIp(model.getPublicIp()); + } + if (model.wasPropertyExplicitlySet("serviceEndpoint")) { + this.serviceEndpoint(model.getServiceEndpoint()); + } + if (model.wasPropertyExplicitlySet("uiEndpoint")) { + this.uiEndpoint(model.getUiEndpoint()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + 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); + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @return the value + */ + public String getId() { + return id; + } + + /** A user-friendly name. Does not have to be unique, and it's changeable. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainUrl") + private final String identityDomainUrl; + + /** + * The URL of the identity domain associated with the instance. + * + *

Example: {@code https://idcs-1234567890.identity.oraclecloud.com} + * + * @return the value + */ + public String getIdentityDomainUrl() { + return identityDomainUrl; + } + + /** + * The client ID of the identity-domain confidential application used for browser + * authentication. + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainWebAuthClientId") + private final String identityDomainWebAuthClientId; + + /** + * The client ID of the identity-domain confidential application used for browser + * authentication. + * + * @return the value + */ + public String getIdentityDomainWebAuthClientId() { + return identityDomainWebAuthClientId; + } + + /** + * The OCID of the Vault secret containing the identity-domain confidential application's client + * secret. + */ + @com.fasterxml.jackson.annotation.JsonProperty("identityDomainWebAuthClientSecretVaultId") + private final String identityDomainWebAuthClientSecretVaultId; + + /** + * The OCID of the Vault secret containing the identity-domain confidential application's client + * secret. + * + * @return the value + */ + public String getIdentityDomainWebAuthClientSecretVaultId() { + return identityDomainWebAuthClientSecretVaultId; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("adminIdentityDomainUserId") + private final String adminIdentityDomainUserId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * identity-domain user that initially administers the PSS instance. + * + * @return the value + */ + public String getAdminIdentityDomainUserId() { + return adminIdentityDomainUserId; + } + + /** The public IP address for the instance's API gateway. */ + @com.fasterxml.jackson.annotation.JsonProperty("publicIp") + private final String publicIp; + + /** + * The public IP address for the instance's API gateway. + * + * @return the value + */ + public String getPublicIp() { + return publicIp; + } + + /** + * The HTTPS endpoint for the instance's PSS API. + * + *

Example: {@code https://example.pss.oraclecloud.com/api/} + */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceEndpoint") + private final String serviceEndpoint; + + /** + * The HTTPS endpoint for the instance's PSS API. + * + *

Example: {@code https://example.pss.oraclecloud.com/api/} + * + * @return the value + */ + public String getServiceEndpoint() { + return serviceEndpoint; + } + + /** + * The HTTPS endpoint for the instance's PSS user interface. + * + *

Example: {@code https://example.pss.oraclecloud.com/ui/} + */ + @com.fasterxml.jackson.annotation.JsonProperty("uiEndpoint") + private final String uiEndpoint; + + /** + * The HTTPS endpoint for the instance's PSS user interface. + * + *

Example: {@code https://example.pss.oraclecloud.com/ui/} + * + * @return the value + */ + public String getUiEndpoint() { + return uiEndpoint; + } + + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The current state of the Instance. */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Creating("CREATING"), + Updating("UPDATING"), + Active("ACTIVE"), + Deleting("DELETING"), + Deleted("DELETED"), + Failed("FAILED"), + + /** + * 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 current state of the Instance. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The current state of the Instance. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * A message that describes the current state of the Instance in more detail. For example, can + * be used to provide actionable information for a resource in the Failed state. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * A message that describes the current state of the Instance in more detail. For example, can + * be used to provide actionable information for a resource in the Failed state. + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** + * 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": {"example-key": "example-value"}}} + */ + @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": {"example-key": "example-value"}}} + * + * @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("Instance("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", identityDomainUrl=").append(String.valueOf(this.identityDomainUrl)); + sb.append(", identityDomainWebAuthClientId=") + .append(String.valueOf(this.identityDomainWebAuthClientId)); + sb.append(", identityDomainWebAuthClientSecretVaultId=") + .append(String.valueOf(this.identityDomainWebAuthClientSecretVaultId)); + sb.append(", adminIdentityDomainUserId=") + .append(String.valueOf(this.adminIdentityDomainUserId)); + sb.append(", publicIp=").append(String.valueOf(this.publicIp)); + sb.append(", serviceEndpoint=").append(String.valueOf(this.serviceEndpoint)); + sb.append(", uiEndpoint=").append(String.valueOf(this.uiEndpoint)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + 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 Instance)) { + return false; + } + + Instance other = (Instance) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.identityDomainUrl, other.identityDomainUrl) + && java.util.Objects.equals( + this.identityDomainWebAuthClientId, other.identityDomainWebAuthClientId) + && java.util.Objects.equals( + this.identityDomainWebAuthClientSecretVaultId, + other.identityDomainWebAuthClientSecretVaultId) + && java.util.Objects.equals( + this.adminIdentityDomainUserId, other.adminIdentityDomainUserId) + && java.util.Objects.equals(this.publicIp, other.publicIp) + && java.util.Objects.equals(this.serviceEndpoint, other.serviceEndpoint) + && java.util.Objects.equals(this.uiEndpoint, other.uiEndpoint) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && 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.displayName == null ? 43 : this.displayName.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = + (result * PRIME) + + (this.identityDomainUrl == null ? 43 : this.identityDomainUrl.hashCode()); + result = + (result * PRIME) + + (this.identityDomainWebAuthClientId == null + ? 43 + : this.identityDomainWebAuthClientId.hashCode()); + result = + (result * PRIME) + + (this.identityDomainWebAuthClientSecretVaultId == null + ? 43 + : this.identityDomainWebAuthClientSecretVaultId.hashCode()); + result = + (result * PRIME) + + (this.adminIdentityDomainUserId == null + ? 43 + : this.adminIdentityDomainUserId.hashCode()); + result = (result * PRIME) + (this.publicIp == null ? 43 : this.publicIp.hashCode()); + result = + (result * PRIME) + + (this.serviceEndpoint == null ? 43 : this.serviceEndpoint.hashCode()); + result = (result * PRIME) + (this.uiEndpoint == null ? 43 : this.uiEndpoint.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.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.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-pss/src/main/java/com/oracle/bmc/pss/model/InstanceCollection.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/InstanceCollection.java new file mode 100644 index 00000000000..31c96d73b26 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/InstanceCollection.java @@ -0,0 +1,134 @@ +/** + * 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.pss.model; + +/** + * Results of an instance search. Contains both InstanceSummary items and other information, such as + * metadata.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = InstanceCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class InstanceCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public InstanceCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** List of instances. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * List of instances. + * + * @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 InstanceCollection build() { + InstanceCollection model = new InstanceCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(InstanceCollection 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 instances. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * List of instances. + * + * @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("InstanceCollection("); + 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 InstanceCollection)) { + return false; + } + + InstanceCollection other = (InstanceCollection) 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-pss/src/main/java/com/oracle/bmc/pss/model/InstanceSummary.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/InstanceSummary.java new file mode 100644 index 00000000000..a182d529567 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/InstanceSummary.java @@ -0,0 +1,595 @@ +/** + * 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.pss.model; + +/** + * Summary information about an Instance.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = InstanceSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class InstanceSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "displayName", + "compartmentId", + "timeCreated", + "timeUpdated", + "lifecycleState", + "lifecycleDetails", + "freeformTags", + "definedTags", + "systemTags" + }) + public InstanceSummary( + String id, + String displayName, + String compartmentId, + java.util.Date timeCreated, + java.util.Date timeUpdated, + Instance.LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags) { + super(); + this.id = id; + this.displayName = displayName; + this.compartmentId = compartmentId; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + 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; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-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; + } + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-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; + } + /** The current state of the Instance. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private Instance.LifecycleState lifecycleState; + + /** + * The current state of the Instance. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(Instance.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * A message that describes the current state of the Instance in more detail. For example, + * can be used to provide actionable information for a resource in the Failed state. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * A message that describes the current state of the Instance in more detail. For example, + * can be used to provide actionable information for a resource in the Failed state. + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + 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": {"example-key": "example-value"}}} + */ + @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": {"example-key": "example-value"}}} + * + * @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 InstanceSummary build() { + InstanceSummary model = + new InstanceSummary( + this.id, + this.displayName, + this.compartmentId, + this.timeCreated, + this.timeUpdated, + this.lifecycleState, + this.lifecycleDetails, + this.freeformTags, + this.definedTags, + this.systemTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(InstanceSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + 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); + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @return the value + */ + public String getId() { + return id; + } + + /** A user-friendly name. Does not have to be unique, and it's changeable. */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * The date and time the Instance was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the Instance was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + *

Example: {@code 2016-08-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** The current state of the Instance. */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final Instance.LifecycleState lifecycleState; + + /** + * The current state of the Instance. + * + * @return the value + */ + public Instance.LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * A message that describes the current state of the Instance in more detail. For example, can + * be used to provide actionable information for a resource in the Failed state. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * A message that describes the current state of the Instance in more detail. For example, can + * be used to provide actionable information for a resource in the Failed state. + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** + * 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": {"example-key": "example-value"}}} + */ + @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": {"example-key": "example-value"}}} + * + * @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("InstanceSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", displayName=").append(String.valueOf(this.displayName)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + 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 InstanceSummary)) { + return false; + } + + InstanceSummary other = (InstanceSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && 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.displayName == null ? 43 : this.displayName.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.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.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.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-pss/src/main/java/com/oracle/bmc/pss/model/OperationStatus.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/OperationStatus.java new file mode 100644 index 00000000000..a9733e23e75 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/OperationStatus.java @@ -0,0 +1,59 @@ +/** + * 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.pss.model; + +/** The status of the work request. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public enum OperationStatus implements com.oracle.bmc.http.internal.BmcEnum { + Accepted("ACCEPTED"), + InProgress("IN_PROGRESS"), + Waiting("WAITING"), + NeedsAttention("NEEDS_ATTENTION"), + Failed("FAILED"), + Succeeded("SUCCEEDED"), + Canceling("CANCELING"), + Canceled("CANCELED"), + + /** + * 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(OperationStatus.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (OperationStatus v : OperationStatus.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + OperationStatus(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static OperationStatus create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'OperationStatus', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/OperationType.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/OperationType.java new file mode 100644 index 00000000000..def654e8c0f --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/OperationType.java @@ -0,0 +1,55 @@ +/** + * 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.pss.model; + +/** The asynchronous operation tracked by the work request. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public enum OperationType implements com.oracle.bmc.http.internal.BmcEnum { + CreateInstance("CREATE_INSTANCE"), + UpdateInstance("UPDATE_INSTANCE"), + DeleteInstance("DELETE_INSTANCE"), + MoveInstance("MOVE_INSTANCE"), + + /** + * 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(OperationType.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (OperationType v : OperationType.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + OperationType(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static OperationType create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'OperationType', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/SortOrder.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/SortOrder.java new file mode 100644 index 00000000000..08bce189bc9 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/SortOrder.java @@ -0,0 +1,43 @@ +/** + * 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.pss.model; + +/** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). The {@code + * displayName} sort order is case sensitive. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public enum SortOrder implements com.oracle.bmc.http.internal.BmcEnum { + Asc("ASC"), + Desc("DESC"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortOrder v : SortOrder.values()) { + map.put(v.getValue(), v); + } + } + + SortOrder(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortOrder create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortOrder: " + key); + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/UpdateInstanceDetails.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/UpdateInstanceDetails.java new file mode 100644 index 00000000000..62e3fc22d26 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/UpdateInstanceDetails.java @@ -0,0 +1,258 @@ +/** + * 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.pss.model; + +/** + * The data to update an Instance.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateInstanceDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateInstanceDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"displayName", "freeformTags", "definedTags"}) + public UpdateInstanceDetails( + String displayName, + java.util.Map freeformTags, + java.util.Map> definedTags) { + super(); + this.displayName = displayName; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + * + * @param displayName the value to set + * @return this builder + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + 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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateInstanceDetails build() { + UpdateInstanceDetails model = + new UpdateInstanceDetails( + this.displayName, this.freeformTags, this.definedTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateInstanceDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + */ + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private final String displayName; + + /** + * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering + * confidential information. + * + * @return the value + */ + public String getDisplayName() { + return displayName; + } + + /** + * 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; + } + + @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("UpdateInstanceDetails("); + sb.append("super=").append(super.toString()); + sb.append("displayName=").append(String.valueOf(this.displayName)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateInstanceDetails)) { + return false; + } + + UpdateInstanceDetails other = (UpdateInstanceDetails) o; + return java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequest.java new file mode 100644 index 00000000000..6610665d9cb --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequest.java @@ -0,0 +1,544 @@ +/** + * 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.pss.model; + +/** + * An asynchronous work request. Work requests help you monitor long-running operations. When you + * start a long-running operation, the service creates a work request. A work request is an activity + * log that lets you track each step in the operation's progress. Each work request has an OCID that + * lets you interact with it programmatically and use it for automation.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = WorkRequest.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequest extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "operationType", + "status", + "id", + "compartmentId", + "resources", + "percentComplete", + "timeAccepted", + "timeStarted", + "timeFinished", + "timeUpdated" + }) + public WorkRequest( + OperationType operationType, + OperationStatus status, + String id, + String compartmentId, + java.util.List resources, + Float percentComplete, + java.util.Date timeAccepted, + java.util.Date timeStarted, + java.util.Date timeFinished, + java.util.Date timeUpdated) { + super(); + this.operationType = operationType; + this.status = status; + this.id = id; + this.compartmentId = compartmentId; + this.resources = resources; + this.percentComplete = percentComplete; + this.timeAccepted = timeAccepted; + this.timeStarted = timeStarted; + this.timeFinished = timeFinished; + this.timeUpdated = timeUpdated; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The asynchronous operation tracked by this work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("operationType") + private OperationType operationType; + + /** + * The asynchronous operation tracked by this work request. + * + * @param operationType the value to set + * @return this builder + */ + public Builder operationType(OperationType operationType) { + this.operationType = operationType; + this.__explicitlySet__.add("operationType"); + return this; + } + /** The status of the work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("status") + private OperationStatus status; + + /** + * The status of the work request. + * + * @param status the value to set + * @return this builder + */ + public Builder status(OperationStatus status) { + this.status = status; + this.__explicitlySet__.add("status"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. + * + * @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](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** The resources that are affected by the work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("resources") + private java.util.List resources; + + /** + * The resources that are affected by the work request. + * + * @param resources the value to set + * @return this builder + */ + public Builder resources(java.util.List resources) { + this.resources = resources; + this.__explicitlySet__.add("resources"); + return this; + } + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the + * total work that must be performed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("percentComplete") + private Float percentComplete; + + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the + * total work that must be performed. + * + * @param percentComplete the value to set + * @return this builder + */ + public Builder percentComplete(Float percentComplete) { + this.percentComplete = percentComplete; + this.__explicitlySet__.add("percentComplete"); + return this; + } + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeAccepted") + private java.util.Date timeAccepted; + + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @param timeAccepted the value to set + * @return this builder + */ + public Builder timeAccepted(java.util.Date timeAccepted) { + this.timeAccepted = timeAccepted; + this.__explicitlySet__.add("timeAccepted"); + return this; + } + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private java.util.Date timeStarted; + + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @param timeStarted the value to set + * @return this builder + */ + public Builder timeStarted(java.util.Date timeStarted) { + this.timeStarted = timeStarted; + this.__explicitlySet__.add("timeStarted"); + return this; + } + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private java.util.Date timeFinished; + + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @param timeFinished the value to set + * @return this builder + */ + public Builder timeFinished(java.util.Date timeFinished) { + this.timeFinished = timeFinished; + this.__explicitlySet__.add("timeFinished"); + return this; + } + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public WorkRequest build() { + WorkRequest model = + new WorkRequest( + this.operationType, + this.status, + this.id, + this.compartmentId, + this.resources, + this.percentComplete, + this.timeAccepted, + this.timeStarted, + this.timeFinished, + this.timeUpdated); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequest model) { + if (model.wasPropertyExplicitlySet("operationType")) { + this.operationType(model.getOperationType()); + } + if (model.wasPropertyExplicitlySet("status")) { + this.status(model.getStatus()); + } + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("resources")) { + this.resources(model.getResources()); + } + if (model.wasPropertyExplicitlySet("percentComplete")) { + this.percentComplete(model.getPercentComplete()); + } + if (model.wasPropertyExplicitlySet("timeAccepted")) { + this.timeAccepted(model.getTimeAccepted()); + } + if (model.wasPropertyExplicitlySet("timeStarted")) { + this.timeStarted(model.getTimeStarted()); + } + if (model.wasPropertyExplicitlySet("timeFinished")) { + this.timeFinished(model.getTimeFinished()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The asynchronous operation tracked by this work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("operationType") + private final OperationType operationType; + + /** + * The asynchronous operation tracked by this work request. + * + * @return the value + */ + public OperationType getOperationType() { + return operationType; + } + + /** The status of the work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("status") + private final OperationStatus status; + + /** + * The status of the work request. + * + * @return the value + */ + public OperationStatus getStatus() { + return status; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. + * + * @return the value + */ + public String getId() { + return id; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** The resources that are affected by the work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("resources") + private final java.util.List resources; + + /** + * The resources that are affected by the work request. + * + * @return the value + */ + public java.util.List getResources() { + return resources; + } + + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the total + * work that must be performed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("percentComplete") + private final Float percentComplete; + + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the total + * work that must be performed. + * + * @return the value + */ + public Float getPercentComplete() { + return percentComplete; + } + + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeAccepted") + private final java.util.Date timeAccepted; + + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeAccepted() { + return timeAccepted; + } + + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private final java.util.Date timeStarted; + + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeStarted() { + return timeStarted; + } + + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private final java.util.Date timeFinished; + + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeFinished() { + return timeFinished; + } + + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + @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("WorkRequest("); + sb.append("super=").append(super.toString()); + sb.append("operationType=").append(String.valueOf(this.operationType)); + sb.append(", status=").append(String.valueOf(this.status)); + sb.append(", id=").append(String.valueOf(this.id)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", resources=").append(String.valueOf(this.resources)); + sb.append(", percentComplete=").append(String.valueOf(this.percentComplete)); + sb.append(", timeAccepted=").append(String.valueOf(this.timeAccepted)); + sb.append(", timeStarted=").append(String.valueOf(this.timeStarted)); + sb.append(", timeFinished=").append(String.valueOf(this.timeFinished)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WorkRequest)) { + return false; + } + + WorkRequest other = (WorkRequest) o; + return java.util.Objects.equals(this.operationType, other.operationType) + && java.util.Objects.equals(this.status, other.status) + && java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.resources, other.resources) + && java.util.Objects.equals(this.percentComplete, other.percentComplete) + && java.util.Objects.equals(this.timeAccepted, other.timeAccepted) + && java.util.Objects.equals(this.timeStarted, other.timeStarted) + && java.util.Objects.equals(this.timeFinished, other.timeFinished) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.operationType == null ? 43 : this.operationType.hashCode()); + result = (result * PRIME) + (this.status == null ? 43 : this.status.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.resources == null ? 43 : this.resources.hashCode()); + result = + (result * PRIME) + + (this.percentComplete == null ? 43 : this.percentComplete.hashCode()); + result = (result * PRIME) + (this.timeAccepted == null ? 43 : this.timeAccepted.hashCode()); + result = (result * PRIME) + (this.timeStarted == null ? 43 : this.timeStarted.hashCode()); + result = (result * PRIME) + (this.timeFinished == null ? 43 : this.timeFinished.hashCode()); + result = (result * PRIME) + (this.timeUpdated == null ? 43 : this.timeUpdated.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestError.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestError.java new file mode 100644 index 00000000000..10035947cec --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestError.java @@ -0,0 +1,219 @@ +/** + * 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.pss.model; + +/** + * An error encountered while performing an operation that is tracked by a work request.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = WorkRequestError.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestError + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"code", "message", "timestamp"}) + public WorkRequestError(String code, String message, java.util.Date timestamp) { + super(); + this.code = code; + this.message = message; + this.timestamp = timestamp; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * A machine-usable code for the error that occurred. For a list of error codes, see [API + * Errors](https://docs.oracle.com/iaas/Content/API/References/apierrors.htm). + */ + @com.fasterxml.jackson.annotation.JsonProperty("code") + private String code; + + /** + * A machine-usable code for the error that occurred. For a list of error codes, see [API + * Errors](https://docs.oracle.com/iaas/Content/API/References/apierrors.htm). + * + * @param code the value to set + * @return this builder + */ + public Builder code(String code) { + this.code = code; + this.__explicitlySet__.add("code"); + return this; + } + /** A human-readable error message. */ + @com.fasterxml.jackson.annotation.JsonProperty("message") + private String message; + + /** + * A human-readable error message. + * + * @param message the value to set + * @return this builder + */ + public Builder message(String message) { + this.message = message; + this.__explicitlySet__.add("message"); + return this; + } + /** + * The date and time the error occurred, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private java.util.Date timestamp; + + /** + * The date and time the error occurred, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @param timestamp the value to set + * @return this builder + */ + public Builder timestamp(java.util.Date timestamp) { + this.timestamp = timestamp; + this.__explicitlySet__.add("timestamp"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public WorkRequestError build() { + WorkRequestError model = new WorkRequestError(this.code, this.message, this.timestamp); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestError model) { + if (model.wasPropertyExplicitlySet("code")) { + this.code(model.getCode()); + } + if (model.wasPropertyExplicitlySet("message")) { + this.message(model.getMessage()); + } + if (model.wasPropertyExplicitlySet("timestamp")) { + this.timestamp(model.getTimestamp()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * A machine-usable code for the error that occurred. For a list of error codes, see [API + * Errors](https://docs.oracle.com/iaas/Content/API/References/apierrors.htm). + */ + @com.fasterxml.jackson.annotation.JsonProperty("code") + private final String code; + + /** + * A machine-usable code for the error that occurred. For a list of error codes, see [API + * Errors](https://docs.oracle.com/iaas/Content/API/References/apierrors.htm). + * + * @return the value + */ + public String getCode() { + return code; + } + + /** A human-readable error message. */ + @com.fasterxml.jackson.annotation.JsonProperty("message") + private final String message; + + /** + * A human-readable error message. + * + * @return the value + */ + public String getMessage() { + return message; + } + + /** + * The date and time the error occurred, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private final java.util.Date timestamp; + + /** + * The date and time the error occurred, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @return the value + */ + public java.util.Date getTimestamp() { + return timestamp; + } + + @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("WorkRequestError("); + sb.append("super=").append(super.toString()); + sb.append("code=").append(String.valueOf(this.code)); + sb.append(", message=").append(String.valueOf(this.message)); + sb.append(", timestamp=").append(String.valueOf(this.timestamp)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WorkRequestError)) { + return false; + } + + WorkRequestError other = (WorkRequestError) o; + return java.util.Objects.equals(this.code, other.code) + && java.util.Objects.equals(this.message, other.message) + && java.util.Objects.equals(this.timestamp, other.timestamp) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.code == null ? 43 : this.code.hashCode()); + result = (result * PRIME) + (this.message == null ? 43 : this.message.hashCode()); + result = (result * PRIME) + (this.timestamp == null ? 43 : this.timestamp.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestErrorCollection.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestErrorCollection.java new file mode 100644 index 00000000000..85124b02594 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestErrorCollection.java @@ -0,0 +1,134 @@ +/** + * 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.pss.model; + +/** + * A list of work request errors. Can contain both errors and other information, such as metadata. + *
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = WorkRequestErrorCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestErrorCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public WorkRequestErrorCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A list of work request errors. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * A list of work request errors. + * + * @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 WorkRequestErrorCollection build() { + WorkRequestErrorCollection model = new WorkRequestErrorCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestErrorCollection 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); + } + + /** A list of work request errors. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * A list of work request errors. + * + * @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("WorkRequestErrorCollection("); + 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 WorkRequestErrorCollection)) { + return false; + } + + WorkRequestErrorCollection other = (WorkRequestErrorCollection) 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-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestLogEntry.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestLogEntry.java new file mode 100644 index 00000000000..a422cce4586 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestLogEntry.java @@ -0,0 +1,177 @@ +/** + * 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.pss.model; + +/** + * A log message from performing an operation that is tracked by a work request.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = WorkRequestLogEntry.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestLogEntry + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"message", "timestamp"}) + public WorkRequestLogEntry(String message, java.util.Date timestamp) { + super(); + this.message = message; + this.timestamp = timestamp; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A human-readable log message. */ + @com.fasterxml.jackson.annotation.JsonProperty("message") + private String message; + + /** + * A human-readable log message. + * + * @param message the value to set + * @return this builder + */ + public Builder message(String message) { + this.message = message; + this.__explicitlySet__.add("message"); + return this; + } + /** + * The date and time the log message was written, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private java.util.Date timestamp; + + /** + * The date and time the log message was written, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @param timestamp the value to set + * @return this builder + */ + public Builder timestamp(java.util.Date timestamp) { + this.timestamp = timestamp; + this.__explicitlySet__.add("timestamp"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public WorkRequestLogEntry build() { + WorkRequestLogEntry model = new WorkRequestLogEntry(this.message, this.timestamp); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestLogEntry model) { + if (model.wasPropertyExplicitlySet("message")) { + this.message(model.getMessage()); + } + if (model.wasPropertyExplicitlySet("timestamp")) { + this.timestamp(model.getTimestamp()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** A human-readable log message. */ + @com.fasterxml.jackson.annotation.JsonProperty("message") + private final String message; + + /** + * A human-readable log message. + * + * @return the value + */ + public String getMessage() { + return message; + } + + /** + * The date and time the log message was written, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timestamp") + private final java.util.Date timestamp; + + /** + * The date and time the log message was written, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @return the value + */ + public java.util.Date getTimestamp() { + return timestamp; + } + + @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("WorkRequestLogEntry("); + sb.append("super=").append(super.toString()); + sb.append("message=").append(String.valueOf(this.message)); + sb.append(", timestamp=").append(String.valueOf(this.timestamp)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WorkRequestLogEntry)) { + return false; + } + + WorkRequestLogEntry other = (WorkRequestLogEntry) o; + return java.util.Objects.equals(this.message, other.message) + && java.util.Objects.equals(this.timestamp, other.timestamp) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.message == null ? 43 : this.message.hashCode()); + result = (result * PRIME) + (this.timestamp == null ? 43 : this.timestamp.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestLogEntryCollection.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestLogEntryCollection.java new file mode 100644 index 00000000000..b5008e03ba8 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestLogEntryCollection.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.pss.model; + +/** + * A list of work request logs. Can contain both logs and other information, such as metadata.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = WorkRequestLogEntryCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestLogEntryCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public WorkRequestLogEntryCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A list of work request log entries. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * A list of work request log entries. + * + * @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 WorkRequestLogEntryCollection build() { + WorkRequestLogEntryCollection model = new WorkRequestLogEntryCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestLogEntryCollection 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); + } + + /** A list of work request log entries. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * A list of work request log entries. + * + * @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("WorkRequestLogEntryCollection("); + 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 WorkRequestLogEntryCollection)) { + return false; + } + + WorkRequestLogEntryCollection other = (WorkRequestLogEntryCollection) 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-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestResource.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestResource.java new file mode 100644 index 00000000000..f445a4357d2 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestResource.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.pss.model; + +/** + * A resource created or operated on by a work request.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = WorkRequestResource.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestResource + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "entityType", + "actionType", + "identifier", + "entityUri", + "metadata" + }) + public WorkRequestResource( + String entityType, + ActionType actionType, + String identifier, + String entityUri, + java.util.Map metadata) { + super(); + this.entityType = entityType; + this.actionType = actionType; + this.identifier = identifier; + this.entityUri = entityUri; + this.metadata = metadata; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The resource type that the work request affects. */ + @com.fasterxml.jackson.annotation.JsonProperty("entityType") + private String entityType; + + /** + * The resource type that the work request affects. + * + * @param entityType the value to set + * @return this builder + */ + public Builder entityType(String entityType) { + this.entityType = entityType; + this.__explicitlySet__.add("entityType"); + return this; + } + /** + * The way in which this resource is affected by the operation tracked in the work request. + * A resource being created, updated, or deleted remains in the IN_PROGRESS state until work + * is complete for that resource, at which point it transitions to CREATED, UPDATED, or + * DELETED, respectively. + */ + @com.fasterxml.jackson.annotation.JsonProperty("actionType") + private ActionType actionType; + + /** + * The way in which this resource is affected by the operation tracked in the work request. + * A resource being created, updated, or deleted remains in the IN_PROGRESS state until work + * is complete for that resource, at which point it transitions to CREATED, UPDATED, or + * DELETED, respectively. + * + * @param actionType the value to set + * @return this builder + */ + public Builder actionType(ActionType actionType) { + this.actionType = actionType; + this.__explicitlySet__.add("actionType"); + return this; + } + /** + * An [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) or other + * unique identifier for the resource. + */ + @com.fasterxml.jackson.annotation.JsonProperty("identifier") + private String identifier; + + /** + * An [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) or other + * unique identifier for the resource. + * + * @param identifier the value to set + * @return this builder + */ + public Builder identifier(String identifier) { + this.identifier = identifier; + this.__explicitlySet__.add("identifier"); + return this; + } + /** The URI path that you can use for a GET request to access the resource metadata. */ + @com.fasterxml.jackson.annotation.JsonProperty("entityUri") + private String entityUri; + + /** + * The URI path that you can use for a GET request to access the resource metadata. + * + * @param entityUri the value to set + * @return this builder + */ + public Builder entityUri(String entityUri) { + this.entityUri = entityUri; + this.__explicitlySet__.add("entityUri"); + return this; + } + /** Additional information that helps to explain the resource. */ + @com.fasterxml.jackson.annotation.JsonProperty("metadata") + private java.util.Map metadata; + + /** + * Additional information that helps to explain the resource. + * + * @param metadata the value to set + * @return this builder + */ + public Builder metadata(java.util.Map metadata) { + this.metadata = metadata; + this.__explicitlySet__.add("metadata"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public WorkRequestResource build() { + WorkRequestResource model = + new WorkRequestResource( + this.entityType, + this.actionType, + this.identifier, + this.entityUri, + this.metadata); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestResource model) { + if (model.wasPropertyExplicitlySet("entityType")) { + this.entityType(model.getEntityType()); + } + if (model.wasPropertyExplicitlySet("actionType")) { + this.actionType(model.getActionType()); + } + if (model.wasPropertyExplicitlySet("identifier")) { + this.identifier(model.getIdentifier()); + } + if (model.wasPropertyExplicitlySet("entityUri")) { + this.entityUri(model.getEntityUri()); + } + if (model.wasPropertyExplicitlySet("metadata")) { + this.metadata(model.getMetadata()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The resource type that the work request affects. */ + @com.fasterxml.jackson.annotation.JsonProperty("entityType") + private final String entityType; + + /** + * The resource type that the work request affects. + * + * @return the value + */ + public String getEntityType() { + return entityType; + } + + /** + * The way in which this resource is affected by the operation tracked in the work request. A + * resource being created, updated, or deleted remains in the IN_PROGRESS state until work is + * complete for that resource, at which point it transitions to CREATED, UPDATED, or DELETED, + * respectively. + */ + @com.fasterxml.jackson.annotation.JsonProperty("actionType") + private final ActionType actionType; + + /** + * The way in which this resource is affected by the operation tracked in the work request. A + * resource being created, updated, or deleted remains in the IN_PROGRESS state until work is + * complete for that resource, at which point it transitions to CREATED, UPDATED, or DELETED, + * respectively. + * + * @return the value + */ + public ActionType getActionType() { + return actionType; + } + + /** + * An [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) or other + * unique identifier for the resource. + */ + @com.fasterxml.jackson.annotation.JsonProperty("identifier") + private final String identifier; + + /** + * An [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) or other + * unique identifier for the resource. + * + * @return the value + */ + public String getIdentifier() { + return identifier; + } + + /** The URI path that you can use for a GET request to access the resource metadata. */ + @com.fasterxml.jackson.annotation.JsonProperty("entityUri") + private final String entityUri; + + /** + * The URI path that you can use for a GET request to access the resource metadata. + * + * @return the value + */ + public String getEntityUri() { + return entityUri; + } + + /** Additional information that helps to explain the resource. */ + @com.fasterxml.jackson.annotation.JsonProperty("metadata") + private final java.util.Map metadata; + + /** + * Additional information that helps to explain the resource. + * + * @return the value + */ + public java.util.Map getMetadata() { + return metadata; + } + + @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("WorkRequestResource("); + sb.append("super=").append(super.toString()); + sb.append("entityType=").append(String.valueOf(this.entityType)); + sb.append(", actionType=").append(String.valueOf(this.actionType)); + sb.append(", identifier=").append(String.valueOf(this.identifier)); + sb.append(", entityUri=").append(String.valueOf(this.entityUri)); + sb.append(", metadata=").append(String.valueOf(this.metadata)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WorkRequestResource)) { + return false; + } + + WorkRequestResource other = (WorkRequestResource) o; + return java.util.Objects.equals(this.entityType, other.entityType) + && java.util.Objects.equals(this.actionType, other.actionType) + && java.util.Objects.equals(this.identifier, other.identifier) + && java.util.Objects.equals(this.entityUri, other.entityUri) + && java.util.Objects.equals(this.metadata, other.metadata) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.entityType == null ? 43 : this.entityType.hashCode()); + result = (result * PRIME) + (this.actionType == null ? 43 : this.actionType.hashCode()); + result = (result * PRIME) + (this.identifier == null ? 43 : this.identifier.hashCode()); + result = (result * PRIME) + (this.entityUri == null ? 43 : this.entityUri.hashCode()); + result = (result * PRIME) + (this.metadata == null ? 43 : this.metadata.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestResourceMetadataKey.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestResourceMetadataKey.java new file mode 100644 index 00000000000..b86d0321f2d --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestResourceMetadataKey.java @@ -0,0 +1,52 @@ +/** + * 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.pss.model; + +/** Possible metadata keys for work request resource metadata. */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public enum WorkRequestResourceMetadataKey implements com.oracle.bmc.http.internal.BmcEnum { + IsDryRun("IS_DRY_RUN"), + + /** + * 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(WorkRequestResourceMetadataKey.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (WorkRequestResourceMetadataKey v : WorkRequestResourceMetadataKey.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + WorkRequestResourceMetadataKey(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static WorkRequestResourceMetadataKey create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'WorkRequestResourceMetadataKey', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestSummary.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestSummary.java new file mode 100644 index 00000000000..c275c85f592 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestSummary.java @@ -0,0 +1,543 @@ +/** + * 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.pss.model; + +/** + * Summary information about an asynchronous work request.
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = WorkRequestSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "operationType", + "status", + "id", + "compartmentId", + "resources", + "percentComplete", + "timeAccepted", + "timeStarted", + "timeFinished", + "timeUpdated" + }) + public WorkRequestSummary( + OperationType operationType, + OperationStatus status, + String id, + String compartmentId, + java.util.List resources, + Float percentComplete, + java.util.Date timeAccepted, + java.util.Date timeStarted, + java.util.Date timeFinished, + java.util.Date timeUpdated) { + super(); + this.operationType = operationType; + this.status = status; + this.id = id; + this.compartmentId = compartmentId; + this.resources = resources; + this.percentComplete = percentComplete; + this.timeAccepted = timeAccepted; + this.timeStarted = timeStarted; + this.timeFinished = timeFinished; + this.timeUpdated = timeUpdated; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The asynchronous operation tracked by this work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("operationType") + private OperationType operationType; + + /** + * The asynchronous operation tracked by this work request. + * + * @param operationType the value to set + * @return this builder + */ + public Builder operationType(OperationType operationType) { + this.operationType = operationType; + this.__explicitlySet__.add("operationType"); + return this; + } + /** The status of the work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("status") + private OperationStatus status; + + /** + * The status of the work request. + * + * @param status the value to set + * @return this builder + */ + public Builder status(OperationStatus status) { + this.status = status; + this.__explicitlySet__.add("status"); + return this; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * work request. + * + * @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](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** The resources that are affected by this work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("resources") + private java.util.List resources; + + /** + * The resources that are affected by this work request. + * + * @param resources the value to set + * @return this builder + */ + public Builder resources(java.util.List resources) { + this.resources = resources; + this.__explicitlySet__.add("resources"); + return this; + } + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the + * total work that must be performed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("percentComplete") + private Float percentComplete; + + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the + * total work that must be performed. + * + * @param percentComplete the value to set + * @return this builder + */ + public Builder percentComplete(Float percentComplete) { + this.percentComplete = percentComplete; + this.__explicitlySet__.add("percentComplete"); + return this; + } + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeAccepted") + private java.util.Date timeAccepted; + + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @param timeAccepted the value to set + * @return this builder + */ + public Builder timeAccepted(java.util.Date timeAccepted) { + this.timeAccepted = timeAccepted; + this.__explicitlySet__.add("timeAccepted"); + return this; + } + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private java.util.Date timeStarted; + + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @param timeStarted the value to set + * @return this builder + */ + public Builder timeStarted(java.util.Date timeStarted) { + this.timeStarted = timeStarted; + this.__explicitlySet__.add("timeStarted"); + return this; + } + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private java.util.Date timeFinished; + + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @param timeFinished the value to set + * @return this builder + */ + public Builder timeFinished(java.util.Date timeFinished) { + this.timeFinished = timeFinished; + this.__explicitlySet__.add("timeFinished"); + return this; + } + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @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; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public WorkRequestSummary build() { + WorkRequestSummary model = + new WorkRequestSummary( + this.operationType, + this.status, + this.id, + this.compartmentId, + this.resources, + this.percentComplete, + this.timeAccepted, + this.timeStarted, + this.timeFinished, + this.timeUpdated); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestSummary model) { + if (model.wasPropertyExplicitlySet("operationType")) { + this.operationType(model.getOperationType()); + } + if (model.wasPropertyExplicitlySet("status")) { + this.status(model.getStatus()); + } + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("resources")) { + this.resources(model.getResources()); + } + if (model.wasPropertyExplicitlySet("percentComplete")) { + this.percentComplete(model.getPercentComplete()); + } + if (model.wasPropertyExplicitlySet("timeAccepted")) { + this.timeAccepted(model.getTimeAccepted()); + } + if (model.wasPropertyExplicitlySet("timeStarted")) { + this.timeStarted(model.getTimeStarted()); + } + if (model.wasPropertyExplicitlySet("timeFinished")) { + this.timeFinished(model.getTimeFinished()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The asynchronous operation tracked by this work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("operationType") + private final OperationType operationType; + + /** + * The asynchronous operation tracked by this work request. + * + * @return the value + */ + public OperationType getOperationType() { + return operationType; + } + + /** The status of the work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("status") + private final OperationStatus status; + + /** + * The status of the work request. + * + * @return the value + */ + public OperationStatus getStatus() { + return status; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the work + * request. + * + * @return the value + */ + public String getId() { + return id; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment that contains the work request. + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** The resources that are affected by this work request. */ + @com.fasterxml.jackson.annotation.JsonProperty("resources") + private final java.util.List resources; + + /** + * The resources that are affected by this work request. + * + * @return the value + */ + public java.util.List getResources() { + return resources; + } + + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the total + * work that must be performed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("percentComplete") + private final Float percentComplete; + + /** + * Shows the progress of the operation tracked by the work request, as a percentage of the total + * work that must be performed. + * + * @return the value + */ + public Float getPercentComplete() { + return percentComplete; + } + + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeAccepted") + private final java.util.Date timeAccepted; + + /** + * The date and time the work request was created, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeAccepted() { + return timeAccepted; + } + + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeStarted") + private final java.util.Date timeStarted; + + /** + * The date and time the work request was started, in the format defined by [RFC + * 3339](https://tools.ietf.org/html/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeStarted() { + return timeStarted; + } + + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeFinished") + private final java.util.Date timeFinished; + + /** + * The date and time the work request was finished, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeFinished() { + return timeFinished; + } + + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * The date and time the work request was updated, in the format defined by [RFC + * 3339](https://tools.ietf.org/rfc/rfc3339). + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + @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("WorkRequestSummary("); + sb.append("super=").append(super.toString()); + sb.append("operationType=").append(String.valueOf(this.operationType)); + sb.append(", status=").append(String.valueOf(this.status)); + sb.append(", id=").append(String.valueOf(this.id)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", resources=").append(String.valueOf(this.resources)); + sb.append(", percentComplete=").append(String.valueOf(this.percentComplete)); + sb.append(", timeAccepted=").append(String.valueOf(this.timeAccepted)); + sb.append(", timeStarted=").append(String.valueOf(this.timeStarted)); + sb.append(", timeFinished=").append(String.valueOf(this.timeFinished)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof WorkRequestSummary)) { + return false; + } + + WorkRequestSummary other = (WorkRequestSummary) o; + return java.util.Objects.equals(this.operationType, other.operationType) + && java.util.Objects.equals(this.status, other.status) + && java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.resources, other.resources) + && java.util.Objects.equals(this.percentComplete, other.percentComplete) + && java.util.Objects.equals(this.timeAccepted, other.timeAccepted) + && java.util.Objects.equals(this.timeStarted, other.timeStarted) + && java.util.Objects.equals(this.timeFinished, other.timeFinished) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.operationType == null ? 43 : this.operationType.hashCode()); + result = (result * PRIME) + (this.status == null ? 43 : this.status.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.resources == null ? 43 : this.resources.hashCode()); + result = + (result * PRIME) + + (this.percentComplete == null ? 43 : this.percentComplete.hashCode()); + result = (result * PRIME) + (this.timeAccepted == null ? 43 : this.timeAccepted.hashCode()); + result = (result * PRIME) + (this.timeStarted == null ? 43 : this.timeStarted.hashCode()); + result = (result * PRIME) + (this.timeFinished == null ? 43 : this.timeFinished.hashCode()); + result = (result * PRIME) + (this.timeUpdated == null ? 43 : this.timeUpdated.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestSummaryCollection.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestSummaryCollection.java new file mode 100644 index 00000000000..93f3e872364 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/model/WorkRequestSummaryCollection.java @@ -0,0 +1,134 @@ +/** + * 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.pss.model; + +/** + * A list of work requests. Can contain both work requests and other information, such as metadata. + *
+ * 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: 20260831") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = WorkRequestSummaryCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class WorkRequestSummaryCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public WorkRequestSummaryCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** A list of work requests. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * A list of work requests. + * + * @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 WorkRequestSummaryCollection build() { + WorkRequestSummaryCollection model = new WorkRequestSummaryCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(WorkRequestSummaryCollection 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); + } + + /** A list of work requests. */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * A list of work requests. + * + * @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("WorkRequestSummaryCollection("); + 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 WorkRequestSummaryCollection)) { + return false; + } + + WorkRequestSummaryCollection other = (WorkRequestSummaryCollection) 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-pss/src/main/java/com/oracle/bmc/pss/requests/CancelWorkRequestRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/CancelWorkRequestRequest.java new file mode 100644 index 00000000000..d47d681172d --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/CancelWorkRequestRequest.java @@ -0,0 +1,263 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use CancelWorkRequestRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class CancelWorkRequestRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + public String getWorkRequestId() { + return workRequestId; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CancelWorkRequestRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + * + * @param workRequestId the value to set + * @return this builder instance + */ + public Builder workRequestId(String workRequestId) { + this.workRequestId = workRequestId; + 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 will be 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 will be 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; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(CancelWorkRequestRequest o) { + workRequestId(o.getWorkRequestId()); + ifMatch(o.getIfMatch()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CancelWorkRequestRequest 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 CancelWorkRequestRequest + */ + public CancelWorkRequestRequest build() { + CancelWorkRequestRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of CancelWorkRequestRequest 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 CancelWorkRequestRequest + */ + public CancelWorkRequestRequest buildWithoutInvocationCallback() { + CancelWorkRequestRequest request = new CancelWorkRequestRequest(); + request.workRequestId = workRequestId; + request.ifMatch = ifMatch; + request.opcRequestId = opcRequestId; + return request; + // new CancelWorkRequestRequest(workRequestId, ifMatch, 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() + .workRequestId(workRequestId) + .ifMatch(ifMatch) + .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(",workRequestId=").append(String.valueOf(this.workRequestId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + 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 CancelWorkRequestRequest)) { + return false; + } + + CancelWorkRequestRequest other = (CancelWorkRequestRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.workRequestId, other.workRequestId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.workRequestId == null ? 43 : this.workRequestId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ChangeInstanceCompartmentRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ChangeInstanceCompartmentRequest.java new file mode 100644 index 00000000000..2adce514541 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ChangeInstanceCompartmentRequest.java @@ -0,0 +1,328 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use + * ChangeInstanceCompartmentRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ChangeInstanceCompartmentRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails> { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + public String getInstanceId() { + return instanceId; + } + /** The compartment move details. */ + private com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails + changeInstanceCompartmentDetails; + + /** The compartment move details. */ + public com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails + getChangeInstanceCompartmentDetails() { + return changeInstanceCompartmentDetails; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails getBody$() { + return changeInstanceCompartmentDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ChangeInstanceCompartmentRequest, + com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param instanceId the value to set + * @return this builder instance + */ + public Builder instanceId(String instanceId) { + this.instanceId = instanceId; + return this; + } + + /** The compartment move details. */ + private com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails + changeInstanceCompartmentDetails = null; + + /** + * The compartment move details. + * + * @param changeInstanceCompartmentDetails the value to set + * @return this builder instance + */ + public Builder changeInstanceCompartmentDetails( + com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails + changeInstanceCompartmentDetails) { + this.changeInstanceCompartmentDetails = changeInstanceCompartmentDetails; + 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 will be 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 will be 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; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(ChangeInstanceCompartmentRequest o) { + instanceId(o.getInstanceId()); + changeInstanceCompartmentDetails(o.getChangeInstanceCompartmentDetails()); + ifMatch(o.getIfMatch()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ChangeInstanceCompartmentRequest 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 ChangeInstanceCompartmentRequest + */ + public ChangeInstanceCompartmentRequest build() { + ChangeInstanceCompartmentRequest 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.pss.model.ChangeInstanceCompartmentDetails body) { + changeInstanceCompartmentDetails(body); + return this; + } + + /** + * Build the instance of ChangeInstanceCompartmentRequest 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 ChangeInstanceCompartmentRequest + */ + public ChangeInstanceCompartmentRequest buildWithoutInvocationCallback() { + ChangeInstanceCompartmentRequest request = new ChangeInstanceCompartmentRequest(); + request.instanceId = instanceId; + request.changeInstanceCompartmentDetails = changeInstanceCompartmentDetails; + request.ifMatch = ifMatch; + request.opcRequestId = opcRequestId; + return request; + // new ChangeInstanceCompartmentRequest(instanceId, changeInstanceCompartmentDetails, + // ifMatch, 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() + .instanceId(instanceId) + .changeInstanceCompartmentDetails(changeInstanceCompartmentDetails) + .ifMatch(ifMatch) + .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(",instanceId=").append(String.valueOf(this.instanceId)); + sb.append(",changeInstanceCompartmentDetails=") + .append(String.valueOf(this.changeInstanceCompartmentDetails)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + 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 ChangeInstanceCompartmentRequest)) { + return false; + } + + ChangeInstanceCompartmentRequest other = (ChangeInstanceCompartmentRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.instanceId, other.instanceId) + && java.util.Objects.equals( + this.changeInstanceCompartmentDetails, + other.changeInstanceCompartmentDetails) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.instanceId == null ? 43 : this.instanceId.hashCode()); + result = + (result * PRIME) + + (this.changeInstanceCompartmentDetails == null + ? 43 + : this.changeInstanceCompartmentDetails.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/CreateInstanceRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/CreateInstanceRequest.java new file mode 100644 index 00000000000..6d59f9ce3cf --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/CreateInstanceRequest.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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use CreateInstanceRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class CreateInstanceRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** Details for the new Instance. */ + private com.oracle.bmc.pss.model.CreateInstanceDetails createInstanceDetails; + + /** Details for the new Instance. */ + public com.oracle.bmc.pss.model.CreateInstanceDetails getCreateInstanceDetails() { + return createInstanceDetails; + } + /** + * A token that uniquely identifies a request so it can be retried in case of a timeout or + * server error without risk of running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if a + * resource has been deleted and removed from the system, then a retry of the original creation + * request might be rejected. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.pss.model.CreateInstanceDetails getBody$() { + return createInstanceDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateInstanceRequest, com.oracle.bmc.pss.model.CreateInstanceDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** Details for the new Instance. */ + private com.oracle.bmc.pss.model.CreateInstanceDetails createInstanceDetails = null; + + /** + * Details for the new Instance. + * + * @param createInstanceDetails the value to set + * @return this builder instance + */ + public Builder createInstanceDetails( + com.oracle.bmc.pss.model.CreateInstanceDetails createInstanceDetails) { + this.createInstanceDetails = createInstanceDetails; + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + */ + 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 running that same action again. Retry tokens expire after 24 + * hours, but can be invalidated before then due to conflicting operations. For example, if + * a resource has been deleted and removed from the system, then a retry of the original + * creation request might be rejected. + * + * @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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(CreateInstanceRequest o) { + createInstanceDetails(o.getCreateInstanceDetails()); + opcRetryToken(o.getOpcRetryToken()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateInstanceRequest 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 CreateInstanceRequest + */ + public CreateInstanceRequest build() { + CreateInstanceRequest 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.pss.model.CreateInstanceDetails body) { + createInstanceDetails(body); + return this; + } + + /** + * Build the instance of CreateInstanceRequest 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 CreateInstanceRequest + */ + public CreateInstanceRequest buildWithoutInvocationCallback() { + CreateInstanceRequest request = new CreateInstanceRequest(); + request.createInstanceDetails = createInstanceDetails; + request.opcRetryToken = opcRetryToken; + request.opcRequestId = opcRequestId; + return request; + // new CreateInstanceRequest(createInstanceDetails, 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() + .createInstanceDetails(createInstanceDetails) + .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(",createInstanceDetails=").append(String.valueOf(this.createInstanceDetails)); + 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 CreateInstanceRequest)) { + return false; + } + + CreateInstanceRequest other = (CreateInstanceRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.createInstanceDetails, other.createInstanceDetails) + && 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.createInstanceDetails == null + ? 43 + : this.createInstanceDetails.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-pss/src/main/java/com/oracle/bmc/pss/requests/DeleteInstanceRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/DeleteInstanceRequest.java new file mode 100644 index 00000000000..42dcc324f63 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/DeleteInstanceRequest.java @@ -0,0 +1,258 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use DeleteInstanceRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class DeleteInstanceRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + public String getInstanceId() { + return instanceId; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + DeleteInstanceRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param instanceId the value to set + * @return this builder instance + */ + public Builder instanceId(String instanceId) { + this.instanceId = instanceId; + 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 will be 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 will be 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; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(DeleteInstanceRequest o) { + instanceId(o.getInstanceId()); + ifMatch(o.getIfMatch()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteInstanceRequest 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 DeleteInstanceRequest + */ + public DeleteInstanceRequest build() { + DeleteInstanceRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteInstanceRequest 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 DeleteInstanceRequest + */ + public DeleteInstanceRequest buildWithoutInvocationCallback() { + DeleteInstanceRequest request = new DeleteInstanceRequest(); + request.instanceId = instanceId; + request.ifMatch = ifMatch; + request.opcRequestId = opcRequestId; + return request; + // new DeleteInstanceRequest(instanceId, ifMatch, 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().instanceId(instanceId).ifMatch(ifMatch).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(",instanceId=").append(String.valueOf(this.instanceId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + 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 DeleteInstanceRequest)) { + return false; + } + + DeleteInstanceRequest other = (DeleteInstanceRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.instanceId, other.instanceId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.instanceId == null ? 43 : this.instanceId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/GetInstanceRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/GetInstanceRequest.java new file mode 100644 index 00000000000..b0a31974581 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/GetInstanceRequest.java @@ -0,0 +1,214 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use GetInstanceRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class GetInstanceRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + public String getInstanceId() { + return instanceId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetInstanceRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param instanceId the value to set + * @return this builder instance + */ + public Builder instanceId(String instanceId) { + this.instanceId = instanceId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(GetInstanceRequest o) { + instanceId(o.getInstanceId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetInstanceRequest 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 GetInstanceRequest + */ + public GetInstanceRequest build() { + GetInstanceRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetInstanceRequest 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 GetInstanceRequest + */ + public GetInstanceRequest buildWithoutInvocationCallback() { + GetInstanceRequest request = new GetInstanceRequest(); + request.instanceId = instanceId; + request.opcRequestId = opcRequestId; + return request; + // new GetInstanceRequest(instanceId, 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().instanceId(instanceId).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(",instanceId=").append(String.valueOf(this.instanceId)); + 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 GetInstanceRequest)) { + return false; + } + + GetInstanceRequest other = (GetInstanceRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.instanceId, other.instanceId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.instanceId == null ? 43 : this.instanceId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/GetWorkRequestRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/GetWorkRequestRequest.java new file mode 100644 index 00000000000..b037cc6c762 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/GetWorkRequestRequest.java @@ -0,0 +1,216 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use GetWorkRequestRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class GetWorkRequestRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + public String getWorkRequestId() { + return workRequestId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetWorkRequestRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + * + * @param workRequestId the value to set + * @return this builder instance + */ + public Builder workRequestId(String workRequestId) { + this.workRequestId = workRequestId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(GetWorkRequestRequest o) { + workRequestId(o.getWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetWorkRequestRequest 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 GetWorkRequestRequest + */ + public GetWorkRequestRequest build() { + GetWorkRequestRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetWorkRequestRequest 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 GetWorkRequestRequest + */ + public GetWorkRequestRequest buildWithoutInvocationCallback() { + GetWorkRequestRequest request = new GetWorkRequestRequest(); + request.workRequestId = workRequestId; + request.opcRequestId = opcRequestId; + return request; + // new GetWorkRequestRequest(workRequestId, 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().workRequestId(workRequestId).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(",workRequestId=").append(String.valueOf(this.workRequestId)); + 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 GetWorkRequestRequest)) { + return false; + } + + GetWorkRequestRequest other = (GetWorkRequestRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.workRequestId, other.workRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.workRequestId == null ? 43 : this.workRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListInstancesRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListInstancesRequest.java new file mode 100644 index 00000000000..e96702abf35 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListInstancesRequest.java @@ -0,0 +1,506 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use ListInstancesRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListInstancesRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + public String getCompartmentId() { + return compartmentId; + } + /** + * A filter to return only resources that match the given lifecycle state. The state value is + * case-insensitive. + */ + private com.oracle.bmc.pss.model.Instance.LifecycleState lifecycleState; + + /** + * A filter to return only resources that match the given lifecycle state. The state value is + * case-insensitive. + */ + public com.oracle.bmc.pss.model.Instance.LifecycleState getLifecycleState() { + return lifecycleState; + } + /** A filter to return only resources that match the given display name exactly. */ + private String displayName; + + /** A filter to return only resources that match the given display name exactly. */ + public String getDisplayName() { + return displayName; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String id; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + public String getId() { + return id; + } + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public Integer getLimit() { + return limit; + } + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page; + + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public String getPage() { + return page; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.pss.model.SortOrder getSortOrder() { + return sortOrder; + } + /** + * The field to sort by. You can provide only one sort order. Default order for {@code + * timeCreated} is descending. Default order for {@code displayName} is ascending. + */ + private SortBy sortBy; + + /** + * The field to sort by. You can provide only one sort order. Default order for {@code + * timeCreated} is descending. Default order for {@code displayName} is ascending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeCreated("timeCreated"), + DisplayName("displayName"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. You can provide only one sort order. Default order for {@code + * timeCreated} is descending. Default order for {@code displayName} is ascending. + */ + public SortBy getSortBy() { + return sortBy; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListInstancesRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * A filter to return only resources that match the given lifecycle state. The state value + * is case-insensitive. + */ + private com.oracle.bmc.pss.model.Instance.LifecycleState lifecycleState = null; + + /** + * A filter to return only resources that match the given lifecycle state. The state value + * is case-insensitive. + * + * @param lifecycleState the value to set + * @return this builder instance + */ + public Builder lifecycleState( + com.oracle.bmc.pss.model.Instance.LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + return this; + } + + /** A filter to return only resources that match the given display name exactly. */ + private String displayName = null; + + /** + * A filter to return only resources that match the given display name exactly. + * + * @param displayName the value to set + * @return this builder instance + */ + public Builder displayName(String displayName) { + this.displayName = displayName; + return this; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String id = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param id the value to set + * @return this builder instance + */ + public Builder id(String id) { + this.id = id; + return this; + } + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit = null; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page = null; + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.pss.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** + * The field to sort by. You can provide only one sort order. Default order for {@code + * timeCreated} is descending. Default order for {@code displayName} is ascending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. You can provide only one sort order. Default order for {@code + * timeCreated} is descending. Default order for {@code displayName} is ascending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(ListInstancesRequest o) { + compartmentId(o.getCompartmentId()); + lifecycleState(o.getLifecycleState()); + displayName(o.getDisplayName()); + id(o.getId()); + limit(o.getLimit()); + page(o.getPage()); + sortOrder(o.getSortOrder()); + sortBy(o.getSortBy()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListInstancesRequest 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 ListInstancesRequest + */ + public ListInstancesRequest build() { + ListInstancesRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListInstancesRequest 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 ListInstancesRequest + */ + public ListInstancesRequest buildWithoutInvocationCallback() { + ListInstancesRequest request = new ListInstancesRequest(); + request.compartmentId = compartmentId; + request.lifecycleState = lifecycleState; + request.displayName = displayName; + request.id = id; + request.limit = limit; + request.page = page; + request.sortOrder = sortOrder; + request.sortBy = sortBy; + request.opcRequestId = opcRequestId; + return request; + // new ListInstancesRequest(compartmentId, lifecycleState, displayName, id, limit, page, + // sortOrder, sortBy, 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() + .compartmentId(compartmentId) + .lifecycleState(lifecycleState) + .displayName(displayName) + .id(id) + .limit(limit) + .page(page) + .sortOrder(sortOrder) + .sortBy(sortBy) + .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(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(",lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(",displayName=").append(String.valueOf(this.displayName)); + sb.append(",id=").append(String.valueOf(this.id)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + 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 ListInstancesRequest)) { + return false; + } + + ListInstancesRequest other = (ListInstancesRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.displayName, other.displayName) + && java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.sortBy, other.sortBy) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @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.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestErrorsRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestErrorsRequest.java new file mode 100644 index 00000000000..e178a3d35f0 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestErrorsRequest.java @@ -0,0 +1,403 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use + * ListWorkRequestErrorsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListWorkRequestErrorsRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + public String getWorkRequestId() { + return workRequestId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page; + + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public String getPage() { + return page; + } + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public Integer getLimit() { + return limit; + } + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + private SortBy sortBy; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + Timestamp("timestamp"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + public SortBy getSortBy() { + return sortBy; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.pss.model.SortOrder getSortOrder() { + return sortOrder; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListWorkRequestErrorsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + * + * @param workRequestId the value to set + * @return this builder instance + */ + public Builder workRequestId(String workRequestId) { + this.workRequestId = workRequestId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page = null; + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit = null; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.pss.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + 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(ListWorkRequestErrorsRequest o) { + workRequestId(o.getWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + page(o.getPage()); + limit(o.getLimit()); + sortBy(o.getSortBy()); + sortOrder(o.getSortOrder()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListWorkRequestErrorsRequest 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 ListWorkRequestErrorsRequest + */ + public ListWorkRequestErrorsRequest build() { + ListWorkRequestErrorsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListWorkRequestErrorsRequest 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 ListWorkRequestErrorsRequest + */ + public ListWorkRequestErrorsRequest buildWithoutInvocationCallback() { + ListWorkRequestErrorsRequest request = new ListWorkRequestErrorsRequest(); + request.workRequestId = workRequestId; + request.opcRequestId = opcRequestId; + request.page = page; + request.limit = limit; + request.sortBy = sortBy; + request.sortOrder = sortOrder; + return request; + // new ListWorkRequestErrorsRequest(workRequestId, opcRequestId, page, limit, sortBy, + // sortOrder); + } + } + + /** + * 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() + .workRequestId(workRequestId) + .opcRequestId(opcRequestId) + .page(page) + .limit(limit) + .sortBy(sortBy) + .sortOrder(sortOrder); + } + + /** + * 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(",workRequestId=").append(String.valueOf(this.workRequestId)); + 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(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListWorkRequestErrorsRequest)) { + return false; + } + + ListWorkRequestErrorsRequest other = (ListWorkRequestErrorsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.workRequestId, other.workRequestId) + && 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.sortBy, other.sortBy) + && java.util.Objects.equals(this.sortOrder, other.sortOrder); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.workRequestId == null ? 43 : this.workRequestId.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.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestLogsRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestLogsRequest.java new file mode 100644 index 00000000000..a08e2e385b0 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestLogsRequest.java @@ -0,0 +1,401 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use ListWorkRequestLogsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListWorkRequestLogsRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + public String getWorkRequestId() { + return workRequestId; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page; + + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public String getPage() { + return page; + } + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public Integer getLimit() { + return limit; + } + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + private SortBy sortBy; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + Timestamp("timestamp"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + public SortBy getSortBy() { + return sortBy; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.pss.model.SortOrder getSortOrder() { + return sortOrder; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListWorkRequestLogsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + * + * @param workRequestId the value to set + * @return this builder instance + */ + public Builder workRequestId(String workRequestId) { + this.workRequestId = workRequestId; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page = null; + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit = null; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timestamp} is descending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.pss.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + 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(ListWorkRequestLogsRequest o) { + workRequestId(o.getWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + page(o.getPage()); + limit(o.getLimit()); + sortBy(o.getSortBy()); + sortOrder(o.getSortOrder()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListWorkRequestLogsRequest 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 ListWorkRequestLogsRequest + */ + public ListWorkRequestLogsRequest build() { + ListWorkRequestLogsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListWorkRequestLogsRequest 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 ListWorkRequestLogsRequest + */ + public ListWorkRequestLogsRequest buildWithoutInvocationCallback() { + ListWorkRequestLogsRequest request = new ListWorkRequestLogsRequest(); + request.workRequestId = workRequestId; + request.opcRequestId = opcRequestId; + request.page = page; + request.limit = limit; + request.sortBy = sortBy; + request.sortOrder = sortOrder; + return request; + // new ListWorkRequestLogsRequest(workRequestId, opcRequestId, page, limit, sortBy, + // sortOrder); + } + } + + /** + * 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() + .workRequestId(workRequestId) + .opcRequestId(opcRequestId) + .page(page) + .limit(limit) + .sortBy(sortBy) + .sortOrder(sortOrder); + } + + /** + * 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(",workRequestId=").append(String.valueOf(this.workRequestId)); + 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(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListWorkRequestLogsRequest)) { + return false; + } + + ListWorkRequestLogsRequest other = (ListWorkRequestLogsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.workRequestId, other.workRequestId) + && 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.sortBy, other.sortBy) + && java.util.Objects.equals(this.sortOrder, other.sortOrder); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.workRequestId == null ? 43 : this.workRequestId.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.sortBy == null ? 43 : this.sortBy.hashCode()); + result = (result * PRIME) + (this.sortOrder == null ? 43 : this.sortOrder.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestsRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestsRequest.java new file mode 100644 index 00000000000..9ab75f15913 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/ListWorkRequestsRequest.java @@ -0,0 +1,508 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use ListWorkRequestsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListWorkRequestsRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + public String getCompartmentId() { + return compartmentId; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + public String getWorkRequestId() { + return workRequestId; + } + /** A filter to return only work requests that match the given status. */ + private com.oracle.bmc.pss.model.OperationStatus status; + + /** A filter to return only work requests that match the given status. */ + public com.oracle.bmc.pss.model.OperationStatus getStatus() { + return status; + } + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * resource affected by the work request. + */ + private String resourceIdentifier; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * resource affected by the work request. + */ + public String getResourceIdentifier() { + return resourceIdentifier; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page; + + /** + * For list pagination. The value of the opc-next-page response header from the previous "List" + * call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public String getPage() { + return page; + } + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + public Integer getLimit() { + return limit; + } + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder; + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + public com.oracle.bmc.pss.model.SortOrder getSortOrder() { + return sortOrder; + } + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeAccepted} is descending. + */ + private SortBy sortBy; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeAccepted} is descending. + */ + public enum SortBy implements com.oracle.bmc.http.internal.BmcEnum { + TimeAccepted("timeAccepted"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (SortBy v : SortBy.values()) { + map.put(v.getValue(), v); + } + } + + SortBy(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static SortBy create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid SortBy: " + key); + } + }; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeAccepted} is descending. + */ + public SortBy getSortBy() { + return sortBy; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListWorkRequestsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + */ + private String compartmentId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * compartment in which to list resources. + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + */ + private String workRequestId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. + * + * @param workRequestId the value to set + * @return this builder instance + */ + public Builder workRequestId(String workRequestId) { + this.workRequestId = workRequestId; + return this; + } + + /** A filter to return only work requests that match the given status. */ + private com.oracle.bmc.pss.model.OperationStatus status = null; + + /** + * A filter to return only work requests that match the given status. + * + * @param status the value to set + * @return this builder instance + */ + public Builder status(com.oracle.bmc.pss.model.OperationStatus status) { + this.status = status; + return this; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * resource affected by the work request. + */ + private String resourceIdentifier = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * resource affected by the work request. + * + * @param resourceIdentifier the value to set + * @return this builder instance + */ + public Builder resourceIdentifier(String resourceIdentifier) { + this.resourceIdentifier = resourceIdentifier; + return this; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String page = null; + + /** + * For list pagination. The value of the opc-next-page response header from the previous + * "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private Integer limit = null; + + /** + * For list pagination. The maximum number of results per page, or items to return in a + * paginated "List" call. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). */ + private com.oracle.bmc.pss.model.SortOrder sortOrder = null; + + /** + * The sort order to use, either ascending ({@code ASC}) or descending ({@code DESC}). + * + * @param sortOrder the value to set + * @return this builder instance + */ + public Builder sortOrder(com.oracle.bmc.pss.model.SortOrder sortOrder) { + this.sortOrder = sortOrder; + return this; + } + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeAccepted} is descending. + */ + private SortBy sortBy = null; + + /** + * The field to sort by. Only one sort order may be provided. Default order for {@code + * timeAccepted} is descending. + * + * @param sortBy the value to set + * @return this builder instance + */ + public Builder sortBy(SortBy sortBy) { + this.sortBy = sortBy; + 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(ListWorkRequestsRequest o) { + compartmentId(o.getCompartmentId()); + workRequestId(o.getWorkRequestId()); + status(o.getStatus()); + resourceIdentifier(o.getResourceIdentifier()); + opcRequestId(o.getOpcRequestId()); + page(o.getPage()); + limit(o.getLimit()); + sortOrder(o.getSortOrder()); + sortBy(o.getSortBy()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListWorkRequestsRequest 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 ListWorkRequestsRequest + */ + public ListWorkRequestsRequest build() { + ListWorkRequestsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListWorkRequestsRequest 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 ListWorkRequestsRequest + */ + public ListWorkRequestsRequest buildWithoutInvocationCallback() { + ListWorkRequestsRequest request = new ListWorkRequestsRequest(); + request.compartmentId = compartmentId; + request.workRequestId = workRequestId; + request.status = status; + request.resourceIdentifier = resourceIdentifier; + request.opcRequestId = opcRequestId; + request.page = page; + request.limit = limit; + request.sortOrder = sortOrder; + request.sortBy = sortBy; + return request; + // new ListWorkRequestsRequest(compartmentId, workRequestId, status, resourceIdentifier, + // opcRequestId, page, limit, sortOrder, sortBy); + } + } + + /** + * 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) + .workRequestId(workRequestId) + .status(status) + .resourceIdentifier(resourceIdentifier) + .opcRequestId(opcRequestId) + .page(page) + .limit(limit) + .sortOrder(sortOrder) + .sortBy(sortBy); + } + + /** + * 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(",workRequestId=").append(String.valueOf(this.workRequestId)); + sb.append(",status=").append(String.valueOf(this.status)); + sb.append(",resourceIdentifier=").append(String.valueOf(this.resourceIdentifier)); + 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(",sortOrder=").append(String.valueOf(this.sortOrder)); + sb.append(",sortBy=").append(String.valueOf(this.sortBy)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListWorkRequestsRequest)) { + return false; + } + + ListWorkRequestsRequest other = (ListWorkRequestsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.workRequestId, other.workRequestId) + && java.util.Objects.equals(this.status, other.status) + && java.util.Objects.equals(this.resourceIdentifier, other.resourceIdentifier) + && 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.sortOrder, other.sortOrder) + && java.util.Objects.equals(this.sortBy, other.sortBy); + } + + @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.workRequestId == null ? 43 : this.workRequestId.hashCode()); + result = (result * PRIME) + (this.status == null ? 43 : this.status.hashCode()); + result = + (result * PRIME) + + (this.resourceIdentifier == null + ? 43 + : this.resourceIdentifier.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.sortOrder == null ? 43 : this.sortOrder.hashCode()); + result = (result * PRIME) + (this.sortBy == null ? 43 : this.sortBy.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/UpdateInstanceRequest.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/UpdateInstanceRequest.java new file mode 100644 index 00000000000..45d2966722d --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/requests/UpdateInstanceRequest.java @@ -0,0 +1,317 @@ +/** + * 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.pss.requests; + +import com.oracle.bmc.pss.model.*; +/** + * Example: Click here to see how to use UpdateInstanceRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class UpdateInstanceRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + public String getInstanceId() { + return instanceId; + } + /** The information to be updated. */ + private com.oracle.bmc.pss.model.UpdateInstanceDetails updateInstanceDetails; + + /** The information to be updated. */ + public com.oracle.bmc.pss.model.UpdateInstanceDetails getUpdateInstanceDetails() { + return updateInstanceDetails; + } + /** + * 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 will be 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 will be updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request IDs + * are letters, numbers, underscore, and dash. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.pss.model.UpdateInstanceDetails getBody$() { + return updateInstanceDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpdateInstanceRequest, com.oracle.bmc.pss.model.UpdateInstanceDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + */ + private String instanceId = null; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * Instance. + * + * @param instanceId the value to set + * @return this builder instance + */ + public Builder instanceId(String instanceId) { + this.instanceId = instanceId; + return this; + } + + /** The information to be updated. */ + private com.oracle.bmc.pss.model.UpdateInstanceDetails updateInstanceDetails = null; + + /** + * The information to be updated. + * + * @param updateInstanceDetails the value to set + * @return this builder instance + */ + public Builder updateInstanceDetails( + com.oracle.bmc.pss.model.UpdateInstanceDetails updateInstanceDetails) { + this.updateInstanceDetails = updateInstanceDetails; + 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 will be 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 will be 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; + } + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + */ + 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. The only valid characters for request + * IDs are letters, numbers, underscore, and dash. + * + * @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(UpdateInstanceRequest o) { + instanceId(o.getInstanceId()); + updateInstanceDetails(o.getUpdateInstanceDetails()); + ifMatch(o.getIfMatch()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpdateInstanceRequest 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 UpdateInstanceRequest + */ + public UpdateInstanceRequest build() { + UpdateInstanceRequest 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.pss.model.UpdateInstanceDetails body) { + updateInstanceDetails(body); + return this; + } + + /** + * Build the instance of UpdateInstanceRequest 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 UpdateInstanceRequest + */ + public UpdateInstanceRequest buildWithoutInvocationCallback() { + UpdateInstanceRequest request = new UpdateInstanceRequest(); + request.instanceId = instanceId; + request.updateInstanceDetails = updateInstanceDetails; + request.ifMatch = ifMatch; + request.opcRequestId = opcRequestId; + return request; + // new UpdateInstanceRequest(instanceId, updateInstanceDetails, ifMatch, 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() + .instanceId(instanceId) + .updateInstanceDetails(updateInstanceDetails) + .ifMatch(ifMatch) + .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(",instanceId=").append(String.valueOf(this.instanceId)); + sb.append(",updateInstanceDetails=").append(String.valueOf(this.updateInstanceDetails)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + 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 UpdateInstanceRequest)) { + return false; + } + + UpdateInstanceRequest other = (UpdateInstanceRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.instanceId, other.instanceId) + && java.util.Objects.equals(this.updateInstanceDetails, other.updateInstanceDetails) + && java.util.Objects.equals(this.ifMatch, other.ifMatch) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.instanceId == null ? 43 : this.instanceId.hashCode()); + result = + (result * PRIME) + + (this.updateInstanceDetails == null + ? 43 + : this.updateInstanceDetails.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/CancelWorkRequestResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/CancelWorkRequestResponse.java new file mode 100644 index 00000000000..66a4274c959 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/CancelWorkRequestResponse.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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class CancelWorkRequestResponse 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 CancelWorkRequestResponse( + 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(CancelWorkRequestResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CancelWorkRequestResponse build() { + return new CancelWorkRequestResponse(__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 CancelWorkRequestResponse)) { + return false; + } + + CancelWorkRequestResponse other = (CancelWorkRequestResponse) 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-pss/src/main/java/com/oracle/bmc/pss/responses/ChangeInstanceCompartmentResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ChangeInstanceCompartmentResponse.java new file mode 100644 index 00000000000..8d7b57fe76d --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ChangeInstanceCompartmentResponse.java @@ -0,0 +1,190 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ChangeInstanceCompartmentResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** + * 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", + "opcWorkRequestId", + "opcRequestId" + }) + private ChangeInstanceCompartmentResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + this.opcRequestId = opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + ChangeInstanceCompartmentResponse> { + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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(ChangeInstanceCompartmentResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ChangeInstanceCompartmentResponse build() { + return new ChangeInstanceCompartmentResponse( + __httpStatusCode__, headers, opcWorkRequestId, 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + 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 ChangeInstanceCompartmentResponse)) { + return false; + } + + ChangeInstanceCompartmentResponse other = (ChangeInstanceCompartmentResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/CreateInstanceResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/CreateInstanceResponse.java new file mode 100644 index 00000000000..03c376e2b01 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/CreateInstanceResponse.java @@ -0,0 +1,332 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class CreateInstanceResponse extends com.oracle.bmc.responses.BmcResponse { + /** URL for the created instance. The instance OCID is generated after this request is sent. */ + private String location; + + /** + * URL for the created instance. The instance OCID is generated after this request is sent. + * + * @return the value + */ + public String getLocation() { + return location; + } + + /** Same as location. */ + private String contentLocation; + + /** + * Same as location. + * + * @return the value + */ + public String getContentLocation() { + return contentLocation; + } + + /** 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 [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** + * 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; + } + + /** The returned {@code Instance} instance. */ + private com.oracle.bmc.pss.model.Instance instance; + + /** + * The returned {@code Instance} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.Instance getInstance() { + return instance; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "location", + "contentLocation", + "etag", + "opcWorkRequestId", + "opcRequestId", + "instance" + }) + private CreateInstanceResponse( + int __httpStatusCode__, + java.util.Map> headers, + String location, + String contentLocation, + String etag, + String opcWorkRequestId, + String opcRequestId, + com.oracle.bmc.pss.model.Instance instance) { + super(__httpStatusCode__, headers); + this.location = location; + this.contentLocation = contentLocation; + this.etag = etag; + this.opcWorkRequestId = opcWorkRequestId; + this.opcRequestId = opcRequestId; + this.instance = instance; + } + + 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; + } + + /** + * URL for the created instance. The instance OCID is generated after this request is sent. + */ + private String location; + + /** + * URL for the created instance. The instance OCID is generated after this request is sent. + * + * @param location the value to set + * @return this builder + */ + public Builder location(String location) { + this.location = location; + return this; + } + + /** Same as location. */ + private String contentLocation; + + /** + * Same as location. + * + * @param contentLocation the value to set + * @return this builder + */ + public Builder contentLocation(String contentLocation) { + this.contentLocation = contentLocation; + 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 [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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; + } + + /** The returned {@code Instance} instance. */ + private com.oracle.bmc.pss.model.Instance instance; + + /** + * The returned {@code Instance} instance. + * + * @param instance the value to set + * @return this builder + */ + public Builder instance(com.oracle.bmc.pss.model.Instance instance) { + this.instance = instance; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateInstanceResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + location(o.getLocation()); + contentLocation(o.getContentLocation()); + etag(o.getEtag()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + instance(o.getInstance()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateInstanceResponse build() { + return new CreateInstanceResponse( + __httpStatusCode__, + headers, + location, + contentLocation, + etag, + opcWorkRequestId, + opcRequestId, + instance); + } + } + + /** + * 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(",location=").append(String.valueOf(location)); + sb.append(",contentLocation=").append(String.valueOf(contentLocation)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",instance=").append(String.valueOf(instance)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateInstanceResponse)) { + return false; + } + + CreateInstanceResponse other = (CreateInstanceResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.location, other.location) + && java.util.Objects.equals(this.contentLocation, other.contentLocation) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.instance, other.instance); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.location == null ? 43 : this.location.hashCode()); + result = + (result * PRIME) + + (this.contentLocation == null ? 43 : this.contentLocation.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.instance == null ? 43 : this.instance.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/DeleteInstanceResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/DeleteInstanceResponse.java new file mode 100644 index 00000000000..76be3d61f80 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/DeleteInstanceResponse.java @@ -0,0 +1,189 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class DeleteInstanceResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** + * 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", + "opcWorkRequestId", + "opcRequestId" + }) + private DeleteInstanceResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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(DeleteInstanceResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteInstanceResponse build() { + return new DeleteInstanceResponse( + __httpStatusCode__, headers, opcWorkRequestId, 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + 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 DeleteInstanceResponse)) { + return false; + } + + DeleteInstanceResponse other = (DeleteInstanceResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/GetInstanceResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/GetInstanceResponse.java new file mode 100644 index 00000000000..229e9ed6907 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/GetInstanceResponse.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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class GetInstanceResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Instance} instance. */ + private com.oracle.bmc.pss.model.Instance instance; + + /** + * The returned {@code Instance} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.Instance getInstance() { + return instance; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "instance" + }) + private GetInstanceResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + com.oracle.bmc.pss.model.Instance instance) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.instance = instance; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** The returned {@code Instance} instance. */ + private com.oracle.bmc.pss.model.Instance instance; + + /** + * The returned {@code Instance} instance. + * + * @param instance the value to set + * @return this builder + */ + public Builder instance(com.oracle.bmc.pss.model.Instance instance) { + this.instance = instance; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetInstanceResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + instance(o.getInstance()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetInstanceResponse build() { + return new GetInstanceResponse( + __httpStatusCode__, headers, etag, opcRequestId, instance); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",instance=").append(String.valueOf(instance)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetInstanceResponse)) { + return false; + } + + GetInstanceResponse other = (GetInstanceResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.instance, other.instance); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.instance == null ? 43 : this.instance.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/GetWorkRequestResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/GetWorkRequestResponse.java new file mode 100644 index 00000000000..7e2386e6a4b --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/GetWorkRequestResponse.java @@ -0,0 +1,249 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class GetWorkRequestResponse extends com.oracle.bmc.responses.BmcResponse { + /** 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; + } + + /** + * 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; + } + + /** + * A decimal number representing the number of seconds the client should wait before polling + * this endpoint again. + */ + private Integer retryAfter; + + /** + * A decimal number representing the number of seconds the client should wait before polling + * this endpoint again. + * + * @return the value + */ + public Integer getRetryAfter() { + return retryAfter; + } + + /** The returned {@code WorkRequest} instance. */ + private com.oracle.bmc.pss.model.WorkRequest workRequest; + + /** + * The returned {@code WorkRequest} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.WorkRequest getWorkRequest() { + return workRequest; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "etag", + "opcRequestId", + "retryAfter", + "workRequest" + }) + private GetWorkRequestResponse( + int __httpStatusCode__, + java.util.Map> headers, + String etag, + String opcRequestId, + Integer retryAfter, + com.oracle.bmc.pss.model.WorkRequest workRequest) { + super(__httpStatusCode__, headers); + this.etag = etag; + this.opcRequestId = opcRequestId; + this.retryAfter = retryAfter; + this.workRequest = workRequest; + } + + 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; + } + + /** 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; + } + + /** + * 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; + } + + /** + * A decimal number representing the number of seconds the client should wait before polling + * this endpoint again. + */ + private Integer retryAfter; + + /** + * A decimal number representing the number of seconds the client should wait before polling + * this endpoint again. + * + * @param retryAfter the value to set + * @return this builder + */ + public Builder retryAfter(Integer retryAfter) { + this.retryAfter = retryAfter; + return this; + } + + /** The returned {@code WorkRequest} instance. */ + private com.oracle.bmc.pss.model.WorkRequest workRequest; + + /** + * The returned {@code WorkRequest} instance. + * + * @param workRequest the value to set + * @return this builder + */ + public Builder workRequest(com.oracle.bmc.pss.model.WorkRequest workRequest) { + this.workRequest = workRequest; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetWorkRequestResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + etag(o.getEtag()); + opcRequestId(o.getOpcRequestId()); + retryAfter(o.getRetryAfter()); + workRequest(o.getWorkRequest()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetWorkRequestResponse build() { + return new GetWorkRequestResponse( + __httpStatusCode__, headers, etag, opcRequestId, retryAfter, workRequest); + } + } + + /** + * 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(",etag=").append(String.valueOf(etag)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",retryAfter=").append(String.valueOf(retryAfter)); + sb.append(",workRequest=").append(String.valueOf(workRequest)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetWorkRequestResponse)) { + return false; + } + + GetWorkRequestResponse other = (GetWorkRequestResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.retryAfter, other.retryAfter) + && java.util.Objects.equals(this.workRequest, other.workRequest); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.retryAfter == null ? 43 : this.retryAfter.hashCode()); + result = (result * PRIME) + (this.workRequest == null ? 43 : this.workRequest.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListInstancesResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListInstancesResponse.java new file mode 100644 index 00000000000..79912864d7e --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListInstancesResponse.java @@ -0,0 +1,225 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListInstancesResponse 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 InstanceCollection} instance. */ + private com.oracle.bmc.pss.model.InstanceCollection instanceCollection; + + /** + * The returned {@code InstanceCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.InstanceCollection getInstanceCollection() { + return instanceCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "instanceCollection" + }) + private ListInstancesResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.pss.model.InstanceCollection instanceCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.instanceCollection = instanceCollection; + } + + 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 InstanceCollection} instance. */ + private com.oracle.bmc.pss.model.InstanceCollection instanceCollection; + + /** + * The returned {@code InstanceCollection} instance. + * + * @param instanceCollection the value to set + * @return this builder + */ + public Builder instanceCollection( + com.oracle.bmc.pss.model.InstanceCollection instanceCollection) { + this.instanceCollection = instanceCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListInstancesResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + instanceCollection(o.getInstanceCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListInstancesResponse build() { + return new ListInstancesResponse( + __httpStatusCode__, headers, opcRequestId, opcNextPage, instanceCollection); + } + } + + /** + * 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(",instanceCollection=").append(String.valueOf(instanceCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListInstancesResponse)) { + return false; + } + + ListInstancesResponse other = (ListInstancesResponse) 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.instanceCollection, other.instanceCollection); + } + + @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.instanceCollection == null + ? 43 + : this.instanceCollection.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestErrorsResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestErrorsResponse.java new file mode 100644 index 00000000000..75bc1ba504d --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestErrorsResponse.java @@ -0,0 +1,231 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListWorkRequestErrorsResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code WorkRequestErrorCollection} instance. */ + private com.oracle.bmc.pss.model.WorkRequestErrorCollection workRequestErrorCollection; + + /** + * The returned {@code WorkRequestErrorCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.WorkRequestErrorCollection getWorkRequestErrorCollection() { + return workRequestErrorCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcNextPage", + "opcRequestId", + "workRequestErrorCollection" + }) + private ListWorkRequestErrorsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcNextPage, + String opcRequestId, + com.oracle.bmc.pss.model.WorkRequestErrorCollection workRequestErrorCollection) { + super(__httpStatusCode__, headers); + this.opcNextPage = opcNextPage; + this.opcRequestId = opcRequestId; + this.workRequestErrorCollection = workRequestErrorCollection; + } + + 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; + } + + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code WorkRequestErrorCollection} instance. */ + private com.oracle.bmc.pss.model.WorkRequestErrorCollection workRequestErrorCollection; + + /** + * The returned {@code WorkRequestErrorCollection} instance. + * + * @param workRequestErrorCollection the value to set + * @return this builder + */ + public Builder workRequestErrorCollection( + com.oracle.bmc.pss.model.WorkRequestErrorCollection workRequestErrorCollection) { + this.workRequestErrorCollection = workRequestErrorCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListWorkRequestErrorsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcNextPage(o.getOpcNextPage()); + opcRequestId(o.getOpcRequestId()); + workRequestErrorCollection(o.getWorkRequestErrorCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListWorkRequestErrorsResponse build() { + return new ListWorkRequestErrorsResponse( + __httpStatusCode__, + headers, + opcNextPage, + opcRequestId, + workRequestErrorCollection); + } + } + + /** + * 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(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",workRequestErrorCollection=") + .append(String.valueOf(workRequestErrorCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListWorkRequestErrorsResponse)) { + return false; + } + + ListWorkRequestErrorsResponse other = (ListWorkRequestErrorsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals( + this.workRequestErrorCollection, other.workRequestErrorCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.workRequestErrorCollection == null + ? 43 + : this.workRequestErrorCollection.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestLogsResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestLogsResponse.java new file mode 100644 index 00000000000..8c9edf5e108 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestLogsResponse.java @@ -0,0 +1,234 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListWorkRequestLogsResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code WorkRequestLogEntryCollection} instance. */ + private com.oracle.bmc.pss.model.WorkRequestLogEntryCollection workRequestLogEntryCollection; + + /** + * The returned {@code WorkRequestLogEntryCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.WorkRequestLogEntryCollection + getWorkRequestLogEntryCollection() { + return workRequestLogEntryCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcNextPage", + "opcRequestId", + "workRequestLogEntryCollection" + }) + private ListWorkRequestLogsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcNextPage, + String opcRequestId, + com.oracle.bmc.pss.model.WorkRequestLogEntryCollection workRequestLogEntryCollection) { + super(__httpStatusCode__, headers); + this.opcNextPage = opcNextPage; + this.opcRequestId = opcRequestId; + this.workRequestLogEntryCollection = workRequestLogEntryCollection; + } + + 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; + } + + /** + * 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; + } + + /** + * 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; + } + + /** The returned {@code WorkRequestLogEntryCollection} instance. */ + private com.oracle.bmc.pss.model.WorkRequestLogEntryCollection + workRequestLogEntryCollection; + + /** + * The returned {@code WorkRequestLogEntryCollection} instance. + * + * @param workRequestLogEntryCollection the value to set + * @return this builder + */ + public Builder workRequestLogEntryCollection( + com.oracle.bmc.pss.model.WorkRequestLogEntryCollection + workRequestLogEntryCollection) { + this.workRequestLogEntryCollection = workRequestLogEntryCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListWorkRequestLogsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcNextPage(o.getOpcNextPage()); + opcRequestId(o.getOpcRequestId()); + workRequestLogEntryCollection(o.getWorkRequestLogEntryCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListWorkRequestLogsResponse build() { + return new ListWorkRequestLogsResponse( + __httpStatusCode__, + headers, + opcNextPage, + opcRequestId, + workRequestLogEntryCollection); + } + } + + /** + * 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(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",workRequestLogEntryCollection=") + .append(String.valueOf(workRequestLogEntryCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListWorkRequestLogsResponse)) { + return false; + } + + ListWorkRequestLogsResponse other = (ListWorkRequestLogsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals( + this.workRequestLogEntryCollection, other.workRequestLogEntryCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.workRequestLogEntryCollection == null + ? 43 + : this.workRequestLogEntryCollection.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestsResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestsResponse.java new file mode 100644 index 00000000000..dbc686bdcc9 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/ListWorkRequestsResponse.java @@ -0,0 +1,232 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class ListWorkRequestsResponse 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 WorkRequestSummaryCollection} instance. */ + private com.oracle.bmc.pss.model.WorkRequestSummaryCollection workRequestSummaryCollection; + + /** + * The returned {@code WorkRequestSummaryCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.pss.model.WorkRequestSummaryCollection getWorkRequestSummaryCollection() { + return workRequestSummaryCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "workRequestSummaryCollection" + }) + private ListWorkRequestsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.pss.model.WorkRequestSummaryCollection workRequestSummaryCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.workRequestSummaryCollection = workRequestSummaryCollection; + } + + 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 WorkRequestSummaryCollection} instance. */ + private com.oracle.bmc.pss.model.WorkRequestSummaryCollection workRequestSummaryCollection; + + /** + * The returned {@code WorkRequestSummaryCollection} instance. + * + * @param workRequestSummaryCollection the value to set + * @return this builder + */ + public Builder workRequestSummaryCollection( + com.oracle.bmc.pss.model.WorkRequestSummaryCollection + workRequestSummaryCollection) { + this.workRequestSummaryCollection = workRequestSummaryCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListWorkRequestsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + workRequestSummaryCollection(o.getWorkRequestSummaryCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListWorkRequestsResponse build() { + return new ListWorkRequestsResponse( + __httpStatusCode__, + headers, + opcRequestId, + opcNextPage, + workRequestSummaryCollection); + } + } + + /** + * 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(",workRequestSummaryCollection=") + .append(String.valueOf(workRequestSummaryCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListWorkRequestsResponse)) { + return false; + } + + ListWorkRequestsResponse other = (ListWorkRequestsResponse) 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.workRequestSummaryCollection, other.workRequestSummaryCollection); + } + + @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.workRequestSummaryCollection == null + ? 43 + : this.workRequestSummaryCollection.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/UpdateInstanceResponse.java b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/UpdateInstanceResponse.java new file mode 100644 index 00000000000..9377789df15 --- /dev/null +++ b/bmc-pss/src/main/java/com/oracle/bmc/pss/responses/UpdateInstanceResponse.java @@ -0,0 +1,189 @@ +/** + * 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.pss.responses; + +import com.oracle.bmc.pss.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20260831") +public class UpdateInstanceResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @return the value + */ + public String getOpcWorkRequestId() { + return opcWorkRequestId; + } + + /** + * 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", + "opcWorkRequestId", + "opcRequestId" + }) + private UpdateInstanceResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcWorkRequestId, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcWorkRequestId = opcWorkRequestId; + 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; + } + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + */ + private String opcWorkRequestId; + + /** + * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the + * asynchronous work request. Use GetWorkRequest with this ID to track the status of the + * request. + * + * @param opcWorkRequestId the value to set + * @return this builder + */ + public Builder opcWorkRequestId(String opcWorkRequestId) { + this.opcWorkRequestId = opcWorkRequestId; + 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(UpdateInstanceResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcWorkRequestId(o.getOpcWorkRequestId()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpdateInstanceResponse build() { + return new UpdateInstanceResponse( + __httpStatusCode__, headers, opcWorkRequestId, 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(",opcWorkRequestId=").append(String.valueOf(opcWorkRequestId)); + 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 UpdateInstanceResponse)) { + return false; + } + + UpdateInstanceResponse other = (UpdateInstanceResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcWorkRequestId, other.opcWorkRequestId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.opcWorkRequestId == null ? 43 : this.opcWorkRequestId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-pss/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-pss/reflect-config.json b/bmc-pss/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-pss/reflect-config.json new file mode 100644 index 00000000000..8871b3ac1a5 --- /dev/null +++ b/bmc-pss/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-pss/reflect-config.json @@ -0,0 +1,234 @@ +[ + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.ActionType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.ChangeInstanceCompartmentDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.CreateInstanceDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.CreateInstanceDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.Instance", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.Instance$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.Instance$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.InstanceCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.InstanceCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.InstanceSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.InstanceSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.OperationStatus", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.OperationType", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.SortOrder", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.UpdateInstanceDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.UpdateInstanceDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequest", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequest$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestError", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestError$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestErrorCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestErrorCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestLogEntry", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestLogEntry$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestLogEntryCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestLogEntryCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestResource", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestResource$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestResourceMetadataKey", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestSummaryCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.pss.model.WorkRequestSummaryCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + } +] \ No newline at end of file diff --git a/bmc-pss/src/main/resources/com/oracle/bmc/pss/client.properties b/bmc-pss/src/main/resources/com/oracle/bmc/pss/client.properties new file mode 100644 index 00000000000..3c2c331f5c7 --- /dev/null +++ b/bmc-pss/src/main/resources/com/oracle/bmc/pss/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: 20260831") \ No newline at end of file diff --git a/bmc-queue/pom.xml b/bmc-queue/pom.xml index 6916705cde4..ab9cfff66a5 100644 --- a/bmc-queue/pom.xml +++ b/bmc-queue/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-queue @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-recovery/pom.xml b/bmc-recovery/pom.xml index f2ad33c3677..48b15c1e8b3 100644 --- a/bmc-recovery/pom.xml +++ b/bmc-recovery/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-recovery @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-redis/pom.xml b/bmc-redis/pom.xml index 28d6337eabb..1f79aef375e 100644 --- a/bmc-redis/pom.xml +++ b/bmc-redis/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-redis @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-resourceanalytics/pom.xml b/bmc-resourceanalytics/pom.xml index 65093f0bfcf..732bd034495 100644 --- a/bmc-resourceanalytics/pom.xml +++ b/bmc-resourceanalytics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-resourceanalytics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-resourcemanager/pom.xml b/bmc-resourcemanager/pom.xml index d336bbdb43c..0c038410b0b 100644 --- a/bmc-resourcemanager/pom.xml +++ b/bmc-resourcemanager/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-resourcemanager @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-resourcescheduler/pom.xml b/bmc-resourcescheduler/pom.xml index f01158ebe78..7b9ba1c6e25 100644 --- a/bmc-resourcescheduler/pom.xml +++ b/bmc-resourcescheduler/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-resourcescheduler @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-resourcesearch/pom.xml b/bmc-resourcesearch/pom.xml index cbdbadbf5c3..821c97db592 100644 --- a/bmc-resourcesearch/pom.xml +++ b/bmc-resourcesearch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-resourcesearch @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-rover/pom.xml b/bmc-rover/pom.xml index e0b9fe5069f..ec0f6747ee4 100644 --- a/bmc-rover/pom.xml +++ b/bmc-rover/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-rover @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-sch/pom.xml b/bmc-sch/pom.xml index 0b3ec15d702..b3ae3acc023 100644 --- a/bmc-sch/pom.xml +++ b/bmc-sch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-sch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-secrets/pom.xml b/bmc-secrets/pom.xml index 67fd345d4c3..ddefa023e47 100644 --- a/bmc-secrets/pom.xml +++ b/bmc-secrets/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-secrets @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-securityattribute/pom.xml b/bmc-securityattribute/pom.xml index 9cfe3a143f7..02e327d395a 100644 --- a/bmc-securityattribute/pom.xml +++ b/bmc-securityattribute/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-securityattribute @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-self/pom.xml b/bmc-self/pom.xml index ad63a90a783..9e93cc2b33b 100644 --- a/bmc-self/pom.xml +++ b/bmc-self/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-self @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-servicecatalog/pom.xml b/bmc-servicecatalog/pom.xml index 8ea052702bc..74b4df0fe8c 100644 --- a/bmc-servicecatalog/pom.xml +++ b/bmc-servicecatalog/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-servicecatalog @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-servicemanagerproxy/pom.xml b/bmc-servicemanagerproxy/pom.xml index 58be5517a8b..57aceb40df9 100644 --- a/bmc-servicemanagerproxy/pom.xml +++ b/bmc-servicemanagerproxy/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-servicemanagerproxy @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ 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 2ffbc280491..1aa75524179 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.98.0 + 3.99.0 ../pom.xml oci-java-sdk-shaded-full diff --git a/bmc-shaded/pom.xml b/bmc-shaded/pom.xml index 176634a02fb..7b0ae3c5936 100644 --- a/bmc-shaded/pom.xml +++ b/bmc-shaded/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml diff --git a/bmc-stackmonitoring/pom.xml b/bmc-stackmonitoring/pom.xml index b2f186d2e72..21960585b3f 100644 --- a/bmc-stackmonitoring/pom.xml +++ b/bmc-stackmonitoring/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-stackmonitoring @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-streaming/pom.xml b/bmc-streaming/pom.xml index f8bbb85fc99..fe3295cbd7d 100644 --- a/bmc-streaming/pom.xml +++ b/bmc-streaming/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-streaming @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-tenantmanagercontrolplane/pom.xml b/bmc-tenantmanagercontrolplane/pom.xml index ca174c9b6ca..8fd6ef4abfb 100644 --- a/bmc-tenantmanagercontrolplane/pom.xml +++ b/bmc-tenantmanagercontrolplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-tenantmanagercontrolplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-threatintelligence/pom.xml b/bmc-threatintelligence/pom.xml index d682dd43f41..2415ca586f4 100644 --- a/bmc-threatintelligence/pom.xml +++ b/bmc-threatintelligence/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-threatintelligence @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-usage/pom.xml b/bmc-usage/pom.xml index cba67fb732b..b47ad95331e 100644 --- a/bmc-usage/pom.xml +++ b/bmc-usage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-usage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-usageapi/pom.xml b/bmc-usageapi/pom.xml index 5a6f43d3090..b082b79f609 100644 --- a/bmc-usageapi/pom.xml +++ b/bmc-usageapi/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-usageapi @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-vault/pom.xml b/bmc-vault/pom.xml index c0774e96f0e..9d0956b9095 100644 --- a/bmc-vault/pom.xml +++ b/bmc-vault/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-vault @@ -15,12 +15,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-vbsinst/pom.xml b/bmc-vbsinst/pom.xml index 091cdf23a3b..a2b1a72c181 100644 --- a/bmc-vbsinst/pom.xml +++ b/bmc-vbsinst/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-vbsinst @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-visualbuilder/pom.xml b/bmc-visualbuilder/pom.xml index 466adf50d78..719bcc21bc7 100644 --- a/bmc-visualbuilder/pom.xml +++ b/bmc-visualbuilder/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-visualbuilder @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-vnmonitoring/pom.xml b/bmc-vnmonitoring/pom.xml index 2a2c3facbba..d2b537c5cfa 100644 --- a/bmc-vnmonitoring/pom.xml +++ b/bmc-vnmonitoring/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-vnmonitoring @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-vulnerabilityscanning/pom.xml b/bmc-vulnerabilityscanning/pom.xml index 9e0e6b83851..f7082236246 100644 --- a/bmc-vulnerabilityscanning/pom.xml +++ b/bmc-vulnerabilityscanning/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-vulnerabilityscanning @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-waa/pom.xml b/bmc-waa/pom.xml index 3140b2f5655..6573677ad38 100644 --- a/bmc-waa/pom.xml +++ b/bmc-waa/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-waa @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-waas/pom.xml b/bmc-waas/pom.xml index de9d493bdc2..c967c6daa03 100644 --- a/bmc-waas/pom.xml +++ b/bmc-waas/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-waas @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-waf/pom.xml b/bmc-waf/pom.xml index 0f2ce40064a..2811feeff62 100644 --- a/bmc-waf/pom.xml +++ b/bmc-waf/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-waf @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-wlms/pom.xml b/bmc-wlms/pom.xml index 15688ed96fb..f0bb7c21b40 100644 --- a/bmc-wlms/pom.xml +++ b/bmc-wlms/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-wlms @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-workrequests/pom.xml b/bmc-workrequests/pom.xml index 3a58d1762a9..b23dffa7c7a 100644 --- a/bmc-workrequests/pom.xml +++ b/bmc-workrequests/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-workrequests @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/bmc-zpr/pom.xml b/bmc-zpr/pom.xml index 77b2c1b7121..b0ae62894a8 100644 --- a/bmc-zpr/pom.xml +++ b/bmc-zpr/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 ../pom.xml oci-java-sdk-zpr @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.98.0 + 3.99.0 \ No newline at end of file diff --git a/pom.xml b/pom.xml index 3e8148ac2a5..39028556382 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk oci-java-sdk - 3.98.0 + 3.99.0 pom Oracle Cloud Infrastructure SDK This project contains the SDK used for Oracle Cloud Infrastructure @@ -685,6 +685,8 @@ bmc-distributeddatabase bmc-ociproductcatalog bmc-ccdoffers + bmc-pss + bmc-generativeaisandbox bmc-containerengine bmc-keymanagement bmc-resourcesearch