diff --git a/CHANGELOG.md b/CHANGELOG.md index ba94a4f9db..95297293d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,24 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/). +## 2.0.0 - 2021-07-20 +### Added +- Support for schedules, schedule tasks, REST tasks, operators, S3, and Fusion Apps in the Data Integration service +- Support for getting available updates and update histories for VM clusters in the Database service +- Support for downloading network validation reports for Exadata network resources in the Database service +- Support for patch and upgrade of Grid Infrastructure (GI), and update of DomU OS software for VM clusters in the Database service +- Support for updating data guard associations in the Database service + +### Breaking Changes +- Support for retries by default in the SDK. To disable default retries, set the environment variable `OCI_SDK_DEFAULT_RETRY_ENABLED` to `false` or programmatically set the value of `common.GenericRetrier.defaultRetryConfiguration` +- Support for circuit breaker by default in the SDK. To disable default circuit breaker, set the environment variable `OCI_SDK_DEFAULT_CIRCUITBREAKER_ENABLED` to `false` or programmatically set the value of `common.CircuitBreaker.defaultConfiguration` +- Removed the property `isFilePattern` from `CsvFormatAttribute` model under the Data Integration service +- Removed the property `bucketName` from `OracleAtpWriteAttributes` model under the Data Integration service +- Removed the property `bucketName` from `OracleAdwcWriteAttributes` model under the Data Integration service +- Changed the data type of  property `type` in `ShapeField` model from `string` to `any` under the Data Integration service +- Changed the data type of  property `type` in `NativeShapeField` model from `string` to `any` under the Data Integration service +- Changed the data type of property `lifecycleState` in `ListWorkspacesRequest` from `ListWorkspacesRequest.LifecycleState` to `string` under the Data Integration service + ## 1.23.0 - 2021-07-13 ### Added - Support for the AI Anomaly Detection service diff --git a/lib/aianomalydetection/lib/client.ts b/lib/aianomalydetection/lib/client.ts index e9495517db..0fa6a26695 100644 --- a/lib/aianomalydetection/lib/client.ts +++ b/lib/aianomalydetection/lib/client.ts @@ -48,6 +48,10 @@ export class AnomalyDetectionClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/aianomalydetection/package.json b/lib/aianomalydetection/package.json index 0561d84575..de86305556 100644 --- a/lib/aianomalydetection/package.json +++ b/lib/aianomalydetection/package.json @@ -1,6 +1,6 @@ { "name": "oci-aianomalydetection", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Ai Anomaly Detection Service", "repository": { "type": "git", diff --git a/lib/ailanguage/lib/client.ts b/lib/ailanguage/lib/client.ts index 710de51c90..136557a380 100644 --- a/lib/ailanguage/lib/client.ts +++ b/lib/ailanguage/lib/client.ts @@ -46,6 +46,10 @@ export class AIServiceLanguageClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/ailanguage/package.json b/lib/ailanguage/package.json index 68afed1a5b..e9d5fbc97b 100644 --- a/lib/ailanguage/package.json +++ b/lib/ailanguage/package.json @@ -1,6 +1,6 @@ { "name": "oci-ailanguage", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Ai Language Service", "repository": { "type": "git", diff --git a/lib/analytics/lib/client.ts b/lib/analytics/lib/client.ts index 19a60b528d..451f1ac676 100644 --- a/lib/analytics/lib/client.ts +++ b/lib/analytics/lib/client.ts @@ -46,6 +46,10 @@ export class AnalyticsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/analytics/package.json b/lib/analytics/package.json index bd63cca1ae..34f96cbff2 100644 --- a/lib/analytics/package.json +++ b/lib/analytics/package.json @@ -1,6 +1,6 @@ { "name": "oci-analytics", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Analytics Service", "repository": { "type": "git", diff --git a/lib/announcementsservice/lib/client.ts b/lib/announcementsservice/lib/client.ts index 1f77fd65ad..949f434f98 100644 --- a/lib/announcementsservice/lib/client.ts +++ b/lib/announcementsservice/lib/client.ts @@ -43,6 +43,10 @@ export class AnnouncementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -389,6 +393,10 @@ export class AnnouncementsPreferencesClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/announcementsservice/package.json b/lib/announcementsservice/package.json index f1abcf18ca..25ce3c723e 100644 --- a/lib/announcementsservice/package.json +++ b/lib/announcementsservice/package.json @@ -1,6 +1,6 @@ { "name": "oci-announcementsservice", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Announcement Service", "repository": { "type": "git", diff --git a/lib/apigateway/lib/client.ts b/lib/apigateway/lib/client.ts index f604b980ea..a8cc7f0cfd 100644 --- a/lib/apigateway/lib/client.ts +++ b/lib/apigateway/lib/client.ts @@ -50,6 +50,10 @@ export class ApiGatewayClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1590,6 +1594,10 @@ export class DeploymentClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -2112,6 +2120,10 @@ export class GatewayClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -2633,6 +2645,10 @@ export class WorkRequestsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/apigateway/package.json b/lib/apigateway/package.json index 59bd76bba9..8a1f2b2bf5 100644 --- a/lib/apigateway/package.json +++ b/lib/apigateway/package.json @@ -1,6 +1,6 @@ { "name": "oci-apigateway", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for API gateway service", "repository": { "type": "git", diff --git a/lib/apmcontrolplane/lib/client.ts b/lib/apmcontrolplane/lib/client.ts index efea873413..03897037d5 100644 --- a/lib/apmcontrolplane/lib/client.ts +++ b/lib/apmcontrolplane/lib/client.ts @@ -47,6 +47,10 @@ export class ApmDomainClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/apmcontrolplane/package.json b/lib/apmcontrolplane/package.json index e5f3cafe19..99bc1e204d 100644 --- a/lib/apmcontrolplane/package.json +++ b/lib/apmcontrolplane/package.json @@ -1,6 +1,6 @@ { "name": "oci-apmcontrolplane", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Apm Control Plane Service", "repository": { "type": "git", diff --git a/lib/apmsynthetics/lib/client.ts b/lib/apmsynthetics/lib/client.ts index 2ebc66779f..e2b18d8c18 100644 --- a/lib/apmsynthetics/lib/client.ts +++ b/lib/apmsynthetics/lib/client.ts @@ -43,6 +43,10 @@ export class ApmSyntheticClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/apmsynthetics/package.json b/lib/apmsynthetics/package.json index 7fcbbf3938..9e51a7a1c4 100644 --- a/lib/apmsynthetics/package.json +++ b/lib/apmsynthetics/package.json @@ -1,6 +1,6 @@ { "name": "oci-apmsynthetics", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Apm Synthetics Service", "repository": { "type": "git", diff --git a/lib/apmtraces/lib/client.ts b/lib/apmtraces/lib/client.ts index 627f7e5499..ab0c69d7f7 100644 --- a/lib/apmtraces/lib/client.ts +++ b/lib/apmtraces/lib/client.ts @@ -44,6 +44,10 @@ export class QueryClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -389,6 +393,10 @@ export class TraceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/apmtraces/package.json b/lib/apmtraces/package.json index 12ec4b3028..394cf91d29 100644 --- a/lib/apmtraces/package.json +++ b/lib/apmtraces/package.json @@ -1,6 +1,6 @@ { "name": "oci-apmtraces", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Apm Traces Service", "repository": { "type": "git", diff --git a/lib/applicationmigration/lib/client.ts b/lib/applicationmigration/lib/client.ts index abdcc2c470..f5a9fb78e9 100644 --- a/lib/applicationmigration/lib/client.ts +++ b/lib/applicationmigration/lib/client.ts @@ -50,6 +50,10 @@ export class ApplicationMigrationClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/applicationmigration/package.json b/lib/applicationmigration/package.json index a726be34ab..ed4e11a6be 100644 --- a/lib/applicationmigration/package.json +++ b/lib/applicationmigration/package.json @@ -1,6 +1,6 @@ { "name": "oci-applicationmigration", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Application Migration service", "repository": { "type": "git", diff --git a/lib/artifacts/lib/client.ts b/lib/artifacts/lib/client.ts index 00b007d589..739bcc4cbc 100644 --- a/lib/artifacts/lib/client.ts +++ b/lib/artifacts/lib/client.ts @@ -46,6 +46,10 @@ export class ArtifactsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/artifacts/package.json b/lib/artifacts/package.json index b25e6fee74..e681287869 100644 --- a/lib/artifacts/package.json +++ b/lib/artifacts/package.json @@ -1,6 +1,6 @@ { "name": "oci-artifacts", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Artifacts Service", "repository": { "type": "git", diff --git a/lib/audit/lib/client.ts b/lib/audit/lib/client.ts index b7a4bcd27b..fabcc718a4 100644 --- a/lib/audit/lib/client.ts +++ b/lib/audit/lib/client.ts @@ -47,6 +47,10 @@ export class AuditClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/audit/package.json b/lib/audit/package.json index 14bab0add0..76f7307a46 100644 --- a/lib/audit/package.json +++ b/lib/audit/package.json @@ -1,6 +1,6 @@ { "name": "oci-audit", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Audit Service", "repository": { "type": "git", diff --git a/lib/autoscaling/lib/client.ts b/lib/autoscaling/lib/client.ts index df2a357a89..3d3b86d5e7 100644 --- a/lib/autoscaling/lib/client.ts +++ b/lib/autoscaling/lib/client.ts @@ -49,6 +49,10 @@ export class AutoScalingClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/autoscaling/package.json b/lib/autoscaling/package.json index c2bdc00f8e..832497d237 100644 --- a/lib/autoscaling/package.json +++ b/lib/autoscaling/package.json @@ -1,6 +1,6 @@ { "name": "oci-autoscaling", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Autoscaling Service", "repository": { "type": "git", diff --git a/lib/bastion/lib/client.ts b/lib/bastion/lib/client.ts index ef2d70cfae..2b899fa328 100644 --- a/lib/bastion/lib/client.ts +++ b/lib/bastion/lib/client.ts @@ -45,6 +45,10 @@ export class BastionClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/bastion/package.json b/lib/bastion/package.json index d21404c081..fd73f14d40 100644 --- a/lib/bastion/package.json +++ b/lib/bastion/package.json @@ -1,6 +1,6 @@ { "name": "oci-bastion", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Bastion Service", "repository": { "type": "git", diff --git a/lib/bds/lib/client.ts b/lib/bds/lib/client.ts index 72752073c6..ce216e6272 100644 --- a/lib/bds/lib/client.ts +++ b/lib/bds/lib/client.ts @@ -47,6 +47,10 @@ export class BdsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/bds/package.json b/lib/bds/package.json index ff286a8bfa..4272de251a 100644 --- a/lib/bds/package.json +++ b/lib/bds/package.json @@ -1,6 +1,6 @@ { "name": "oci-bds", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for BDS Service", "repository": { "type": "git", diff --git a/lib/blockchain/lib/client.ts b/lib/blockchain/lib/client.ts index 5586cf1585..0610f85ef9 100644 --- a/lib/blockchain/lib/client.ts +++ b/lib/blockchain/lib/client.ts @@ -44,6 +44,10 @@ export class BlockchainPlatformClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/blockchain/package.json b/lib/blockchain/package.json index a58a5e74a4..7e73891efc 100644 --- a/lib/blockchain/package.json +++ b/lib/blockchain/package.json @@ -1,6 +1,6 @@ { "name": "oci-blockchain", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Blockchain Service", "repository": { "type": "git", diff --git a/lib/budget/lib/client.ts b/lib/budget/lib/client.ts index b20553dbb3..c933275d3a 100644 --- a/lib/budget/lib/client.ts +++ b/lib/budget/lib/client.ts @@ -45,6 +45,10 @@ export class BudgetClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/budget/package.json b/lib/budget/package.json index bdc88bfb33..8621545279 100644 --- a/lib/budget/package.json +++ b/lib/budget/package.json @@ -1,6 +1,6 @@ { "name": "oci-budget", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Budget Service", "repository": { "type": "git", diff --git a/lib/cims/lib/client.ts b/lib/cims/lib/client.ts index a34e3e9382..328a6543c8 100644 --- a/lib/cims/lib/client.ts +++ b/lib/cims/lib/client.ts @@ -44,6 +44,10 @@ export class IncidentClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -643,6 +647,10 @@ export class UserClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/cims/package.json b/lib/cims/package.json index 7d740ab041..2d34f0f7b1 100644 --- a/lib/cims/package.json +++ b/lib/cims/package.json @@ -1,6 +1,6 @@ { "name": "oci-cims", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Cims ", "repository": { "type": "git", diff --git a/lib/cloudguard/lib/client.ts b/lib/cloudguard/lib/client.ts index 320e22d444..b1695c31cf 100644 --- a/lib/cloudguard/lib/client.ts +++ b/lib/cloudguard/lib/client.ts @@ -45,6 +45,10 @@ export class CloudGuardClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/cloudguard/package.json b/lib/cloudguard/package.json index bddb0148cc..8811c58d1e 100644 --- a/lib/cloudguard/package.json +++ b/lib/cloudguard/package.json @@ -1,6 +1,6 @@ { "name": "oci-cloudguard", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Cloud Guard Service", "repository": { "type": "git", diff --git a/lib/common/index.ts b/lib/common/index.ts index 238fbb3823..168c77f4a8 100644 --- a/lib/common/index.ts +++ b/lib/common/index.ts @@ -10,6 +10,7 @@ import * as helper from "./lib/helper"; import * as http from "./lib/http"; import * as serializer from "./lib/object-serializer"; import * as range from "./lib/range"; +import * as utils from "./lib/utils"; import { Region } from "./lib/region"; import { Realm } from "./lib/realm"; import { EndpointBuilder } from "./lib/endpoint-builder"; @@ -47,7 +48,7 @@ import { import { ConfigFileAuthenticationDetailsProvider } from "./lib/auth/config-file-auth"; import getChunk from "./lib/chunker"; import { ConfigFileReader } from "./lib/config-file-reader"; -import { Method, composeRequest } from "./lib/request-generator"; +import { Method, composeRequest, Params } from "./lib/request-generator"; import { composeResponse } from "./lib/response-generator"; export import AuthenticationDetailsProvider = auth.AuthenticationDetailsProvider; export import SimpleAuthenticationDetailsProvider = auth.SimpleAuthenticationDetailsProvider; @@ -92,6 +93,7 @@ export { genericPaginateResponses, Method, composeRequest, + Params, composeResponse, HttpRequest, ConfigFileAuthenticationDetailsProvider, @@ -107,5 +109,6 @@ export { ClientConfiguration, Constants, CircuitBreaker, - getChunk + getChunk, + utils }; diff --git a/lib/common/lib/circuit-breaker.ts b/lib/common/lib/circuit-breaker.ts index 4ab15d78b5..01ca144613 100644 --- a/lib/common/lib/circuit-breaker.ts +++ b/lib/common/lib/circuit-breaker.ts @@ -3,8 +3,42 @@ * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. */ +import { handleErrorBody, handleErrorResponse } from "./helper"; +import { DefaultRetryCondition } from "./retrier"; + const Breaker = require("opossum"); +async function FetchWrapper(req: RequestInfo) { + return new Promise(async (resolve, reject) => { + try { + const response = await fetch(req); + if (response.status && response.status >= 200 && response.status <= 299) { + resolve({ response }); + } else { + const responseClone = response.clone(); + const errBody = await handleErrorBody(responseClone); + const errorObject = handleErrorResponse(responseClone, errBody); + reject({ + response, + errorObject + }); + } + } catch (e) { + // If we get here, that means response was a client side error + reject(e); + } + }); +} + +function defaultErrorFilterFunction(e: any) { + console.log("error from defaultErrorFunction: ", e); + // Only consider client side errors or retry-able server errors + if (e.code || (e.errorObject && DefaultRetryCondition.shouldBeRetried(e.errorObject))) { + return false; + } + return true; +} + // For more information on options visit: https://nodeshift.dev/opossum/ interface CircuitBreakerOptions { timeout?: number; @@ -20,30 +54,61 @@ interface CircuitBreakerOptions { volumeThreshold?: number; errorFilter?: Function; cache?: boolean; + disableClientCircuitBreaker?: boolean; // Configuration to disable client level circuit breaker } export default class CircuitBreaker { - static enableDefault = false; - circuit = null; - static defaultCircuit = new Breaker(fetch, { + circuit: any = null; + noCircuit: boolean = false; + static EnableGlobalCircuitBreaker = true; // Configuration to turn on/off the global circuit breaker. + static EnableDefaultCircuitBreaker = process.env.OCI_SDK_DEFAULT_CIRCUITBREAKER_ENABLED; + + private static DefaultConfiguration: CircuitBreakerOptions = { timeout: 10000, // If our function takes longer than 10 seconds, trigger a failure - errorThresholdPercentage: 50, // When 50% of requests fail, trip the circuit - resetTimeout: 30000 // After 30 seconds, try again. - }); + errorThresholdPercentage: 80, // When 80% of requests fail, trip the circuit + resetTimeout: 30000, // After 30 seconds, try again. + rollingCountTimeout: 120000, + rollingCountBuckets: 120, + volumeThreshold: 10, + errorFilter: defaultErrorFilterFunction + }; - static internalCircuit = new Breaker(fetch, { + static get defaultConfiguration(): CircuitBreakerOptions { + return CircuitBreaker.DefaultConfiguration; + } + + static set defaultConfiguration(circuitBreakerConfig: CircuitBreakerOptions) { + CircuitBreaker.DefaultConfiguration = { + ...CircuitBreaker.DefaultConfiguration, + ...circuitBreakerConfig + }; + } + + static internalCircuit = new Breaker(FetchWrapper, { timeout: 10000, // If our function takes longer than 10 seconds, trigger a failure errorThresholdPercentage: 50, // When 50% of requests fail, trip the circuit resetTimeout: 30000 // After 30 seconds, try again. }); constructor(options?: CircuitBreakerOptions) { + if (options?.disableClientCircuitBreaker) { + this.noCircuit = true; + return; + } + this.circuit = options - ? new Breaker(fetch, options) - : new Breaker(fetch, { - timeout: 10000, // If our function takes longer than 10 seconds, trigger a failure - errorThresholdPercentage: 50, // When 50% of requests fail, trip the circuit - resetTimeout: 30000 // After 30 seconds, try again. - }); + ? new Breaker(FetchWrapper, options) + : new Breaker(FetchWrapper, CircuitBreaker.DefaultConfiguration); + + // Add emitters + this.circuit.on("open", () => { + console.log("circuit breaker is now in OPEN state"); + }); + this.circuit.on("halfOpen", () => { + console.log("circuit breaker is now in HALF OPEN state"); + }); + this.circuit.on("close", () => { + console.log("circuit breaker is now in CLOSE state"); + }); } } diff --git a/lib/common/lib/constants.ts b/lib/common/lib/constants.ts index 7e7be8af19..bd79161d39 100644 --- a/lib/common/lib/constants.ts +++ b/lib/common/lib/constants.ts @@ -7,4 +7,9 @@ const Constants = { APPLICATION_JSON: "application/json" }; +export enum BooleanString { + TRUE = "true", + FALSE = "false" +} + export default Constants; diff --git a/lib/common/lib/helper.ts b/lib/common/lib/helper.ts index 6e4d43d06d..9915659a90 100644 --- a/lib/common/lib/helper.ts +++ b/lib/common/lib/helper.ts @@ -7,7 +7,6 @@ import { OciError } from "./error"; import { Range } from "./range"; import { Readable, PassThrough } from "stream"; import { addOpcRequestId, addUserAgent } from "./headers"; -import { addRetryToken } from "./retry-token-header"; import { isEmpty } from "./utils"; import { RequestParams } from "./request-generator"; import { RawData, BinaryBody } from "./types"; @@ -211,7 +210,6 @@ export function getSignerAndReqBody( export function addAdditionalHeaders(headers: Headers, params: RequestParams) { addOpcRequestId(headers); addUserAgent(headers); - addRetryToken(headers); } export async function autoDetectContentLengthAndReadBody(headers: Headers, params: RequestParams) { diff --git a/lib/common/lib/http.ts b/lib/common/lib/http.ts index 9326b5fc78..9c302a6de3 100644 --- a/lib/common/lib/http.ts +++ b/lib/common/lib/http.ts @@ -9,7 +9,6 @@ import { RequestSigner } from "./signer"; import { HttpRequest } from "./http-request"; import { getSignerAndReqBody } from "./helper"; const Breaker = require("opossum"); -import CircuitBreaker from "./circuit-breaker"; promise.polyfill(); @@ -47,13 +46,20 @@ export class FetchHttpClient implements HttpClient { }); if (this.circuitBreaker) { - // The circuitBreaker library have .fire return as any, we need to cast it to a Promise to be consistent with - // a fetch response type. - return (this.circuitBreaker.fire(request) as unknown) as Promise; - } else if (CircuitBreaker.enableDefault) { - // else if we opt'd to use a default circuit breaker, an http call by default - // will use the default circuit breaker to make the call - return CircuitBreaker.defaultCircuit.fire(request); + return this.circuitBreaker + .fire(request) + .then((e: any) => { + return e.response ? e.response : e; + }) + .catch((e: any) => { + if (e.response) { + // If error contains response field, it is an actual server error, return it. + return e.response; + } else { + // These are client side error. Throw exception. + throw e; + } + }); } else { return fetch( new Request(req.uri, { diff --git a/lib/common/lib/request-generator.ts b/lib/common/lib/request-generator.ts index cf90198a19..e81d7bd369 100644 --- a/lib/common/lib/request-generator.ts +++ b/lib/common/lib/request-generator.ts @@ -10,8 +10,9 @@ import { autoDetectContentLengthAndReadBody, formatDateToRFC3339 } from "./helper"; +import { addRetryToken, OPC_RETRY_TOKEN_HEADER } from "./retry-token-header"; -interface Params { +export interface Params { [key: string]: | string | Date @@ -106,6 +107,9 @@ function computeHeaders(params: RequestParams): Headers { } } } + if (params.headerParams && OPC_RETRY_TOKEN_HEADER in params.headerParams) { + addRetryToken(headers); + } addAdditionalHeaders(headers, params); return headers; } diff --git a/lib/common/lib/retrier.ts b/lib/common/lib/retrier.ts index 823c872e3d..06e04fef7b 100644 --- a/lib/common/lib/retrier.ts +++ b/lib/common/lib/retrier.ts @@ -9,7 +9,8 @@ import { MaxAttemptsTerminationStrategy, WaiterConfigurationDetails, delay, - WaitContextImpl + WaitContextImpl, + ExponentialBackoffDelayStrategyWithJitter } from "./waiter"; import { HttpClient } from "./http"; import { HttpRequest } from "./http-request"; @@ -17,6 +18,7 @@ import { isReadableStream } from "./helper"; import { handleErrorBody, handleErrorResponse } from "./helper"; import { OciError } from ".."; import { Logger } from "./log"; +import { BooleanString } from "./constants"; /** * This class implements the retrier @@ -38,7 +40,7 @@ export interface RetryConfigurationDetails extends WaiterConfigurationDetails { backupBinaryBody: boolean; } -class DefaultRetryCondition { +export class DefaultRetryCondition { /** * Default retry condition for Retry mechanism * NOTE : Retries are not supported for requests that have binary or stream bodies @@ -55,27 +57,59 @@ class DefaultRetryCondition { error.statusCode === 503 || error.statusCode === 504 || error.statusCode == -1 || - isNaN(error.statusCode) || + isNaN(error.statusCode) || // no StatusCode means client side error. These are considered retryable. (DefaultRetryCondition.RETRYABLE_SERVICE_ERRORS.has(error.statusCode) && DefaultRetryCondition.RETRYABLE_SERVICE_ERRORS.get(error.statusCode) === error.serviceCode) ); } } -const NoRetryConfigurationDetails: RetryConfigurationDetails = { - terminationStrategy: new MaxAttemptsTerminationStrategy(1), - delayStrategy: new ExponentialBackoffDelayStrategy(30), +const NO_RETRY_MAXIMUM_NUMBER_OF_ATTEMPTS = 1; +const NO_RETRY_MAXIMUM_DELAY_IN_SECONDS = 30; + +export const NoRetryConfigurationDetails: RetryConfigurationDetails = { + terminationStrategy: new MaxAttemptsTerminationStrategy(NO_RETRY_MAXIMUM_NUMBER_OF_ATTEMPTS), + delayStrategy: new ExponentialBackoffDelayStrategyWithJitter(NO_RETRY_MAXIMUM_DELAY_IN_SECONDS), retryCondition: DefaultRetryCondition.shouldBeRetried, backupBinaryBody: false }; export class GenericRetrier { - private retryConfiguration: RetryConfigurationDetails; + private _retryConfiguration: RetryConfigurationDetails; private _logger: Logger = (undefined as unknown) as Logger; + private static OCI_SDK_DEFAULT_RETRY_ENABLED = "OCI_SDK_DEFAULT_RETRY_ENABLED"; + private static DEFAULT_RETRY_MAXIMUM_NUMBER_OF_ATTEMPTS = 8; + private static DEFAULT_RETRY_MAXIMUM_DELAY_IN_SECONDS = 30; + private static OPC_CLIENT_RETRIES_HEADER = "opc-client-retries"; constructor(retryConfiguration: RetryConfiguration) { const preferredRetryConfig = { ...NoRetryConfigurationDetails, ...retryConfiguration }; - this.retryConfiguration = preferredRetryConfig; + this._retryConfiguration = preferredRetryConfig; + } + + private static DefaultRetryConfiguration: RetryConfigurationDetails = + process.env[GenericRetrier.OCI_SDK_DEFAULT_RETRY_ENABLED] === BooleanString.FALSE + ? NoRetryConfigurationDetails + : { + terminationStrategy: new MaxAttemptsTerminationStrategy( + GenericRetrier.DEFAULT_RETRY_MAXIMUM_NUMBER_OF_ATTEMPTS + ), + delayStrategy: new ExponentialBackoffDelayStrategyWithJitter( + GenericRetrier.DEFAULT_RETRY_MAXIMUM_DELAY_IN_SECONDS + ), + retryCondition: DefaultRetryCondition.shouldBeRetried, + backupBinaryBody: false + }; + + static get defaultRetryConfiguration(): RetryConfiguration { + return GenericRetrier.DefaultRetryConfiguration; + } + + static set defaultRetryConfiguration(retryConfig: RetryConfiguration) { + GenericRetrier.DefaultRetryConfiguration = { + ...GenericRetrier.DefaultRetryConfiguration, + ...retryConfig + }; } public set logger(logger: Logger) { @@ -86,6 +120,10 @@ export class GenericRetrier { return this.retryConfiguration.backupBinaryBody; } + public get retryConfiguration(): RetryConfigurationDetails { + return this._retryConfiguration; + } + public static createPreferredRetrier( clientRetryConfiguration?: RetryConfiguration, requestRetryConfiguration?: RetryConfiguration @@ -93,7 +131,7 @@ export class GenericRetrier { let retryConfigToUse = [requestRetryConfiguration, clientRetryConfiguration, {}].filter( configuration => configuration !== null && configuration !== undefined )[0]; - retryConfigToUse = { ...NoRetryConfigurationDetails, ...retryConfigToUse }; + retryConfigToUse = { ...GenericRetrier.defaultRetryConfiguration, ...retryConfigToUse }; return new GenericRetrier(retryConfigToUse); } @@ -107,9 +145,21 @@ export class GenericRetrier { let shouldBeRetried: boolean = true; while (true) { try { + this.addOpcClientRetryHeader(request); const response: Response = await httpClient.send(request, excludeBody); if (response.status && response.status >= 200 && response.status <= 299) { return response; + } else if ((response as any).code === "EOPENBREAKER") { + // Circuit Breaker is in OPEN state + const circuitBreakerError: any = response; + const errorObject = new OciError( + circuitBreakerError.code, + "unknown code", + circuitBreakerError.message, + "unknown" + ); + shouldBeRetried = this.retryConfiguration.retryCondition(errorObject); // TODO: need retryCondition to accept errorObject coming from Circuit Breaker + lastKnownError = errorObject; } else { const errBody = await handleErrorBody(response); const errorObject = handleErrorResponse(response, errBody); @@ -120,19 +170,25 @@ export class GenericRetrier { lastKnownError = new OciError(err.code, "unknown code", err.message, "unknown"); shouldBeRetried = true; } - if ( - !shouldBeRetried || - this.retryConfiguration.terminationStrategy.shouldTerminate(waitContext) || - !GenericRetrier.isRequestRetryable(request) - ) { - if (this._logger) this._logger.debug("Not retrying the service call..."); + if (!shouldBeRetried || !GenericRetrier.isRequestRetryable(request)) { + console.warn( + `Request cannot be retried. Not Retrying. Exception occurred : ${lastKnownError}` + ); + throw lastKnownError; + } else if (this.retryConfiguration.terminationStrategy.shouldTerminate(waitContext)) { + console.warn( + `All retry attempts have exhausted. Total Attempts : ${waitContext.attemptCount + + 1}. Last exception occurred : ${lastKnownError}` + ); throw lastKnownError; } - await delay(this.retryConfiguration.delayStrategy.delay(waitContext)); + const delayTime = this.retryConfiguration.delayStrategy.delay(waitContext); waitContext.attemptCount++; + console.warn( + `Request failed with Exception : ${lastKnownError}\nRetrying request -> Total Attempts : ${waitContext.attemptCount}, Retrying after ${delayTime} seconds...` + ); + await delay(delayTime); GenericRetrier.refreshRequest(request); - if (this._logger) - this._logger.debug("Retrying the service call, attempt : ", waitContext.attemptCount); } } @@ -140,6 +196,18 @@ export class GenericRetrier { request.headers.set("x-date", new Date().toUTCString()); } + private addOpcClientRetryHeader(request: HttpRequest) { + const terminationStrategy = this.retryConfiguration.terminationStrategy; + const opcClientRetryHeader = request.headers.get(GenericRetrier.OPC_CLIENT_RETRIES_HEADER); + if ( + terminationStrategy instanceof MaxAttemptsTerminationStrategy && + terminationStrategy.maxAttempts > 1 && + (opcClientRetryHeader === undefined || opcClientRetryHeader === null) + ) { + request.headers.set(GenericRetrier.OPC_CLIENT_RETRIES_HEADER, "true"); + } + } + private static isRequestRetryable(request: HttpRequest) { if (!request.body) return true; else if (request.body) { diff --git a/lib/common/lib/retry-token-header.ts b/lib/common/lib/retry-token-header.ts index 5987f62407..1c52197e30 100644 --- a/lib/common/lib/retry-token-header.ts +++ b/lib/common/lib/retry-token-header.ts @@ -8,7 +8,7 @@ const uuidv1 = require("uuid/v1"); -const OPC_RETRY_TOKEN_HEADER: string = "opc-retry-token"; +export const OPC_RETRY_TOKEN_HEADER: string = "opc-retry-token"; export function addRetryToken(headers: Headers) { // if user has not passed opc-retry-token diff --git a/lib/common/lib/utils.ts b/lib/common/lib/utils.ts index 93ad730c82..7d6ffda08d 100644 --- a/lib/common/lib/utils.ts +++ b/lib/common/lib/utils.ts @@ -5,6 +5,9 @@ * Utility method to check if environment is node or browser */ +import CircuitBreaker from "./circuit-breaker"; +import { ClientConfiguration } from "./client-configuration"; + export function isBrowser() { if (typeof window === "undefined") { return false; @@ -24,3 +27,22 @@ export function checkNotNull(value: string | null, msg: string): string { } throw new Error(msg); } + +// Utility method to check if circuit breaker should be created +// This is used when no circuit breaker was created for the client, if not: Check if it was disabled at the client level / global level / environment level in respective order +// return false means do not create circuit breaker. +export function isCircuitBreakerSystemEnabled(clientConfiguration: ClientConfiguration): boolean { + // Client level check + const clientLevelCheck = + clientConfiguration && + clientConfiguration.circuitBreaker && + clientConfiguration.circuitBreaker.noCircuit; + if ( + clientLevelCheck || + !CircuitBreaker.EnableGlobalCircuitBreaker || + CircuitBreaker.EnableDefaultCircuitBreaker === "false" + ) { + return false; + } + return true; +} diff --git a/lib/common/lib/waiter.ts b/lib/common/lib/waiter.ts index 41da20353e..faa3a3f420 100644 --- a/lib/common/lib/waiter.ts +++ b/lib/common/lib/waiter.ts @@ -24,18 +24,23 @@ export class WaitContextImpl implements WaitContext { } export class ExponentialBackoffDelayStrategy implements DelayStrategy { - private currentDelayInSeconds: number = 1; - public constructor(private maxDelayInSeconds: number) {} + public constructor(protected maxDelayInSeconds: number) {} delay(context: WaitContext): number { - if (this.currentDelayInSeconds <= 0) { - return this.maxDelayInSeconds; - } + const currentDelayInSeconds = Math.pow(2, context.attemptCount); + const delay = Math.min(currentDelayInSeconds, this.maxDelayInSeconds); + return delay; + } +} - const delay = Math.min(this.currentDelayInSeconds, this.maxDelayInSeconds); - this.currentDelayInSeconds *= 2; +export class ExponentialBackoffDelayStrategyWithJitter extends ExponentialBackoffDelayStrategy { + public constructor(protected maxDelayInSeconds: number) { + super(maxDelayInSeconds); + } - return delay; + delay(context: WaitContext): number { + let jitterValue: number = Math.round(Math.random() * 1000) / 1000; + return super.delay(context) + jitterValue; } } @@ -48,13 +53,17 @@ export class FixedTimeDelayStrategy implements DelayStrategy { } export class MaxAttemptsTerminationStrategy implements TerminationStrategy { - private maxAttempts: number; + private _maxAttempts: number; public constructor(maxAttempts: number) { - this.maxAttempts = maxAttempts - 1; + this._maxAttempts = maxAttempts - 1; } public shouldTerminate(context: WaitContext): boolean { - return context.attemptCount >= this.maxAttempts; + return context.attemptCount >= this._maxAttempts; + } + + public get maxAttempts(): number { + return this._maxAttempts; } } diff --git a/lib/common/package.json b/lib/common/package.json index df660f6bb4..545b30762c 100644 --- a/lib/common/package.json +++ b/lib/common/package.json @@ -1,6 +1,6 @@ { "name": "oci-common", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI Common module for NodeJS", "repository": { "type": "git", diff --git a/lib/common/tests/node-request-generator.spec.ts b/lib/common/tests/node-request-generator.spec.ts index 35000262f0..c2ee5bcbda 100644 --- a/lib/common/tests/node-request-generator.spec.ts +++ b/lib/common/tests/node-request-generator.spec.ts @@ -19,7 +19,8 @@ describe("Test Request Generator ", () => { const headerParams = { "opc-request-id": "test-request-id", "Content-Length": "0", - "Content-Type": "application/json" + "Content-Type": "application/json", + "opc-retry-token": "retrytoken" }; const appendUserAgent = process.env.OCI_SDK_APPEND_USER_AGENT; const clientInfo = `Oracle-TypeScriptSDK/${version}`; @@ -52,7 +53,8 @@ describe("Test Request Generator ", () => { const headerParams = { "opc-request-id": "test-request-id", "Content-Type": "application/json", - "Content-Length": undefined + "Content-Length": undefined, + "opc-retry-token": undefined }; const fileLocation = __dirname + "/resources/large_file.bin"; const objectData = await fs.createReadStream(fileLocation); @@ -85,7 +87,8 @@ describe("Test Request Generator ", () => { const headerParams = { "opc-request-id": "test-request-id", "Content-Type": "application/json", - "Content-Length": undefined + "Content-Length": undefined, + "opc-retry-token": undefined }; const fileLocation = __dirname + "/resources/large_file.bin"; const size = fs.statSync(fileLocation).size; @@ -114,4 +117,60 @@ describe("Test Request Generator ", () => { expect(sdkRequest.headers.get("content-length")).equal(String(size)); expect(typeof sdkRequest.body).equal("object"); }); + + it("should not add opc-retry-token to headers if the key does not exist in header params", async function() { + const headerParams = { + "opc-request-id": "test-request-id", + "Content-Type": "application/json", + "Content-Length": undefined + }; + const sdkRequest = await composeRequest({ + baseEndpoint: "http://test-end-point/20191002", + defaultHeaders: {}, + path: "/testUrl/{testId}/actions", + method: "POST", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + expect(sdkRequest.headers.get("opc-retry-token")).not.exist; + }); + + it("should add opc-retry-token to headers if the key does exists in header params", async function() { + const headerParams = { + "opc-request-id": "test-request-id", + "Content-Type": "application/json", + "Content-Length": undefined, + "opc-retry-token": undefined + }; + const sdkRequest = await composeRequest({ + baseEndpoint: "http://test-end-point/20191002", + defaultHeaders: {}, + path: "/testUrl/{testId}/actions", + method: "POST", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + expect(sdkRequest.headers.get("opc-retry-token")).exist; + }); + + it("should not overwrite opc-retry-token if the user provides an opc-retry-token", async function() { + const headerParams = { + "opc-request-id": "test-request-id", + "Content-Type": "application/json", + "Content-Length": undefined, + "opc-retry-token": "retryToken" + }; + const sdkRequest = await composeRequest({ + baseEndpoint: "http://test-end-point/20191002", + defaultHeaders: {}, + path: "/testUrl/{testId}/actions", + method: "POST", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + expect(sdkRequest.headers.get("opc-retry-token")).equals("retryToken"); + }); }); diff --git a/lib/computeinstanceagent/lib/client.ts b/lib/computeinstanceagent/lib/client.ts index efc2d753a6..e748772b2a 100644 --- a/lib/computeinstanceagent/lib/client.ts +++ b/lib/computeinstanceagent/lib/client.ts @@ -47,6 +47,10 @@ export class ComputeInstanceAgentClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -621,6 +625,10 @@ export class PluginClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -863,6 +871,10 @@ export class PluginconfigClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/computeinstanceagent/package.json b/lib/computeinstanceagent/package.json index 05fde24b07..54846fc0ba 100644 --- a/lib/computeinstanceagent/package.json +++ b/lib/computeinstanceagent/package.json @@ -1,6 +1,6 @@ { "name": "oci-computeinstanceagent", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Compute Instance Agent Service", "repository": { "type": "git", diff --git a/lib/containerengine/lib/client.ts b/lib/containerengine/lib/client.ts index acd65bd42a..beef947f9f 100644 --- a/lib/containerengine/lib/client.ts +++ b/lib/containerengine/lib/client.ts @@ -49,6 +49,10 @@ export class ContainerEngineClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/containerengine/package.json b/lib/containerengine/package.json index 08a56af071..868c320517 100644 --- a/lib/containerengine/package.json +++ b/lib/containerengine/package.json @@ -1,6 +1,6 @@ { "name": "oci-containerengine", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Container Engine", "repository": { "type": "git", diff --git a/lib/core/lib/client.ts b/lib/core/lib/client.ts index 3ef47a93e8..f6209b51c5 100644 --- a/lib/core/lib/client.ts +++ b/lib/core/lib/client.ts @@ -54,6 +54,10 @@ export class BlockstorageClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -4243,6 +4247,10 @@ export class ComputeClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -10517,6 +10525,10 @@ export class ComputeManagementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -12926,6 +12938,10 @@ export class VirtualNetworkClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/core/package.json b/lib/core/package.json index b02f9ff6a9..bab5f14ed3 100644 --- a/lib/core/package.json +++ b/lib/core/package.json @@ -1,6 +1,6 @@ { "name": "oci-core", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Core", "repository": { "type": "git", diff --git a/lib/database/lib/client.ts b/lib/database/lib/client.ts index 5a2e8ba972..e6fd93ca66 100644 --- a/lib/database/lib/client.ts +++ b/lib/database/lib/client.ts @@ -47,6 +47,10 @@ export class DatabaseClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -3204,8 +3208,8 @@ All Oracle Cloud Infrastructure resources, including Data Guard associations, ge } /** - * Create and start a pluggable database in the specified container database. - * If needed call actions/stop to stop the PDB. + * Creates and starts a pluggable database in the specified container database. + * Use the [StartPluggableDatabase](#/en/database/latest/PluggableDatabase/StartPluggableDatabase] and [StopPluggableDatabase](#/en/database/latest/PluggableDatabase/StopPluggableDatabase] APIs to start and stop the pluggable database. * * @param CreatePluggableDatabaseRequest * @return CreatePluggableDatabaseResponse @@ -4515,7 +4519,7 @@ Oracle recommends that you use the `performFinalBackup` parameter to back up any } /** - * Delete a pluggable database + * Deletes the specified pluggable database. * @param DeletePluggableDatabaseRequest * @return DeletePluggableDatabaseResponse * @throws OciError when an error occurs @@ -5283,6 +5287,85 @@ Oracle recommends that you use the `performFinalBackup` parameter to back up any } } + /** + * Downloads the network validation report file for the specified VM cluster network. Applies to Exadata Cloud@Customer instances only. + * + * @param DownloadValidationReportRequest + * @return DownloadValidationReportResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/DownloadValidationReport.ts.html |here} to see how to use DownloadValidationReport API. + */ + public async downloadValidationReport( + downloadValidationReportRequest: requests.DownloadValidationReportRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DatabaseClient#downloadValidationReport."); + const pathParams = { + "{exadataInfrastructureId}": downloadValidationReportRequest.exadataInfrastructureId, + "{vmClusterNetworkId}": downloadValidationReportRequest.vmClusterNetworkId + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": downloadValidationReportRequest.opcRequestId, + "opc-retry-token": downloadValidationReportRequest.opcRetryToken + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + downloadValidationReportRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: + "/exadataInfrastructures/{exadataInfrastructureId}/vmClusterNetworks/{vmClusterNetworkId}/actions/downloadValidationReport", + method: "POST", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + + body: response.body!, + bodyKey: "value", + bodyModel: "string", + responseHeaders: [ + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + }, + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("content-length"), + key: "contentLength", + dataType: "number" + }, + { + value: response.headers.get("last-modified"), + key: "lastModified", + dataType: "Date" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Downloads the configuration file for the specified VM cluster network. Applies to Exadata Cloud@Customer instances only. * @@ -8743,7 +8826,7 @@ The {@link #getCloudVmClusterIormConfig(GetCloudVmClusterIormConfigRequest) getC } /** - * Gets information about a specific pluggable database + * Gets information about the specified pluggable database. * @param GetPluggableDatabaseRequest * @return GetPluggableDatabaseResponse * @throws OciError when an error occurs @@ -9064,6 +9147,134 @@ The {@link #getCloudVmClusterIormConfig(GetCloudVmClusterIormConfigRequest) getC } } + /** + * Gets information about a specified maintenance update package for a VM cluster. Applies to Exadata Cloud@Customer instances only. + * + * @param GetVmClusterUpdateRequest + * @return GetVmClusterUpdateResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/GetVmClusterUpdate.ts.html |here} to see how to use GetVmClusterUpdate API. + */ + public async getVmClusterUpdate( + getVmClusterUpdateRequest: requests.GetVmClusterUpdateRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DatabaseClient#getVmClusterUpdate."); + const pathParams = { + "{vmClusterId}": getVmClusterUpdateRequest.vmClusterId, + "{updateId}": getVmClusterUpdateRequest.updateId + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": getVmClusterUpdateRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + getVmClusterUpdateRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/vmClusters/{vmClusterId}/updates/{updateId}", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "vmClusterUpdate", + bodyModel: model.VmClusterUpdate, + type: "model.VmClusterUpdate", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + + /** + * Gets the maintenance update history details for the specified update history entry. Applies to Exadata Cloud@Customer instances only. + * + * @param GetVmClusterUpdateHistoryEntryRequest + * @return GetVmClusterUpdateHistoryEntryResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/GetVmClusterUpdateHistoryEntry.ts.html |here} to see how to use GetVmClusterUpdateHistoryEntry API. + */ + public async getVmClusterUpdateHistoryEntry( + getVmClusterUpdateHistoryEntryRequest: requests.GetVmClusterUpdateHistoryEntryRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DatabaseClient#getVmClusterUpdateHistoryEntry."); + const pathParams = { + "{vmClusterId}": getVmClusterUpdateHistoryEntryRequest.vmClusterId, + "{updateHistoryEntryId}": getVmClusterUpdateHistoryEntryRequest.updateHistoryEntryId + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": getVmClusterUpdateHistoryEntryRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + getVmClusterUpdateHistoryEntryRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/vmClusters/{vmClusterId}/updateHistoryEntries/{updateHistoryEntryId}", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "vmClusterUpdateHistoryEntry", + bodyModel: model.VmClusterUpdateHistoryEntry, + type: "model.VmClusterUpdateHistoryEntry", + responseHeaders: [ + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + }, + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Creates a new Autonomous Exadata Infrastructure in the specified compartment and availability domain. * @@ -13114,8 +13325,7 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, } /** - * Gets a list of the pluggable databases based on databaseId or compartmentId specified. - * Either one of the query parameters must be provided. + * Gets a list of the pluggable databases in a database or compartment. You must provide either a `databaseId` or `compartmentId` value. * * @param ListPluggableDatabasesRequest * @return ListPluggableDatabasesResponse @@ -13493,6 +13703,197 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, return paginateResponses(request, req => this.listVmClusterPatches(req)); } + /** + * Gets the history of the maintenance update actions performed on the specified VM cluster. Applies to Exadata Cloud@Customer instances only. + * + * @param ListVmClusterUpdateHistoryEntriesRequest + * @return ListVmClusterUpdateHistoryEntriesResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/ListVmClusterUpdateHistoryEntries.ts.html |here} to see how to use ListVmClusterUpdateHistoryEntries API. + */ + public async listVmClusterUpdateHistoryEntries( + listVmClusterUpdateHistoryEntriesRequest: requests.ListVmClusterUpdateHistoryEntriesRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DatabaseClient#listVmClusterUpdateHistoryEntries."); + const pathParams = { + "{vmClusterId}": listVmClusterUpdateHistoryEntriesRequest.vmClusterId + }; + + const queryParams = { + "updateType": listVmClusterUpdateHistoryEntriesRequest.updateType, + "lifecycleState": listVmClusterUpdateHistoryEntriesRequest.lifecycleState, + "limit": listVmClusterUpdateHistoryEntriesRequest.limit, + "page": listVmClusterUpdateHistoryEntriesRequest.page + }; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": listVmClusterUpdateHistoryEntriesRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + listVmClusterUpdateHistoryEntriesRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/vmClusters/{vmClusterId}/updateHistoryEntries", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "items", + bodyModel: model.VmClusterUpdateHistoryEntrySummary, + type: "Array", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("opc-next-page"), + key: "opcNextPage", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + + /** + * Creates a new async iterator which will iterate over the models.VmClusterUpdateHistoryEntrySummary objects + * contained in responses from the listVmClusterUpdateHistoryEntries operation. This iterator will fetch more data from the + * server as needed. + * + * @param request a request which can be sent to the service operation + */ + public listAllVmClusterUpdateHistoryEntries( + request: requests.ListVmClusterUpdateHistoryEntriesRequest + ): AsyncIterableIterator { + return paginateRecords(request, req => this.listVmClusterUpdateHistoryEntries(req)); + } + + /** + * Creates a new async iterator which will iterate over the responses received from the listVmClusterUpdateHistoryEntries operation. This iterator + * will fetch more data from the server as needed. + * + * @param request a request which can be sent to the service operation + */ + public listAllVmClusterUpdateHistoryEntriesResponses( + request: requests.ListVmClusterUpdateHistoryEntriesRequest + ): AsyncIterableIterator { + return paginateResponses(request, req => this.listVmClusterUpdateHistoryEntries(req)); + } + + /** + * Lists the maintenance updates that can be applied to the specified VM cluster. Applies to Exadata Cloud@Customer instances only. + * + * @param ListVmClusterUpdatesRequest + * @return ListVmClusterUpdatesResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/ListVmClusterUpdates.ts.html |here} to see how to use ListVmClusterUpdates API. + */ + public async listVmClusterUpdates( + listVmClusterUpdatesRequest: requests.ListVmClusterUpdatesRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DatabaseClient#listVmClusterUpdates."); + const pathParams = { + "{vmClusterId}": listVmClusterUpdatesRequest.vmClusterId + }; + + const queryParams = { + "updateType": listVmClusterUpdatesRequest.updateType, + "lifecycleState": listVmClusterUpdatesRequest.lifecycleState, + "limit": listVmClusterUpdatesRequest.limit, + "page": listVmClusterUpdatesRequest.page + }; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": listVmClusterUpdatesRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + listVmClusterUpdatesRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/vmClusters/{vmClusterId}/updates", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "items", + bodyModel: model.VmClusterUpdateSummary, + type: "Array", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("opc-next-page"), + key: "opcNextPage", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + + /** + * Creates a new async iterator which will iterate over the models.VmClusterUpdateSummary objects + * contained in responses from the listVmClusterUpdates operation. This iterator will fetch more data from the + * server as needed. + * + * @param request a request which can be sent to the service operation + */ + public listAllVmClusterUpdates( + request: requests.ListVmClusterUpdatesRequest + ): AsyncIterableIterator { + return paginateRecords(request, req => this.listVmClusterUpdates(req)); + } + + /** + * Creates a new async iterator which will iterate over the responses received from the listVmClusterUpdates operation. This iterator + * will fetch more data from the server as needed. + * + * @param request a request which can be sent to the service operation + */ + public listAllVmClusterUpdatesResponses( + request: requests.ListVmClusterUpdatesRequest + ): AsyncIterableIterator { + return paginateResponses(request, req => this.listVmClusterUpdates(req)); + } + /** * Lists the VM clusters in the specified compartment. Applies to Exadata Cloud@Customer instances only. * To list the cloud VM clusters in an Exadata Cloud Service instance, use the {@link #listCloudVmClusters(ListCloudVmClustersRequest) listCloudVmClusters} operation. @@ -13592,7 +13993,8 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, } /** - * Clone and start a pluggable database on the same CDB. Only a started pluggable database can be cloned. + * Clones and starts a pluggable database (PDB) in the same database (CDB) as the source PDB. The source PDB must be in the `READ_WRITE` openMode to perform the clone operation. + * * @param LocalClonePluggableDatabaseRequest * @return LocalClonePluggableDatabaseResponse * @throws OciError when an error occurs @@ -14043,7 +14445,8 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, } /** - * Clone and start a pluggable database on a different CDB. Only a started pluggable database can be cloned. + * Clones a pluggable database (PDB) to a different database from the source PDB. The cloned PDB will be started upon completion of the clone operation. The source PDB must be in the `READ_WRITE` openMode when performing the clone. + * * @param RemoteClonePluggableDatabaseRequest * @return RemoteClonePluggableDatabaseResponse * @throws OciError when an error occurs @@ -14903,7 +15306,7 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, } /** - * start a stopped pluggable database. The openMode of the pluggable database will be READ_WRITE upon completion. + * Starts a stopped pluggable database. The `openMode` value of the pluggable database will be `READ_WRITE` upon completion. * @param StartPluggableDatabaseRequest * @return StartPluggableDatabaseResponse * @throws OciError when an error occurs @@ -15045,7 +15448,7 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, } /** - * stop a started pluggable database. The openMode of the pluggable database will be MOUNTED upon completion. + * Stops a pluggable database. The `openMode` value of the pluggable database will be `MOUNTED` upon completion. * @param StopPluggableDatabaseRequest * @return StopPluggableDatabaseResponse * @throws OciError when an error occurs @@ -16283,6 +16686,84 @@ For Exadata Cloud Service instances, support for this API will end on May 15th, } } + /** + * Updates the Data Guard association the specified database. This API can be used to change the `protectionMode` and `transportType` of the Data Guard association. + * + * @param UpdateDataGuardAssociationRequest + * @return UpdateDataGuardAssociationResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/UpdateDataGuardAssociation.ts.html |here} to see how to use UpdateDataGuardAssociation API. + */ + public async updateDataGuardAssociation( + updateDataGuardAssociationRequest: requests.UpdateDataGuardAssociationRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DatabaseClient#updateDataGuardAssociation."); + const pathParams = { + "{databaseId}": updateDataGuardAssociationRequest.databaseId, + "{dataGuardAssociationId}": updateDataGuardAssociationRequest.dataGuardAssociationId + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "if-match": updateDataGuardAssociationRequest.ifMatch, + "opc-request-id": updateDataGuardAssociationRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + updateDataGuardAssociationRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/databases/{databaseId}/dataGuardAssociations/{dataGuardAssociationId}", + method: "PUT", + bodyContent: common.ObjectSerializer.serialize( + updateDataGuardAssociationRequest.updateDataGuardAssociationDetails, + "UpdateDataGuardAssociationDetails", + model.UpdateDataGuardAssociationDetails.getJsonObj + ), + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "dataGuardAssociation", + bodyModel: model.DataGuardAssociation, + type: "model.DataGuardAssociation", + responseHeaders: [ + { + value: response.headers.get("opc-work-request-id"), + key: "opcWorkRequestId", + dataType: "string" + }, + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + }, + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Update the specified database based on the request parameters provided. * @@ -17197,7 +17678,7 @@ The {@link #updateCloudVmClusterIormConfig(UpdateCloudVmClusterIormConfigRequest } /** - * Update a pluggable database + * Updates the specified pluggable database. * @param UpdatePluggableDatabaseRequest * @return UpdatePluggableDatabaseResponse * @throws OciError when an error occurs diff --git a/lib/database/lib/database-waiter.ts b/lib/database/lib/database-waiter.ts index 9d907e5eaa..2010666a22 100644 --- a/lib/database/lib/database-waiter.ts +++ b/lib/database/lib/database-waiter.ts @@ -2481,6 +2481,42 @@ export class DatabaseWaiter { ); } + /** + * Waits forVmClusterUpdate till it reaches any of the provided states + * + * @param request the request to send + * @param targetStates the desired states to wait for. The waiter will return once the resource reaches any of the provided states + * @return response returns GetVmClusterUpdateResponse + */ + public async forVmClusterUpdate( + request: serviceRequests.GetVmClusterUpdateRequest, + ...targetStates: models.VmClusterUpdate.LifecycleState[] + ): Promise { + return genericWaiter( + this.config, + () => this.client.getVmClusterUpdate(request), + response => targetStates.includes(response.vmClusterUpdate.lifecycleState!) + ); + } + + /** + * Waits forVmClusterUpdateHistoryEntry till it reaches any of the provided states + * + * @param request the request to send + * @param targetStates the desired states to wait for. The waiter will return once the resource reaches any of the provided states + * @return response returns GetVmClusterUpdateHistoryEntryResponse + */ + public async forVmClusterUpdateHistoryEntry( + request: serviceRequests.GetVmClusterUpdateHistoryEntryRequest, + ...targetStates: models.VmClusterUpdateHistoryEntry.LifecycleState[] + ): Promise { + return genericWaiter( + this.config, + () => this.client.getVmClusterUpdateHistoryEntry(request), + response => targetStates.includes(response.vmClusterUpdateHistoryEntry.lifecycleState!) + ); + } + /** * Waits forLaunchAutonomousExadataInfrastructure * @@ -3410,6 +3446,32 @@ export class DatabaseWaiter { }; } + /** + * Waits forUpdateDataGuardAssociation + * + * @param request the request to send + * @return response returns UpdateDataGuardAssociationResponse, GetWorkRequestResponse tuple + */ + public async forUpdateDataGuardAssociation( + request: serviceRequests.UpdateDataGuardAssociationRequest + ): Promise<{ + response: serviceResponses.UpdateDataGuardAssociationResponse; + workRequestResponse: responses.GetWorkRequestResponse; + }> { + const updateDataGuardAssociationResponse = await this.client.updateDataGuardAssociation( + request + ); + const getWorkRequestResponse = await waitForWorkRequest( + this.config, + this.workRequestClient, + updateDataGuardAssociationResponse.opcWorkRequestId + ); + return { + response: updateDataGuardAssociationResponse, + workRequestResponse: getWorkRequestResponse + }; + } + /** * Waits forUpdateDatabase * diff --git a/lib/database/lib/model/autonomous-database-summary.ts b/lib/database/lib/model/autonomous-database-summary.ts index be00e69e80..a43cde2030 100644 --- a/lib/database/lib/model/autonomous-database-summary.ts +++ b/lib/database/lib/model/autonomous-database-summary.ts @@ -81,12 +81,24 @@ export interface AutonomousDatabaseSummary { */ "keyHistoryEntry"?: Array; /** - * The number of OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * The number of OCPU cores to be made available to the database. For Autonomous Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Note:** This parameter cannot be used with the `ocpuCount` parameter. + * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "cpuCoreCount": number; /** - * The number of Fractional OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. - */ + * The number of OCPU cores to be made available to the database. +*

+The following points apply: +* - For Autonomous Databases on dedicated Exadata infrastructure, to provision less than 1 core, enter a fractional value in an increment of 0.1. For example, you can provision 0.3 or 0.4 cores, but not 0.35 cores. (Note that fractional OCPU values are not supported for Autonomous Databasese on shared Exadata infrastructure.) +* - To provision 1 or more cores, you must enter an integer between 1 and the maximum number of cores available for the infrastructure shape. For example, you can provision 2 cores or 3 cores, but not 2.5 cores. This applies to Autonomous Databases on both shared and dedicated Exadata infrastructure. +*

+For Autonomous Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. +*

+**Note:** This parameter cannot be used with the `cpuCoreCount` parameter. +* Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ "ocpuCount"?: number; /** * The quantity of data in the database, in terabytes. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. diff --git a/lib/database/lib/model/autonomous-database.ts b/lib/database/lib/model/autonomous-database.ts index 19258683fc..679e1797af 100644 --- a/lib/database/lib/model/autonomous-database.ts +++ b/lib/database/lib/model/autonomous-database.ts @@ -79,12 +79,24 @@ export interface AutonomousDatabase { */ "keyHistoryEntry"?: Array; /** - * The number of OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * The number of OCPU cores to be made available to the database. For Autonomous Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Note:** This parameter cannot be used with the `ocpuCount` parameter. + * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "cpuCoreCount": number; /** - * The number of Fractional OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. - */ + * The number of OCPU cores to be made available to the database. +*

+The following points apply: +* - For Autonomous Databases on dedicated Exadata infrastructure, to provision less than 1 core, enter a fractional value in an increment of 0.1. For example, you can provision 0.3 or 0.4 cores, but not 0.35 cores. (Note that fractional OCPU values are not supported for Autonomous Databasese on shared Exadata infrastructure.) +* - To provision 1 or more cores, you must enter an integer between 1 and the maximum number of cores available for the infrastructure shape. For example, you can provision 2 cores or 3 cores, but not 2.5 cores. This applies to Autonomous Databases on both shared and dedicated Exadata infrastructure. +*

+For Autonomous Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. +*

+**Note:** This parameter cannot be used with the `cpuCoreCount` parameter. +* Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ "ocpuCount"?: number; /** * The quantity of data in the database, in terabytes. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. diff --git a/lib/database/lib/model/create-autonomous-database-base.ts b/lib/database/lib/model/create-autonomous-database-base.ts index 83c43dc286..777a4d41f5 100644 --- a/lib/database/lib/model/create-autonomous-database-base.ts +++ b/lib/database/lib/model/create-autonomous-database-base.ts @@ -17,8 +17,11 @@ import common = require("oci-common"); /** * Details to create an Oracle Autonomous Database. - * Choose either Fractional ocpuCount or cpuCoreCount. - * Choose either dataStorageSizeInGBs or dataStorageSizeInTBs + *

+ **Notes:** + * - To specify OCPU core count, you must use either `ocpuCount` or `cpuCoreCount`. You cannot use both parameters at the same time. + * - To specify a storage allocation, you must use either `dataStorageSizeInGBs` or `dataStorageSizeInTBs`. + * - See the individual parameter discriptions for more information on the OCPU and storage value parameters. *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * @@ -33,12 +36,24 @@ export interface CreateAutonomousDatabaseBase { */ "dbName": string; /** - * The number of OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * The number of OCPU cores to be made available to the database. For Autonomous Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Note:** This parameter cannot be used with the `ocpuCount` parameter. + * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "cpuCoreCount"?: number; /** - * The number of Fractional OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. - */ + * The number of OCPU cores to be made available to the database. +*

+The following points apply: +* - For Autonomous Databases on dedicated Exadata infrastructure, to provision less than 1 core, enter a fractional value in an increment of 0.1. For example, you can provision 0.3 or 0.4 cores, but not 0.35 cores. (Note that fractional OCPU values are not supported for Autonomous Databasese on shared Exadata infrastructure.) +* - To provision 1 or more cores, you must enter an integer between 1 and the maximum number of cores available for the infrastructure shape. For example, you can provision 2 cores or 3 cores, but not 2.5 cores. This applies to Autonomous Databases on both shared and dedicated Exadata infrastructure. +*

+For Autonomous Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. +*

+**Note:** This parameter cannot be used with the `cpuCoreCount` parameter. +* Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ "ocpuCount"?: number; /** * The Autonomous Database workload type. The following values are valid: @@ -51,12 +66,18 @@ export interface CreateAutonomousDatabaseBase { */ "dbWorkload"?: CreateAutonomousDatabaseBase.DbWorkload; /** - * The size, in terabytes, of the data volume that will be created and attached to the database. This storage can later be scaled up if needed. + * The size, in terabytes, of the data volume that will be created and attached to the database. This storage can later be scaled up if needed. For Autonomous Databases on dedicated Exadata infrastructure, the maximum storage value is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Note:** This parameter cannot be used with the `dataStorageSizeInGBs` parameter. * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "dataStorageSizeInTBs"?: number; /** - * The size, in gigabytes, of the data volume that will be created and attached to the database. This storage can later be scaled up if needed. + * The size, in gigabytes, of the data volume that will be created and attached to the database. This storage can later be scaled up if needed. The maximum storage value is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Notes** + * - This parameter is only supported for dedicated Exadata infrastructure. + * - This parameter cannot be used with the `dataStorageSizeInTBs` parameter. * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "dataStorageSizeInGBs"?: number; diff --git a/lib/database/lib/model/create-pluggable-database-details.ts b/lib/database/lib/model/create-pluggable-database-details.ts index e10cfbc017..24bffcbf59 100644 --- a/lib/database/lib/model/create-pluggable-database-details.ts +++ b/lib/database/lib/model/create-pluggable-database-details.ts @@ -16,14 +16,14 @@ import * as model from "../model"; import common = require("oci-common"); /** - * Parameters for creating a pluggable database in a specified container database. + * Parameters for creating a pluggable database in a specified container database (CDB). *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * */ export interface CreatePluggableDatabaseDetails { /** - * The name for the pluggable database. The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. + * The name for the pluggable database (PDB). The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. */ "pdbName": string; /** diff --git a/lib/database/lib/model/database-connection-credentails-by-name.ts b/lib/database/lib/model/database-connection-credentails-by-name.ts index 50ae2c1053..9343328c4b 100644 --- a/lib/database/lib/model/database-connection-credentails-by-name.ts +++ b/lib/database/lib/model/database-connection-credentails-by-name.ts @@ -21,11 +21,11 @@ import common = require("oci-common"); */ export interface DatabaseConnectionCredentailsByName extends model.DatabaseConnectionCredentials { /** - * The name of the credential information that used to connect to the database. The name should be in \"x.y\" format, where -* the length of \"x\" has a maximum of 64 characters, and length of \"y\" has a maximum of 199 characters. -* The name strings can contain letters, numbers and the underscore character only. Other characters are not valid, except for + * The name of the credential information that used to connect to the database. The name should be in \"x.y\" format, where +* the length of \"x\" has a maximum of 64 characters, and length of \"y\" has a maximum of 199 characters. +* The name strings can contain letters, numbers and the underscore character only. Other characters are not valid, except for * the \".\" character that separates the \"x\" and \"y\" portions of the name. -* *IMPORTANT* - The name must be unique within the OCI region the credential is being created in. If you specify a name +* *IMPORTANT* - The name must be unique within the OCI region the credential is being created in. If you specify a name * that duplicates the name of another credential within the same OCI region, you may overwrite or corrupt the credential that is already * using the name. *

diff --git a/lib/database/lib/model/database-connection-credentials-by-details.ts b/lib/database/lib/model/database-connection-credentials-by-details.ts index 04d77e84e7..bbda0f5b3f 100644 --- a/lib/database/lib/model/database-connection-credentials-by-details.ts +++ b/lib/database/lib/model/database-connection-credentials-by-details.ts @@ -23,11 +23,11 @@ import common = require("oci-common"); export interface DatabaseConnectionCredentialsByDetails extends model.DatabaseConnectionCredentials { /** - * The name of the credential information that used to connect to the database. The name should be in \"x.y\" format, where -* the length of \"x\" has a maximum of 64 characters, and length of \"y\" has a maximum of 199 characters. -* The name strings can contain letters, numbers and the underscore character only. Other characters are not valid, except for + * The name of the credential information that used to connect to the database. The name should be in \"x.y\" format, where +* the length of \"x\" has a maximum of 64 characters, and length of \"y\" has a maximum of 199 characters. +* The name strings can contain letters, numbers and the underscore character only. Other characters are not valid, except for * the \".\" character that separates the \"x\" and \"y\" portions of the name. -* *IMPORTANT* - The name must be unique within the OCI region the credential is being created in. If you specify a name +* *IMPORTANT* - The name must be unique within the OCI region the credential is being created in. If you specify a name * that duplicates the name of another credential within the same OCI region, you may overwrite or corrupt the credential that is already * using the name. *

diff --git a/lib/database/lib/model/db-home-from-agent-resource-id.ts b/lib/database/lib/model/db-home-from-agent-resource-id.ts new file mode 100644 index 0000000000..34b096d1cb --- /dev/null +++ b/lib/database/lib/model/db-home-from-agent-resource-id.ts @@ -0,0 +1,111 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface DbHomeFromAgentResourceId { + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the Database Home. + */ + "id": string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment. + */ + "compartmentId": string; + /** + * The user-provided name for the Database Home. The name does not need to be unique. + */ + "displayName": string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the last patch history. This value is updated as soon as a patch operation is started. + */ + "lastPatchHistoryEntryId"?: string; + /** + * The current state of the Database Home. + */ + "lifecycleState": DbHomeFromAgentResourceId.LifecycleState; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the DB system. + */ + "dbSystemId"?: string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the VM cluster. + */ + "vmClusterId"?: string; + /** + * The Oracle Database version. + */ + "dbVersion": string; + /** + * The location of the Oracle Database Home. + */ + "dbHomeLocation": string; + /** + * Additional information about the current lifecycle state. + */ + "lifecycleDetails"?: string; + /** + * The date and time the Database Home was created. + */ + "timeCreated"?: Date; + /** + * The OCID of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + */ + "kmsKeyId"?: string; + /** + * List of one-off patches for Database Homes. + */ + "oneOffPatches"?: Array; + /** + * 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm). +*

+Example: `{\"Department\": \"Finance\"}` +* + */ + "freeformTags"?: { [key: string]: string }; + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. + * For more information, see [Resource Tags](https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm). + * + */ + "definedTags"?: { [key: string]: { [key: string]: any } }; + /** + * The database software image [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) + */ + "databaseSoftwareImageId"?: string; +} + +export namespace DbHomeFromAgentResourceId { + export enum LifecycleState { + Provisioning = "PROVISIONING", + Available = "AVAILABLE", + Updating = "UPDATING", + Terminating = "TERMINATING", + Terminated = "TERMINATED", + Failed = "FAILED" + } + + export function getJsonObj(obj: DbHomeFromAgentResourceId): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: DbHomeFromAgentResourceId): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/index.ts b/lib/database/lib/model/index.ts index 91eace63b2..fb18dda8e7 100644 --- a/lib/database/lib/model/index.ts +++ b/lib/database/lib/model/index.ts @@ -212,6 +212,8 @@ import * as DbBackupConfig from "./db-backup-config"; export import DbBackupConfig = DbBackupConfig.DbBackupConfig; import * as DbHome from "./db-home"; export import DbHome = DbHome.DbHome; +import * as DbHomeFromAgentResourceId from "./db-home-from-agent-resource-id"; +export import DbHomeFromAgentResourceId = DbHomeFromAgentResourceId.DbHomeFromAgentResourceId; import * as DbHomeSummary from "./db-home-summary"; export import DbHomeSummary = DbHomeSummary.DbHomeSummary; import * as DbIormConfig from "./db-iorm-config"; @@ -378,6 +380,8 @@ import * as UpdateCloudExadataInfrastructureDetails from "./update-cloud-exadata export import UpdateCloudExadataInfrastructureDetails = UpdateCloudExadataInfrastructureDetails.UpdateCloudExadataInfrastructureDetails; import * as UpdateCloudVmClusterDetails from "./update-cloud-vm-cluster-details"; export import UpdateCloudVmClusterDetails = UpdateCloudVmClusterDetails.UpdateCloudVmClusterDetails; +import * as UpdateDataGuardAssociationDetails from "./update-data-guard-association-details"; +export import UpdateDataGuardAssociationDetails = UpdateDataGuardAssociationDetails.UpdateDataGuardAssociationDetails; import * as UpdateDatabaseDetails from "./update-database-details"; export import UpdateDatabaseDetails = UpdateDatabaseDetails.UpdateDatabaseDetails; import * as UpdateDatabaseSoftwareImageDetails from "./update-database-software-image-details"; @@ -428,6 +432,16 @@ import * as VmClusterNetworkSummary from "./vm-cluster-network-summary"; export import VmClusterNetworkSummary = VmClusterNetworkSummary.VmClusterNetworkSummary; import * as VmClusterSummary from "./vm-cluster-summary"; export import VmClusterSummary = VmClusterSummary.VmClusterSummary; +import * as VmClusterUpdate from "./vm-cluster-update"; +export import VmClusterUpdate = VmClusterUpdate.VmClusterUpdate; +import * as VmClusterUpdateDetails from "./vm-cluster-update-details"; +export import VmClusterUpdateDetails = VmClusterUpdateDetails.VmClusterUpdateDetails; +import * as VmClusterUpdateHistoryEntry from "./vm-cluster-update-history-entry"; +export import VmClusterUpdateHistoryEntry = VmClusterUpdateHistoryEntry.VmClusterUpdateHistoryEntry; +import * as VmClusterUpdateHistoryEntrySummary from "./vm-cluster-update-history-entry-summary"; +export import VmClusterUpdateHistoryEntrySummary = VmClusterUpdateHistoryEntrySummary.VmClusterUpdateHistoryEntrySummary; +import * as VmClusterUpdateSummary from "./vm-cluster-update-summary"; +export import VmClusterUpdateSummary = VmClusterUpdateSummary.VmClusterUpdateSummary; import * as VmNetworkDetails from "./vm-network-details"; export import VmNetworkDetails = VmNetworkDetails.VmNetworkDetails; import * as WorkloadType from "./workload-type"; diff --git a/lib/database/lib/model/local-clone-pluggable-database-details.ts b/lib/database/lib/model/local-clone-pluggable-database-details.ts index fcafc0d9e3..ad62c04392 100644 --- a/lib/database/lib/model/local-clone-pluggable-database-details.ts +++ b/lib/database/lib/model/local-clone-pluggable-database-details.ts @@ -16,14 +16,14 @@ import * as model from "../model"; import common = require("oci-common"); /** - * Parameters for cloning a pluggable database to the same CDB. + * Parameters for cloning a pluggable database (PDB) within the same database (CDB). *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * */ export interface LocalClonePluggableDatabaseDetails { /** - * The name for the pluggable database. The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. + * The name for the pluggable database (PDB). The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. */ "clonedPdbName": string; /** diff --git a/lib/database/lib/model/pluggable-database-connection-strings.ts b/lib/database/lib/model/pluggable-database-connection-strings.ts index 2d48cdeed5..61e3d5840f 100644 --- a/lib/database/lib/model/pluggable-database-connection-strings.ts +++ b/lib/database/lib/model/pluggable-database-connection-strings.ts @@ -21,15 +21,15 @@ import common = require("oci-common"); */ export interface PluggableDatabaseConnectionStrings { /** - * Host name based PDB Connection String. + * A host name-based PDB connection string. */ "pdbDefault"?: string; /** - * IP based PDB Connection String. + * An IP-based PDB connection string. */ "pdbIpDefault"?: string; /** - * All connection strings to use to connect to the Pluggable Database. + * All connection strings to use to connect to the pluggable database. */ "allConnectionStrings"?: { [key: string]: string }; } diff --git a/lib/database/lib/model/pluggable-database-summary.ts b/lib/database/lib/model/pluggable-database-summary.ts index 3687729a3c..3a8ec568a4 100644 --- a/lib/database/lib/model/pluggable-database-summary.ts +++ b/lib/database/lib/model/pluggable-database-summary.ts @@ -17,7 +17,7 @@ import common = require("oci-common"); /** * A pluggable database (PDB) is portable collection of schemas, schema objects, and non-schema objects that appears to an Oracle client as a non-container database. To use a PDB, it needs to be plugged into a CDB. - * To use any of the API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm). + * To use any of the API operations, you must be authorized in an IAM policy. If you are not authorized, talk to a tenancy administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm). *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * @@ -32,7 +32,7 @@ export interface PluggableDatabaseSummary { */ "containerDatabaseId": string; /** - * The name for the pluggable database. The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. + * The name for the pluggable database (PDB). The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. */ "pdbName": string; /** @@ -44,17 +44,18 @@ export interface PluggableDatabaseSummary { */ "lifecycleDetails"?: string; /** - * The date and time the pluggable database was created + * The date and time the pluggable database was created. */ "timeCreated": Date; "connectionStrings"?: model.PluggableDatabaseConnectionStrings; /** - * The mode that pluggableDatabase is in. Open mode can only be changed to READ_ONLY or MIGRATE directly from the backend. + * The mode that pluggable database is in. Open mode can only be changed to READ_ONLY or MIGRATE directly from the backend (within the Oracle Database software). + * */ "openMode": PluggableDatabaseSummary.OpenMode; /** - * The restricted mode of pluggableDatabase. If a pluggableDatabase is opened in restricted mode, - * the user needs both Create a session and restricted session privileges to connect to it. + * The restricted mode of the pluggable database. If a pluggable database is opened in restricted mode, + * the user needs both create a session and have restricted session privileges to connect to it. * */ "isRestricted"?: boolean; diff --git a/lib/database/lib/model/pluggable-database.ts b/lib/database/lib/model/pluggable-database.ts index 8abec1cc91..3ff8aa8a5c 100644 --- a/lib/database/lib/model/pluggable-database.ts +++ b/lib/database/lib/model/pluggable-database.ts @@ -17,7 +17,7 @@ import common = require("oci-common"); /** * A pluggable database (PDB) is portable collection of schemas, schema objects, and non-schema objects that appears to an Oracle client as a non-container database. To use a PDB, it needs to be plugged into a CDB. - * To use any of the API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm). + * To use any of the API operations, you must be authorized in an IAM policy. If you are not authorized, talk to a tenancy administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm). *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * @@ -32,7 +32,7 @@ export interface PluggableDatabase { */ "containerDatabaseId": string; /** - * The name for the pluggable database. The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. + * The name for the pluggable database (PDB). The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. */ "pdbName": string; /** @@ -44,17 +44,18 @@ export interface PluggableDatabase { */ "lifecycleDetails"?: string; /** - * The date and time the pluggable database was created + * The date and time the pluggable database was created. */ "timeCreated": Date; "connectionStrings"?: model.PluggableDatabaseConnectionStrings; /** - * The mode that pluggableDatabase is in. Open mode can only be changed to READ_ONLY or MIGRATE directly from the backend. + * The mode that pluggable database is in. Open mode can only be changed to READ_ONLY or MIGRATE directly from the backend (within the Oracle Database software). + * */ "openMode": PluggableDatabase.OpenMode; /** - * The restricted mode of pluggableDatabase. If a pluggableDatabase is opened in restricted mode, - * the user needs both Create a session and restricted session privileges to connect to it. + * The restricted mode of the pluggable database. If a pluggable database is opened in restricted mode, + * the user needs both create a session and have restricted session privileges to connect to it. * */ "isRestricted"?: boolean; diff --git a/lib/database/lib/model/remote-clone-pluggable-database-details.ts b/lib/database/lib/model/remote-clone-pluggable-database-details.ts index aa6f1e4afa..bb2ad73a2b 100644 --- a/lib/database/lib/model/remote-clone-pluggable-database-details.ts +++ b/lib/database/lib/model/remote-clone-pluggable-database-details.ts @@ -16,7 +16,7 @@ import * as model from "../model"; import common = require("oci-common"); /** - * Parameters for cloning a pluggable database on a remote (different) CDB. + * Parameters for cloning a pluggable database (PDB) in a remote database (CDB). A remote CDB is one that does not contain the source PDB. *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * @@ -31,7 +31,7 @@ export interface RemoteClonePluggableDatabaseDetails { */ "sourceContainerDbAdminPassword": string; /** - * The name for the pluggable database. The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. + * The name for the pluggable database (PDB). The name is unique in the context of a {@link Database}. The name must begin with an alphabetic character and can contain a maximum of thirty alphanumeric characters. Special characters are not permitted. The pluggable database name should not be same as the container database name. */ "clonedPdbName": string; /** diff --git a/lib/database/lib/model/scan-details.ts b/lib/database/lib/model/scan-details.ts index d0f233fdc5..ac687b12b6 100644 --- a/lib/database/lib/model/scan-details.ts +++ b/lib/database/lib/model/scan-details.ts @@ -25,7 +25,7 @@ export interface ScanDetails { */ "hostname": string; /** - * The SCAN port. Default is 1521. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * The SCAN TCPIP port. Default is 1521. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "port": number; /** diff --git a/lib/database/lib/model/update-autonomous-database-details.ts b/lib/database/lib/model/update-autonomous-database-details.ts index cc1213b2c0..0dc155c0d4 100644 --- a/lib/database/lib/model/update-autonomous-database-details.ts +++ b/lib/database/lib/model/update-autonomous-database-details.ts @@ -18,30 +18,46 @@ import common = require("oci-common"); /** * Details to update an Oracle Autonomous Database. *

- **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. + **Notes** + * - To specify OCPU core count, you must use either `ocpuCount` or `cpuCoreCount`. You cannot use both parameters at the same time. + * - To specify a storage allocation, you must use either `dataStorageSizeInGBs` or `dataStorageSizeInTBs`. + * - See the individual parameter discriptions for more information on the OCPU and storage value parameters. + * **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * */ export interface UpdateAutonomousDatabaseDetails { /** - * The number of CPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * The number of OCPU cores to be made available to the Autonomous Database. + *

+ **Note:** This parameter cannot be used with the `ocpuCount` parameter. + * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "cpuCoreCount"?: number; /** - * The number of Fractional OCPU cores to be made available to the database. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * The number of OCPU cores to be made available to the Autonomous Database. To provision less than 1 core, enter a fractional value in an increment of 0.1. To provision 1 or more cores, you must enter an integer between 1 and the maximum number of cores available to the infrastructure shape. For example, you can provision 0.3 or 0.4 cores, but not 0.35 cores. Likewise, you can provision 2 cores or 3 cores, but not 2.5 cores. The maximum number of cores is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Note:** This parameter cannot be used with the `cpuCoreCount` parameter. + * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "ocpuCount"?: number; /** - * The size, in terabytes, of the data volume that will be attached to the database. + * The size, in terabytes, of the data volume that will be created and attached to the database. For Autonomous Databases on dedicated Exadata infrastructure, the maximum storage value is determined by the infrastructure shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. + *

+ **Note:** This parameter cannot be used with the `dataStorageSizeInGBs` parameter. * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "dataStorageSizeInTBs"?: number; /** - * The size, in gigabytes, of the data volume that will be attached to the database. - * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. - */ + * Applies to dedicated Exadata infrastructure only. +*

+The size, in gigabytes, of the data volume that will be created and attached to the database. The maximum storage value depends on the system shape. See [Characteristics of Infrastructure Shapes](https://www.oracle.com/pls/topic/lookup?ctx=en/cloud/paas/autonomous-database&id=ATPFG-GUID-B0F033C1-CC5A-42F0-B2E7-3CECFEDA1FD1) for shape details. +*

+**Note:** This parameter cannot be used with the `dataStorageSizeInTBs` parameter. +* Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ "dataStorageSizeInGBs"?: number; /** - * The user-friendly name for the Autonomous Database. The name does not have to be unique. Can only be updated for Autonomous Databases + * The user-friendly name for the Autonomous Database. The name does not have to be unique. The display name can only be updated for Autonomous Databases * using dedicated Exadata infrastructure. * */ diff --git a/lib/database/lib/model/update-data-guard-association-details.ts b/lib/database/lib/model/update-data-guard-association-details.ts new file mode 100644 index 0000000000..6466717571 --- /dev/null +++ b/lib/database/lib/model/update-data-guard-association-details.ts @@ -0,0 +1,86 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The configuration details for updating a Data Guard association for a database. + *

+ **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. + * + */ +export interface UpdateDataGuardAssociationDetails { + /** + * A strong password for the 'SYS', 'SYSTEM', and 'PDB Admin' users to apply during standby creation. +*

+The password must contain no fewer than nine characters and include: +*

+* At least two uppercase characters. +*

+* At least two lowercase characters. +*

+* At least two numeric characters. +*

+* At least two special characters. Valid special characters include \"_\", \"#\", and \"-\" only. +*

+**The password MUST be the same as the primary admin password.** +* + */ + "databaseAdminPassword"?: string; + /** + * The protection mode for the Data Guard association's primary and standby database. For more information, see + * [Oracle Data Guard Protection Modes](http://docs.oracle.com/database/122/SBYDB/oracle-data-guard-protection-modes.htm#SBYDB02000) + * in the Oracle Data Guard documentation. + * + */ + "protectionMode"?: UpdateDataGuardAssociationDetails.ProtectionMode; + /** + * The redo transport type to use for this Data Guard association. Valid values depend on the specified 'protectionMode': +* * MAXIMUM_AVAILABILITY - Use SYNC or FASTSYNC +* * MAXIMUM_PERFORMANCE - Use ASYNC +* * MAXIMUM_PROTECTION - Use SYNC +*

+For more information, see +* [Redo Transport Services](http://docs.oracle.com/database/122/SBYDB/oracle-data-guard-redo-transport-services.htm#SBYDB00400) +* in the Oracle Data Guard documentation. +* + */ + "transportType"?: UpdateDataGuardAssociationDetails.TransportType; +} + +export namespace UpdateDataGuardAssociationDetails { + export enum ProtectionMode { + MaximumAvailability = "MAXIMUM_AVAILABILITY", + MaximumPerformance = "MAXIMUM_PERFORMANCE", + MaximumProtection = "MAXIMUM_PROTECTION" + } + + export enum TransportType { + Sync = "SYNC", + Async = "ASYNC", + Fastsync = "FASTSYNC" + } + + export function getJsonObj(obj: UpdateDataGuardAssociationDetails): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: UpdateDataGuardAssociationDetails): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/update-pluggable-database-details.ts b/lib/database/lib/model/update-pluggable-database-details.ts index e48d949cae..26a9183a46 100644 --- a/lib/database/lib/model/update-pluggable-database-details.ts +++ b/lib/database/lib/model/update-pluggable-database-details.ts @@ -16,7 +16,7 @@ import * as model from "../model"; import common = require("oci-common"); /** - * Details for updating a pluggable database. + * Details for updating a pluggable database (PDB). *

**Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. * diff --git a/lib/database/lib/model/update-vm-cluster-details.ts b/lib/database/lib/model/update-vm-cluster-details.ts index 625856cbc5..888de98e52 100644 --- a/lib/database/lib/model/update-vm-cluster-details.ts +++ b/lib/database/lib/model/update-vm-cluster-details.ts @@ -47,6 +47,7 @@ export interface UpdateVmClusterDetails { */ "sshPublicKeys"?: Array; "version"?: model.PatchDetails; + "updateDetails"?: model.VmClusterUpdateDetails; /** * 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.cloud.oracle.com/Content/General/Concepts/resourcetags.htm). @@ -73,7 +74,10 @@ export namespace UpdateVmClusterDetails { const jsonObj = { ...obj, ...{ - "version": obj.version ? model.PatchDetails.getJsonObj(obj.version) : undefined + "version": obj.version ? model.PatchDetails.getJsonObj(obj.version) : undefined, + "updateDetails": obj.updateDetails + ? model.VmClusterUpdateDetails.getJsonObj(obj.updateDetails) + : undefined } }; @@ -83,7 +87,10 @@ export namespace UpdateVmClusterDetails { const jsonObj = { ...obj, ...{ - "version": obj.version ? model.PatchDetails.getDeserializedJsonObj(obj.version) : undefined + "version": obj.version ? model.PatchDetails.getDeserializedJsonObj(obj.version) : undefined, + "updateDetails": obj.updateDetails + ? model.VmClusterUpdateDetails.getDeserializedJsonObj(obj.updateDetails) + : undefined } }; diff --git a/lib/database/lib/model/vm-cluster-summary.ts b/lib/database/lib/model/vm-cluster-summary.ts index 38e93053e7..9cbfe1df21 100644 --- a/lib/database/lib/model/vm-cluster-summary.ts +++ b/lib/database/lib/model/vm-cluster-summary.ts @@ -83,8 +83,7 @@ export interface VmClusterSummary { */ "dbNodeStorageSizeInGBs"?: number; /** - * Size, in terabytes, of the DATA disk group. - * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * Size, in terabytes, of the DATA disk group. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "dataStorageSizeInTBs"?: number; /** @@ -96,6 +95,10 @@ export interface VmClusterSummary { * The Oracle Grid Infrastructure software version for the VM cluster. */ "giVersion"?: string; + /** + * Operating system version of the image. + */ + "systemVersion"?: string; /** * The public key portion of one or more key pairs used for SSH access to the VM cluster. */ diff --git a/lib/database/lib/model/vm-cluster-update-details.ts b/lib/database/lib/model/vm-cluster-update-details.ts new file mode 100644 index 0000000000..2719007961 --- /dev/null +++ b/lib/database/lib/model/vm-cluster-update-details.ts @@ -0,0 +1,50 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details specifying which maintenance update to apply to the VM Cluster and which action is to be performed by the maintenance update. Applies to Exadata Cloud@Customer instances only. + * + */ +export interface VmClusterUpdateDetails { + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update. + */ + "updateId"?: string; + /** + * The update action to perform. + */ + "updateAction"?: VmClusterUpdateDetails.UpdateAction; +} + +export namespace VmClusterUpdateDetails { + export enum UpdateAction { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK" + } + + export function getJsonObj(obj: VmClusterUpdateDetails): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: VmClusterUpdateDetails): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/vm-cluster-update-history-entry-summary.ts b/lib/database/lib/model/vm-cluster-update-history-entry-summary.ts new file mode 100644 index 0000000000..912dfd741d --- /dev/null +++ b/lib/database/lib/model/vm-cluster-update-history-entry-summary.ts @@ -0,0 +1,102 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The record of a maintenance update action performed on a specified VM cluster. Applies to Exadata Cloud@Customer instances only. + * + */ +export interface VmClusterUpdateHistoryEntrySummary { + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update history entry. + */ + "id": string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update. + */ + "updateId": string; + /** + * The update action performed using this maintenance update. + */ + "updateAction"?: VmClusterUpdateHistoryEntrySummary.UpdateAction; + /** + * The type of VM cluster maintenance update. + */ + "updateType": VmClusterUpdateHistoryEntrySummary.UpdateType; + /** + * The current lifecycle state of the maintenance update operation. + */ + "lifecycleState": VmClusterUpdateHistoryEntrySummary.LifecycleState; + /** + * Descriptive text providing additional details about the lifecycle state. + * + */ + "lifecycleDetails"?: string; + /** + * The date and time when the maintenance update action started. + */ + "timeStarted": Date; + /** + * The date and time when the maintenance update action completed. + */ + "timeCompleted"?: Date; +} + +export namespace VmClusterUpdateHistoryEntrySummary { + export enum UpdateAction { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum UpdateType { + GiUpgrade = "GI_UPGRADE", + GiPatch = "GI_PATCH", + OsUpdate = "OS_UPDATE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum LifecycleState { + InProgress = "IN_PROGRESS", + Succeeded = "SUCCEEDED", + 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. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: VmClusterUpdateHistoryEntrySummary): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: VmClusterUpdateHistoryEntrySummary): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/vm-cluster-update-history-entry.ts b/lib/database/lib/model/vm-cluster-update-history-entry.ts new file mode 100644 index 0000000000..3fd4610e6f --- /dev/null +++ b/lib/database/lib/model/vm-cluster-update-history-entry.ts @@ -0,0 +1,102 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The record of a maintenance update action performed on a specified VM cluster. Applies to Exadata Cloud@Customer instances only. + * + */ +export interface VmClusterUpdateHistoryEntry { + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update history entry. + */ + "id": string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update. + */ + "updateId": string; + /** + * The update action performed using this maintenance update. + */ + "updateAction"?: VmClusterUpdateHistoryEntry.UpdateAction; + /** + * The type of VM cluster maintenance update. + */ + "updateType": VmClusterUpdateHistoryEntry.UpdateType; + /** + * The current lifecycle state of the maintenance update operation. + */ + "lifecycleState": VmClusterUpdateHistoryEntry.LifecycleState; + /** + * Descriptive text providing additional details about the lifecycle state. + * + */ + "lifecycleDetails"?: string; + /** + * The date and time when the maintenance update action started. + */ + "timeStarted": Date; + /** + * The date and time when the maintenance update action completed. + */ + "timeCompleted"?: Date; +} + +export namespace VmClusterUpdateHistoryEntry { + export enum UpdateAction { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum UpdateType { + GiUpgrade = "GI_UPGRADE", + GiPatch = "GI_PATCH", + OsUpdate = "OS_UPDATE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum LifecycleState { + InProgress = "IN_PROGRESS", + Succeeded = "SUCCEEDED", + 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. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: VmClusterUpdateHistoryEntry): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: VmClusterUpdateHistoryEntry): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/vm-cluster-update-summary.ts b/lib/database/lib/model/vm-cluster-update-summary.ts new file mode 100644 index 0000000000..bb9d7f2c87 --- /dev/null +++ b/lib/database/lib/model/vm-cluster-update-summary.ts @@ -0,0 +1,122 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** +* A maintenance update for a VM cluster. Applies to Exadata Cloud@Customer instances only. +*

+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.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm). +* +*/ +export interface VmClusterUpdateSummary { + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update. + */ + "id": string; + /** + * Details of the maintenance update package. + */ + "description": string; + /** + * The update action performed most recently using this maintenance update. + */ + "lastAction"?: VmClusterUpdateSummary.LastAction; + /** + * The possible actions that can be performed using this maintenance update. + */ + "availableActions"?: Array; + /** + * The type of VM cluster maintenance update. + */ + "updateType": VmClusterUpdateSummary.UpdateType; + /** + * Descriptive text providing additional details about the lifecycle state. + * + */ + "lifecycleDetails"?: string; + /** + * The current state of the maintenance update. Dependent on value of `lastAction`. + */ + "lifecycleState"?: VmClusterUpdateSummary.LifecycleState; + /** + * The date and time the maintenance update was released. + */ + "timeReleased": Date; + /** + * The version of the maintenance update package. + */ + "version": string; +} + +export namespace VmClusterUpdateSummary { + export enum LastAction { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum AvailableActions { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum UpdateType { + GiUpgrade = "GI_UPGRADE", + GiPatch = "GI_PATCH", + OsUpdate = "OS_UPDATE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum LifecycleState { + Available = "AVAILABLE", + Success = "SUCCESS", + InProgress = "IN_PROGRESS", + 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. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: VmClusterUpdateSummary): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: VmClusterUpdateSummary): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/vm-cluster-update.ts b/lib/database/lib/model/vm-cluster-update.ts new file mode 100644 index 0000000000..6203e7578f --- /dev/null +++ b/lib/database/lib/model/vm-cluster-update.ts @@ -0,0 +1,122 @@ +/** + * Database Service API + * The API for the Database Service. Use this API to manage resources such as databases and DB Systems. For more information, see [Overview of the Database Service](/iaas/Content/Database/Concepts/databaseoverview.htm). + + * OpenAPI spec version: 20160918 + * Contact: sic_dbaas_cp_us_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** +* A maintenance update for a VM cluster. Applies to Exadata Cloud@Customer instances only. +*

+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.cloud.oracle.com/Content/Identity/Concepts/policygetstarted.htm). +* +*/ +export interface VmClusterUpdate { + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update. + */ + "id": string; + /** + * Details of the maintenance update package. + */ + "description": string; + /** + * The update action performed most recently using this maintenance update. + */ + "lastAction"?: VmClusterUpdate.LastAction; + /** + * The possible actions that can be performed using this maintenance update. + */ + "availableActions"?: Array; + /** + * The type of VM cluster maintenance update. + */ + "updateType": VmClusterUpdate.UpdateType; + /** + * Descriptive text providing additional details about the lifecycle state. + * + */ + "lifecycleDetails"?: string; + /** + * The current state of the maintenance update. Dependent on value of `lastAction`. + */ + "lifecycleState"?: VmClusterUpdate.LifecycleState; + /** + * The date and time the maintenance update was released. + */ + "timeReleased": Date; + /** + * The version of the maintenance update package. + */ + "version": string; +} + +export namespace VmClusterUpdate { + export enum LastAction { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum AvailableActions { + RollingApply = "ROLLING_APPLY", + Precheck = "PRECHECK", + Rollback = "ROLLBACK", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum UpdateType { + GiUpgrade = "GI_UPGRADE", + GiPatch = "GI_PATCH", + OsUpdate = "OS_UPDATE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum LifecycleState { + Available = "AVAILABLE", + Success = "SUCCESS", + InProgress = "IN_PROGRESS", + 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. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: VmClusterUpdate): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: VmClusterUpdate): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/database/lib/model/vm-cluster.ts b/lib/database/lib/model/vm-cluster.ts index 9afa75f99c..83144e3efb 100644 --- a/lib/database/lib/model/vm-cluster.ts +++ b/lib/database/lib/model/vm-cluster.ts @@ -83,8 +83,7 @@ export interface VmCluster { */ "dbNodeStorageSizeInGBs"?: number; /** - * Size, in terabytes, of the DATA disk group. - * Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + * Size, in terabytes, of the DATA disk group. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "dataStorageSizeInTBs"?: number; /** @@ -96,6 +95,10 @@ export interface VmCluster { * The Oracle Grid Infrastructure software version for the VM cluster. */ "giVersion"?: string; + /** + * Operating system version of the image. + */ + "systemVersion"?: string; /** * The public key portion of one or more key pairs used for SSH access to the VM cluster. */ diff --git a/lib/database/lib/request/download-validation-report-request.ts b/lib/database/lib/request/download-validation-report-request.ts new file mode 100644 index 0000000000..7f0a53c9f7 --- /dev/null +++ b/lib/database/lib/request/download-validation-report-request.ts @@ -0,0 +1,43 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/DownloadValidationReport.ts.html |here} to see how to use DownloadValidationReportRequest. + */ +export interface DownloadValidationReportRequest extends common.BaseRequest { + /** + * The Exadata infrastructure [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "exadataInfrastructureId": string; + /** + * The VM cluster network [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "vmClusterNetworkId": string; + /** + * Unique identifier for the request. + * + */ + "opcRequestId"?: string; + /** + * 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). + * + */ + "opcRetryToken"?: string; +} diff --git a/lib/database/lib/request/get-vm-cluster-update-history-entry-request.ts b/lib/database/lib/request/get-vm-cluster-update-history-entry-request.ts new file mode 100644 index 0000000000..b8ccbb6fa3 --- /dev/null +++ b/lib/database/lib/request/get-vm-cluster-update-history-entry-request.ts @@ -0,0 +1,34 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/GetVmClusterUpdateHistoryEntry.ts.html |here} to see how to use GetVmClusterUpdateHistoryEntryRequest. + */ +export interface GetVmClusterUpdateHistoryEntryRequest extends common.BaseRequest { + /** + * The VM cluster [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "vmClusterId": string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update history entry. + */ + "updateHistoryEntryId": string; + /** + * Unique identifier for the request. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/database/lib/request/get-vm-cluster-update-request.ts b/lib/database/lib/request/get-vm-cluster-update-request.ts new file mode 100644 index 0000000000..4478488494 --- /dev/null +++ b/lib/database/lib/request/get-vm-cluster-update-request.ts @@ -0,0 +1,34 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/GetVmClusterUpdate.ts.html |here} to see how to use GetVmClusterUpdateRequest. + */ +export interface GetVmClusterUpdateRequest extends common.BaseRequest { + /** + * The VM cluster [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "vmClusterId": string; + /** + * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the maintenance update. + */ + "updateId": string; + /** + * Unique identifier for the request. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/database/lib/request/index.ts b/lib/database/lib/request/index.ts index 18a6d654bb..e1804f303f 100644 --- a/lib/database/lib/request/index.ts +++ b/lib/database/lib/request/index.ts @@ -156,6 +156,8 @@ import * as DisableExternalPluggableDatabaseOperationsInsightsRequest from "./di export import DisableExternalPluggableDatabaseOperationsInsightsRequest = DisableExternalPluggableDatabaseOperationsInsightsRequest.DisableExternalPluggableDatabaseOperationsInsightsRequest; import * as DownloadExadataInfrastructureConfigFileRequest from "./download-exadata-infrastructure-config-file-request"; export import DownloadExadataInfrastructureConfigFileRequest = DownloadExadataInfrastructureConfigFileRequest.DownloadExadataInfrastructureConfigFileRequest; +import * as DownloadValidationReportRequest from "./download-validation-report-request"; +export import DownloadValidationReportRequest = DownloadValidationReportRequest.DownloadValidationReportRequest; import * as DownloadVmClusterNetworkConfigFileRequest from "./download-vm-cluster-network-config-file-request"; export import DownloadVmClusterNetworkConfigFileRequest = DownloadVmClusterNetworkConfigFileRequest.DownloadVmClusterNetworkConfigFileRequest; import * as EnableAutonomousDatabaseOperationsInsightsRequest from "./enable-autonomous-database-operations-insights-request"; @@ -268,6 +270,10 @@ import * as GetVmClusterPatchRequest from "./get-vm-cluster-patch-request"; export import GetVmClusterPatchRequest = GetVmClusterPatchRequest.GetVmClusterPatchRequest; import * as GetVmClusterPatchHistoryEntryRequest from "./get-vm-cluster-patch-history-entry-request"; export import GetVmClusterPatchHistoryEntryRequest = GetVmClusterPatchHistoryEntryRequest.GetVmClusterPatchHistoryEntryRequest; +import * as GetVmClusterUpdateRequest from "./get-vm-cluster-update-request"; +export import GetVmClusterUpdateRequest = GetVmClusterUpdateRequest.GetVmClusterUpdateRequest; +import * as GetVmClusterUpdateHistoryEntryRequest from "./get-vm-cluster-update-history-entry-request"; +export import GetVmClusterUpdateHistoryEntryRequest = GetVmClusterUpdateHistoryEntryRequest.GetVmClusterUpdateHistoryEntryRequest; import * as LaunchAutonomousExadataInfrastructureRequest from "./launch-autonomous-exadata-infrastructure-request"; export import LaunchAutonomousExadataInfrastructureRequest = LaunchAutonomousExadataInfrastructureRequest.LaunchAutonomousExadataInfrastructureRequest; import * as LaunchDbSystemRequest from "./launch-db-system-request"; @@ -362,6 +368,10 @@ import * as ListVmClusterPatchHistoryEntriesRequest from "./list-vm-cluster-patc export import ListVmClusterPatchHistoryEntriesRequest = ListVmClusterPatchHistoryEntriesRequest.ListVmClusterPatchHistoryEntriesRequest; import * as ListVmClusterPatchesRequest from "./list-vm-cluster-patches-request"; export import ListVmClusterPatchesRequest = ListVmClusterPatchesRequest.ListVmClusterPatchesRequest; +import * as ListVmClusterUpdateHistoryEntriesRequest from "./list-vm-cluster-update-history-entries-request"; +export import ListVmClusterUpdateHistoryEntriesRequest = ListVmClusterUpdateHistoryEntriesRequest.ListVmClusterUpdateHistoryEntriesRequest; +import * as ListVmClusterUpdatesRequest from "./list-vm-cluster-updates-request"; +export import ListVmClusterUpdatesRequest = ListVmClusterUpdatesRequest.ListVmClusterUpdatesRequest; import * as ListVmClustersRequest from "./list-vm-clusters-request"; export import ListVmClustersRequest = ListVmClustersRequest.ListVmClustersRequest; import * as LocalClonePluggableDatabaseRequest from "./local-clone-pluggable-database-request"; @@ -438,6 +448,8 @@ import * as UpdateCloudVmClusterRequest from "./update-cloud-vm-cluster-request" export import UpdateCloudVmClusterRequest = UpdateCloudVmClusterRequest.UpdateCloudVmClusterRequest; import * as UpdateCloudVmClusterIormConfigRequest from "./update-cloud-vm-cluster-iorm-config-request"; export import UpdateCloudVmClusterIormConfigRequest = UpdateCloudVmClusterIormConfigRequest.UpdateCloudVmClusterIormConfigRequest; +import * as UpdateDataGuardAssociationRequest from "./update-data-guard-association-request"; +export import UpdateDataGuardAssociationRequest = UpdateDataGuardAssociationRequest.UpdateDataGuardAssociationRequest; import * as UpdateDatabaseRequest from "./update-database-request"; export import UpdateDatabaseRequest = UpdateDatabaseRequest.UpdateDatabaseRequest; import * as UpdateDatabaseSoftwareImageRequest from "./update-database-software-image-request"; diff --git a/lib/database/lib/request/list-vm-cluster-update-history-entries-request.ts b/lib/database/lib/request/list-vm-cluster-update-history-entries-request.ts new file mode 100644 index 0000000000..b096a5ef74 --- /dev/null +++ b/lib/database/lib/request/list-vm-cluster-update-history-entries-request.ts @@ -0,0 +1,54 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/ListVmClusterUpdateHistoryEntries.ts.html |here} to see how to use ListVmClusterUpdateHistoryEntriesRequest. + */ +export interface ListVmClusterUpdateHistoryEntriesRequest extends common.BaseRequest { + /** + * The VM cluster [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "vmClusterId": string; + /** + * A filter to return only resources that match the given update type exactly. + */ + "updateType"?: ListVmClusterUpdateHistoryEntriesRequest.UpdateType; + /** + * A filter to return only resources that match the given lifecycle state exactly. + */ + "lifecycleState"?: string; + /** + * The maximum number of items to return per page. + */ + "limit"?: number; + /** + * The pagination token to continue listing from. + */ + "page"?: string; + /** + * Unique identifier for the request. + * + */ + "opcRequestId"?: string; +} + +export namespace ListVmClusterUpdateHistoryEntriesRequest { + export enum UpdateType { + GiUpgrade = "GI_UPGRADE", + GiPatch = "GI_PATCH", + OsUpdate = "OS_UPDATE" + } +} diff --git a/lib/database/lib/request/list-vm-cluster-updates-request.ts b/lib/database/lib/request/list-vm-cluster-updates-request.ts new file mode 100644 index 0000000000..4cae4c2273 --- /dev/null +++ b/lib/database/lib/request/list-vm-cluster-updates-request.ts @@ -0,0 +1,54 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/ListVmClusterUpdates.ts.html |here} to see how to use ListVmClusterUpdatesRequest. + */ +export interface ListVmClusterUpdatesRequest extends common.BaseRequest { + /** + * The VM cluster [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "vmClusterId": string; + /** + * A filter to return only resources that match the given update type exactly. + */ + "updateType"?: ListVmClusterUpdatesRequest.UpdateType; + /** + * A filter to return only resources that match the given lifecycle state exactly. + */ + "lifecycleState"?: string; + /** + * The maximum number of items to return per page. + */ + "limit"?: number; + /** + * The pagination token to continue listing from. + */ + "page"?: string; + /** + * Unique identifier for the request. + * + */ + "opcRequestId"?: string; +} + +export namespace ListVmClusterUpdatesRequest { + export enum UpdateType { + GiUpgrade = "GI_UPGRADE", + GiPatch = "GI_PATCH", + OsUpdate = "OS_UPDATE" + } +} diff --git a/lib/database/lib/request/remote-clone-pluggable-database-request.ts b/lib/database/lib/request/remote-clone-pluggable-database-request.ts index c7e9b8a684..f5555b21db 100644 --- a/lib/database/lib/request/remote-clone-pluggable-database-request.ts +++ b/lib/database/lib/request/remote-clone-pluggable-database-request.ts @@ -19,7 +19,7 @@ import common = require("oci-common"); */ export interface RemoteClonePluggableDatabaseRequest extends common.BaseRequest { /** - * Request to clone a pluggable database remotely. + * Request to clone a pluggable database (PDB) to a different database (CDB) from the source PDB. */ "remoteClonePluggableDatabaseDetails": model.RemoteClonePluggableDatabaseDetails; /** diff --git a/lib/database/lib/request/update-data-guard-association-request.ts b/lib/database/lib/request/update-data-guard-association-request.ts new file mode 100644 index 0000000000..b06e0d4bbb --- /dev/null +++ b/lib/database/lib/request/update-data-guard-association-request.ts @@ -0,0 +1,45 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/database/UpdateDataGuardAssociation.ts.html |here} to see how to use UpdateDataGuardAssociationRequest. + */ +export interface UpdateDataGuardAssociationRequest extends common.BaseRequest { + /** + * The database [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "databaseId": string; + /** + * The Data Guard association's [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm). + */ + "dataGuardAssociationId": string; + /** + * A request to update Data Guard association of a database. + */ + "updateDataGuardAssociationDetails": model.UpdateDataGuardAssociationDetails; + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `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. + * + */ + "ifMatch"?: string; + /** + * Unique identifier for the request. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/database/lib/response/download-validation-report-response.ts b/lib/database/lib/response/download-validation-report-response.ts new file mode 100644 index 0000000000..ca105ff17e --- /dev/null +++ b/lib/database/lib/response/download-validation-report-response.ts @@ -0,0 +1,41 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); +import stream = require("stream"); + +export interface DownloadValidationReportResponse { + /** + * For optimistic concurrency control. See `if-match`. + */ + "etag": string; + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about + * a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * Size of the file. + */ + "contentLength": number; + /** + * The date and time the network validation report file was created, as described in [RFC 3339](https://tools.ietf.org/rfc/rfc3339), section 14.29. + */ + "lastModified": Date; + /** + * The returned stream.Readable | ReadableStream instance. + */ + "value": stream.Readable | ReadableStream; +} diff --git a/lib/database/lib/response/get-vm-cluster-update-history-entry-response.ts b/lib/database/lib/response/get-vm-cluster-update-history-entry-response.ts new file mode 100644 index 0000000000..2457b0139a --- /dev/null +++ b/lib/database/lib/response/get-vm-cluster-update-history-entry-response.ts @@ -0,0 +1,32 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface GetVmClusterUpdateHistoryEntryResponse { + /** + * For optimistic concurrency control. See `if-match`. + */ + "etag": string; + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about + * a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * The returned model.VmClusterUpdateHistoryEntry instance. + */ + "vmClusterUpdateHistoryEntry": model.VmClusterUpdateHistoryEntry; +} diff --git a/lib/database/lib/response/get-vm-cluster-update-response.ts b/lib/database/lib/response/get-vm-cluster-update-response.ts new file mode 100644 index 0000000000..1e93fdca1d --- /dev/null +++ b/lib/database/lib/response/get-vm-cluster-update-response.ts @@ -0,0 +1,28 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface GetVmClusterUpdateResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about + * a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * The returned model.VmClusterUpdate instance. + */ + "vmClusterUpdate": model.VmClusterUpdate; +} diff --git a/lib/database/lib/response/index.ts b/lib/database/lib/response/index.ts index c5fa95da21..fc2a0348e9 100644 --- a/lib/database/lib/response/index.ts +++ b/lib/database/lib/response/index.ts @@ -156,6 +156,8 @@ import * as DisableExternalPluggableDatabaseOperationsInsightsResponse from "./d export import DisableExternalPluggableDatabaseOperationsInsightsResponse = DisableExternalPluggableDatabaseOperationsInsightsResponse.DisableExternalPluggableDatabaseOperationsInsightsResponse; import * as DownloadExadataInfrastructureConfigFileResponse from "./download-exadata-infrastructure-config-file-response"; export import DownloadExadataInfrastructureConfigFileResponse = DownloadExadataInfrastructureConfigFileResponse.DownloadExadataInfrastructureConfigFileResponse; +import * as DownloadValidationReportResponse from "./download-validation-report-response"; +export import DownloadValidationReportResponse = DownloadValidationReportResponse.DownloadValidationReportResponse; import * as DownloadVmClusterNetworkConfigFileResponse from "./download-vm-cluster-network-config-file-response"; export import DownloadVmClusterNetworkConfigFileResponse = DownloadVmClusterNetworkConfigFileResponse.DownloadVmClusterNetworkConfigFileResponse; import * as EnableAutonomousDatabaseOperationsInsightsResponse from "./enable-autonomous-database-operations-insights-response"; @@ -268,6 +270,10 @@ import * as GetVmClusterPatchResponse from "./get-vm-cluster-patch-response"; export import GetVmClusterPatchResponse = GetVmClusterPatchResponse.GetVmClusterPatchResponse; import * as GetVmClusterPatchHistoryEntryResponse from "./get-vm-cluster-patch-history-entry-response"; export import GetVmClusterPatchHistoryEntryResponse = GetVmClusterPatchHistoryEntryResponse.GetVmClusterPatchHistoryEntryResponse; +import * as GetVmClusterUpdateResponse from "./get-vm-cluster-update-response"; +export import GetVmClusterUpdateResponse = GetVmClusterUpdateResponse.GetVmClusterUpdateResponse; +import * as GetVmClusterUpdateHistoryEntryResponse from "./get-vm-cluster-update-history-entry-response"; +export import GetVmClusterUpdateHistoryEntryResponse = GetVmClusterUpdateHistoryEntryResponse.GetVmClusterUpdateHistoryEntryResponse; import * as LaunchAutonomousExadataInfrastructureResponse from "./launch-autonomous-exadata-infrastructure-response"; export import LaunchAutonomousExadataInfrastructureResponse = LaunchAutonomousExadataInfrastructureResponse.LaunchAutonomousExadataInfrastructureResponse; import * as LaunchDbSystemResponse from "./launch-db-system-response"; @@ -362,6 +368,10 @@ import * as ListVmClusterPatchHistoryEntriesResponse from "./list-vm-cluster-pat export import ListVmClusterPatchHistoryEntriesResponse = ListVmClusterPatchHistoryEntriesResponse.ListVmClusterPatchHistoryEntriesResponse; import * as ListVmClusterPatchesResponse from "./list-vm-cluster-patches-response"; export import ListVmClusterPatchesResponse = ListVmClusterPatchesResponse.ListVmClusterPatchesResponse; +import * as ListVmClusterUpdateHistoryEntriesResponse from "./list-vm-cluster-update-history-entries-response"; +export import ListVmClusterUpdateHistoryEntriesResponse = ListVmClusterUpdateHistoryEntriesResponse.ListVmClusterUpdateHistoryEntriesResponse; +import * as ListVmClusterUpdatesResponse from "./list-vm-cluster-updates-response"; +export import ListVmClusterUpdatesResponse = ListVmClusterUpdatesResponse.ListVmClusterUpdatesResponse; import * as ListVmClustersResponse from "./list-vm-clusters-response"; export import ListVmClustersResponse = ListVmClustersResponse.ListVmClustersResponse; import * as LocalClonePluggableDatabaseResponse from "./local-clone-pluggable-database-response"; @@ -438,6 +448,8 @@ import * as UpdateCloudVmClusterResponse from "./update-cloud-vm-cluster-respons export import UpdateCloudVmClusterResponse = UpdateCloudVmClusterResponse.UpdateCloudVmClusterResponse; import * as UpdateCloudVmClusterIormConfigResponse from "./update-cloud-vm-cluster-iorm-config-response"; export import UpdateCloudVmClusterIormConfigResponse = UpdateCloudVmClusterIormConfigResponse.UpdateCloudVmClusterIormConfigResponse; +import * as UpdateDataGuardAssociationResponse from "./update-data-guard-association-response"; +export import UpdateDataGuardAssociationResponse = UpdateDataGuardAssociationResponse.UpdateDataGuardAssociationResponse; import * as UpdateDatabaseResponse from "./update-database-response"; export import UpdateDatabaseResponse = UpdateDatabaseResponse.UpdateDatabaseResponse; import * as UpdateDatabaseSoftwareImageResponse from "./update-database-software-image-response"; diff --git a/lib/database/lib/response/list-vm-cluster-update-history-entries-response.ts b/lib/database/lib/response/list-vm-cluster-update-history-entries-response.ts new file mode 100644 index 0000000000..f754c1b288 --- /dev/null +++ b/lib/database/lib/response/list-vm-cluster-update-history-entries-response.ts @@ -0,0 +1,36 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface ListVmClusterUpdateHistoryEntriesResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about + * a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * 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 `page` parameter for the + * subsequent GET request. For information about pagination, see + * [List Pagination](https://docs.cloud.oracle.com/Content/API/Concepts/usingapi.htm#nine). + * + */ + "opcNextPage": string; + /** + * A list of VmClusterUpdateHistoryEntrySummary instances. + */ + "items": model.VmClusterUpdateHistoryEntrySummary[]; +} diff --git a/lib/database/lib/response/list-vm-cluster-updates-response.ts b/lib/database/lib/response/list-vm-cluster-updates-response.ts new file mode 100644 index 0000000000..8311282453 --- /dev/null +++ b/lib/database/lib/response/list-vm-cluster-updates-response.ts @@ -0,0 +1,36 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface ListVmClusterUpdatesResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about + * a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * 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 `page` parameter for the + * subsequent GET request. For information about pagination, see + * [List Pagination](https://docs.cloud.oracle.com/Content/API/Concepts/usingapi.htm#nine). + * + */ + "opcNextPage": string; + /** + * A list of VmClusterUpdateSummary instances. + */ + "items": model.VmClusterUpdateSummary[]; +} diff --git a/lib/database/lib/response/update-data-guard-association-response.ts b/lib/database/lib/response/update-data-guard-association-response.ts new file mode 100644 index 0000000000..ef3c43eadc --- /dev/null +++ b/lib/database/lib/response/update-data-guard-association-response.ts @@ -0,0 +1,37 @@ +/** + * + * + * OpenAPI spec version: 20160918 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface UpdateDataGuardAssociationResponse { + /** + * The [OCID](https://docs.cloud.oracle.com/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. + * + */ + "opcWorkRequestId": string; + /** + * For optimistic concurrency control. See `if-match`. + */ + "etag": string; + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about + * a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * The returned model.DataGuardAssociation instance. + */ + "dataGuardAssociation": model.DataGuardAssociation; +} diff --git a/lib/database/package.json b/lib/database/package.json index 85dc5d276f..58cba375c0 100644 --- a/lib/database/package.json +++ b/lib/database/package.json @@ -1,6 +1,6 @@ { "name": "oci-database", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Database", "repository": { "type": "git", diff --git a/lib/databasemanagement/lib/client.ts b/lib/databasemanagement/lib/client.ts index 0ee5f319b8..25ea05d856 100644 --- a/lib/databasemanagement/lib/client.ts +++ b/lib/databasemanagement/lib/client.ts @@ -47,6 +47,10 @@ export class DbManagementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/databasemanagement/package.json b/lib/databasemanagement/package.json index afe6e35d1e..6cd4ea34f6 100644 --- a/lib/databasemanagement/package.json +++ b/lib/databasemanagement/package.json @@ -1,6 +1,6 @@ { "name": "oci-databasemanagement", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Database Management Service", "repository": { "type": "git", diff --git a/lib/databasemigration/lib/client.ts b/lib/databasemigration/lib/client.ts index bb304aa821..0309202658 100644 --- a/lib/databasemigration/lib/client.ts +++ b/lib/databasemigration/lib/client.ts @@ -44,6 +44,10 @@ export class DatabaseMigrationClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/databasemigration/package.json b/lib/databasemigration/package.json index c3be56e784..f0bb24cb0a 100644 --- a/lib/databasemigration/package.json +++ b/lib/databasemigration/package.json @@ -1,6 +1,6 @@ { "name": "oci-databasemigration", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Database Migration Service", "repository": { "type": "git", diff --git a/lib/datacatalog/lib/client.ts b/lib/datacatalog/lib/client.ts index 6b31560467..91a38b54f7 100644 --- a/lib/datacatalog/lib/client.ts +++ b/lib/datacatalog/lib/client.ts @@ -45,6 +45,10 @@ export class DataCatalogClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/datacatalog/package.json b/lib/datacatalog/package.json index 27fa55a0dc..4475bcf5c4 100644 --- a/lib/datacatalog/package.json +++ b/lib/datacatalog/package.json @@ -1,6 +1,6 @@ { "name": "oci-datacatalog", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Data catalogue Service", "repository": { "type": "git", diff --git a/lib/dataflow/lib/client.ts b/lib/dataflow/lib/client.ts index c26a6a65e2..b2c4db7a26 100644 --- a/lib/dataflow/lib/client.ts +++ b/lib/dataflow/lib/client.ts @@ -46,6 +46,10 @@ export class DataFlowClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/dataflow/package.json b/lib/dataflow/package.json index 85035c6eca..81f95b0694 100644 --- a/lib/dataflow/package.json +++ b/lib/dataflow/package.json @@ -1,6 +1,6 @@ { "name": "oci-dataflow", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Dataflow service", "repository": { "type": "git", diff --git a/lib/dataintegration/lib/client.ts b/lib/dataintegration/lib/client.ts index bc2debdbd7..af41fec386 100644 --- a/lib/dataintegration/lib/client.ts +++ b/lib/dataintegration/lib/client.ts @@ -46,6 +46,10 @@ export class DataIntegrationClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1199,6 +1203,77 @@ export class DataIntegrationClient { } } + /** + * Endpoint to create a new schedule + * @param CreateScheduleRequest + * @return CreateScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/CreateSchedule.ts.html |here} to see how to use CreateSchedule API. + */ + public async createSchedule( + createScheduleRequest: requests.CreateScheduleRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#createSchedule."); + const pathParams = { + "{workspaceId}": createScheduleRequest.workspaceId, + "{applicationKey}": createScheduleRequest.applicationKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": createScheduleRequest.opcRequestId, + "opc-retry-token": createScheduleRequest.opcRetryToken + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + createScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/schedules", + method: "POST", + bodyContent: common.ObjectSerializer.serialize( + createScheduleRequest.createScheduleDetails, + "CreateScheduleDetails", + model.CreateScheduleDetails.getJsonObj + ), + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "schedule", + bodyModel: model.Schedule, + type: "model.Schedule", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Creates a new task ready for performing data integrations. There are specialized types of tasks that include data loader and integration tasks. * @@ -1341,6 +1416,78 @@ export class DataIntegrationClient { } } + /** + * Endpoint to be used create TaskSchedule. + * @param CreateTaskScheduleRequest + * @return CreateTaskScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/CreateTaskSchedule.ts.html |here} to see how to use CreateTaskSchedule API. + */ + public async createTaskSchedule( + createTaskScheduleRequest: requests.CreateTaskScheduleRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DataIntegrationClient#createTaskSchedule."); + const pathParams = { + "{workspaceId}": createTaskScheduleRequest.workspaceId, + "{applicationKey}": createTaskScheduleRequest.applicationKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": createTaskScheduleRequest.opcRequestId, + "opc-retry-token": createTaskScheduleRequest.opcRetryToken + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + createTaskScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/taskSchedules", + method: "POST", + bodyContent: common.ObjectSerializer.serialize( + createTaskScheduleRequest.createTaskScheduleDetails, + "CreateTaskScheduleDetails", + model.CreateTaskScheduleDetails.getJsonObj + ), + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "taskSchedule", + bodyModel: model.TaskSchedule, + type: "model.TaskSchedule", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Validates a specific task. * @param CreateTaskValidationRequest @@ -2233,6 +2380,64 @@ export class DataIntegrationClient { } } + /** + * Endpoint to delete schedule. + * @param DeleteScheduleRequest + * @return DeleteScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/DeleteSchedule.ts.html |here} to see how to use DeleteSchedule API. + */ + public async deleteSchedule( + deleteScheduleRequest: requests.DeleteScheduleRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#deleteSchedule."); + const pathParams = { + "{workspaceId}": deleteScheduleRequest.workspaceId, + "{applicationKey}": deleteScheduleRequest.applicationKey, + "{scheduleKey}": deleteScheduleRequest.scheduleKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "if-match": deleteScheduleRequest.ifMatch, + "opc-request-id": deleteScheduleRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + deleteScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/schedules/{scheduleKey}", + method: "DELETE", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Removes a task using the specified identifier. * @param DeleteTaskRequest @@ -2348,6 +2553,66 @@ export class DataIntegrationClient { } } + /** + * Endpoint to delete TaskSchedule. + * @param DeleteTaskScheduleRequest + * @return DeleteTaskScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/DeleteTaskSchedule.ts.html |here} to see how to use DeleteTaskSchedule API. + */ + public async deleteTaskSchedule( + deleteTaskScheduleRequest: requests.DeleteTaskScheduleRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DataIntegrationClient#deleteTaskSchedule."); + const pathParams = { + "{workspaceId}": deleteTaskScheduleRequest.workspaceId, + "{applicationKey}": deleteTaskScheduleRequest.applicationKey, + "{taskScheduleKey}": deleteTaskScheduleRequest.taskScheduleKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "if-match": deleteTaskScheduleRequest.ifMatch, + "opc-request-id": deleteTaskScheduleRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + deleteTaskScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: + "/workspaces/{workspaceId}/applications/{applicationKey}/taskSchedules/{taskScheduleKey}", + method: "DELETE", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Removes a task validation using the specified identifier. * @@ -2879,7 +3144,9 @@ export class DataIntegrationClient { "{dataFlowKey}": getDataFlowRequest.dataFlowKey }; - const queryParams = {}; + const queryParams = { + "expandReferences": getDataFlowRequest.expandReferences + }; let headerParams = { "Content-Type": common.Constants.APPLICATION_JSON, @@ -3217,7 +3484,9 @@ export class DataIntegrationClient { "{folderKey}": getFolderRequest.folderKey }; - const queryParams = {}; + const queryParams = { + "projection": getFolderRequest.projection + }; let headerParams = { "Content-Type": common.Constants.APPLICATION_JSON, @@ -3348,7 +3617,9 @@ export class DataIntegrationClient { "{pipelineKey}": getPipelineRequest.pipelineKey }; - const queryParams = {}; + const queryParams = { + "expandReferences": getPipelineRequest.expandReferences + }; let headerParams = { "Content-Type": common.Constants.APPLICATION_JSON, @@ -3479,7 +3750,9 @@ export class DataIntegrationClient { "{projectKey}": getProjectRequest.projectKey }; - const queryParams = {}; + const queryParams = { + "projection": getProjectRequest.projection + }; let headerParams = { "Content-Type": common.Constants.APPLICATION_JSON, @@ -3664,6 +3937,72 @@ export class DataIntegrationClient { } } + /** + * Retrieves schedule by schedule key + * @param GetScheduleRequest + * @return GetScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/GetSchedule.ts.html |here} to see how to use GetSchedule API. + */ + public async getSchedule( + getScheduleRequest: requests.GetScheduleRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#getSchedule."); + const pathParams = { + "{workspaceId}": getScheduleRequest.workspaceId, + "{applicationKey}": getScheduleRequest.applicationKey, + "{scheduleKey}": getScheduleRequest.scheduleKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": getScheduleRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + getScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/schedules/{scheduleKey}", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "schedule", + bodyModel: model.Schedule, + type: "model.Schedule", + responseHeaders: [ + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + }, + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Retrieves a schema that can be accessed using the specified connection. * @param GetSchemaRequest @@ -3859,16 +4198,83 @@ export class DataIntegrationClient { } /** - * Retrieves a task validation using the specified identifier. - * - * @param GetTaskValidationRequest - * @return GetTaskValidationResponse + * Endpoint used to get taskSchedule by its key + * @param GetTaskScheduleRequest + * @return GetTaskScheduleResponse * @throws OciError when an error occurs - * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/GetTaskValidation.ts.html |here} to see how to use GetTaskValidation API. + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/GetTaskSchedule.ts.html |here} to see how to use GetTaskSchedule API. */ - public async getTaskValidation( - getTaskValidationRequest: requests.GetTaskValidationRequest - ): Promise { + public async getTaskSchedule( + getTaskScheduleRequest: requests.GetTaskScheduleRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#getTaskSchedule."); + const pathParams = { + "{workspaceId}": getTaskScheduleRequest.workspaceId, + "{applicationKey}": getTaskScheduleRequest.applicationKey, + "{taskScheduleKey}": getTaskScheduleRequest.taskScheduleKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": getTaskScheduleRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + getTaskScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: + "/workspaces/{workspaceId}/applications/{applicationKey}/taskSchedules/{taskScheduleKey}", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "taskSchedule", + bodyModel: model.TaskSchedule, + type: "model.TaskSchedule", + responseHeaders: [ + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + }, + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + + /** + * Retrieves a task validation using the specified identifier. + * + * @param GetTaskValidationRequest + * @return GetTaskValidationResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/GetTaskValidation.ts.html |here} to see how to use GetTaskValidation API. + */ + public async getTaskValidation( + getTaskValidationRequest: requests.GetTaskValidationRequest + ): Promise { if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#getTaskValidation."); const pathParams = { @@ -5575,6 +5981,91 @@ export class DataIntegrationClient { } } + /** + * Use this endpoint to list schedules. + * + * @param ListSchedulesRequest + * @return ListSchedulesResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/ListSchedules.ts.html |here} to see how to use ListSchedules API. + */ + public async listSchedules( + listSchedulesRequest: requests.ListSchedulesRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#listSchedules."); + const pathParams = { + "{workspaceId}": listSchedulesRequest.workspaceId, + "{applicationKey}": listSchedulesRequest.applicationKey + }; + + const queryParams = { + "key": listSchedulesRequest.key, + "name": listSchedulesRequest.name, + "identifier": listSchedulesRequest.identifier, + "type": listSchedulesRequest.type, + "page": listSchedulesRequest.page, + "limit": listSchedulesRequest.limit, + "sortBy": listSchedulesRequest.sortBy, + "sortOrder": listSchedulesRequest.sortOrder + }; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": listSchedulesRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + listSchedulesRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/schedules", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "scheduleSummaryCollection", + bodyModel: model.ScheduleSummaryCollection, + type: "model.ScheduleSummaryCollection", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("opc-next-page"), + key: "opcNextPage", + dataType: "string" + }, + { + value: response.headers.get("opc-prev-page"), + key: "opcPrevPage", + dataType: "string" + }, + { + value: response.headers.get("opc-total-items"), + key: "opcTotalItems", + dataType: "number" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Retrieves a list of all the schemas that can be accessed using the specified connection. * @param ListSchemasRequest @@ -5782,6 +6273,7 @@ export class DataIntegrationClient { }; const queryParams = { + "key": listTaskRunsRequest.key, "aggregatorKey": listTaskRunsRequest.aggregatorKey, "fields": listTaskRunsRequest.fields, "name": listTaskRunsRequest.name, @@ -5789,7 +6281,8 @@ export class DataIntegrationClient { "page": listTaskRunsRequest.page, "limit": listTaskRunsRequest.limit, "sortOrder": listTaskRunsRequest.sortOrder, - "sortBy": listTaskRunsRequest.sortBy + "sortBy": listTaskRunsRequest.sortBy, + "filter": listTaskRunsRequest.filter }; let headerParams = { @@ -5849,6 +6342,93 @@ export class DataIntegrationClient { } } + /** + * This endpoint can be used to get the list of all the TaskSchedule objects. + * + * @param ListTaskSchedulesRequest + * @return ListTaskSchedulesResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/ListTaskSchedules.ts.html |here} to see how to use ListTaskSchedules API. + */ + public async listTaskSchedules( + listTaskSchedulesRequest: requests.ListTaskSchedulesRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DataIntegrationClient#listTaskSchedules."); + const pathParams = { + "{workspaceId}": listTaskSchedulesRequest.workspaceId, + "{applicationKey}": listTaskSchedulesRequest.applicationKey + }; + + const queryParams = { + "key": listTaskSchedulesRequest.key, + "name": listTaskSchedulesRequest.name, + "identifier": listTaskSchedulesRequest.identifier, + "type": listTaskSchedulesRequest.type, + "page": listTaskSchedulesRequest.page, + "limit": listTaskSchedulesRequest.limit, + "sortBy": listTaskSchedulesRequest.sortBy, + "sortOrder": listTaskSchedulesRequest.sortOrder, + "isEnabled": listTaskSchedulesRequest.isEnabled + }; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "opc-request-id": listTaskSchedulesRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + listTaskSchedulesRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/taskSchedules", + method: "GET", + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "taskScheduleSummaryCollection", + bodyModel: model.TaskScheduleSummaryCollection, + type: "model.TaskScheduleSummaryCollection", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("opc-next-page"), + key: "opcNextPage", + dataType: "string" + }, + { + value: response.headers.get("opc-prev-page"), + key: "opcPrevPage", + dataType: "string" + }, + { + value: response.headers.get("opc-total-items"), + key: "opcTotalItems", + dataType: "number" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Retrieves a list of task validations within the specified workspace. * @@ -7178,6 +7758,78 @@ export class DataIntegrationClient { } } + /** + * Endpoint used to update the schedule + * @param UpdateScheduleRequest + * @return UpdateScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/UpdateSchedule.ts.html |here} to see how to use UpdateSchedule API. + */ + public async updateSchedule( + updateScheduleRequest: requests.UpdateScheduleRequest + ): Promise { + if (this.logger) this.logger.debug("Calling operation DataIntegrationClient#updateSchedule."); + const pathParams = { + "{workspaceId}": updateScheduleRequest.workspaceId, + "{applicationKey}": updateScheduleRequest.applicationKey, + "{scheduleKey}": updateScheduleRequest.scheduleKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "if-match": updateScheduleRequest.ifMatch, + "opc-request-id": updateScheduleRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + updateScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: "/workspaces/{workspaceId}/applications/{applicationKey}/schedules/{scheduleKey}", + method: "PUT", + bodyContent: common.ObjectSerializer.serialize( + updateScheduleRequest.updateScheduleDetails, + "UpdateScheduleDetails", + model.UpdateScheduleDetails.getJsonObj + ), + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "schedule", + bodyModel: model.Schedule, + type: "model.Schedule", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Updates a specific task. For example, you can update the task description or move the task to a different folder by changing the `aggregatorKey` to a different folder in the registry. * @param UpdateTaskRequest @@ -7321,6 +7973,80 @@ export class DataIntegrationClient { } } + /** + * Endpoint used to update the TaskSchedule + * @param UpdateTaskScheduleRequest + * @return UpdateTaskScheduleResponse + * @throws OciError when an error occurs + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/UpdateTaskSchedule.ts.html |here} to see how to use UpdateTaskSchedule API. + */ + public async updateTaskSchedule( + updateTaskScheduleRequest: requests.UpdateTaskScheduleRequest + ): Promise { + if (this.logger) + this.logger.debug("Calling operation DataIntegrationClient#updateTaskSchedule."); + const pathParams = { + "{workspaceId}": updateTaskScheduleRequest.workspaceId, + "{applicationKey}": updateTaskScheduleRequest.applicationKey, + "{taskScheduleKey}": updateTaskScheduleRequest.taskScheduleKey + }; + + const queryParams = {}; + + let headerParams = { + "Content-Type": common.Constants.APPLICATION_JSON, + "if-match": updateTaskScheduleRequest.ifMatch, + "opc-request-id": updateTaskScheduleRequest.opcRequestId + }; + + const retrier = GenericRetrier.createPreferredRetrier( + this._clientConfiguration ? this._clientConfiguration.retryConfiguration : {}, + updateTaskScheduleRequest.retryConfiguration + ); + if (this.logger) retrier.logger = this.logger; + const request = await composeRequest({ + baseEndpoint: this._endpoint, + defaultHeaders: this._defaultHeaders, + path: + "/workspaces/{workspaceId}/applications/{applicationKey}/taskSchedules/{taskScheduleKey}", + method: "PUT", + bodyContent: common.ObjectSerializer.serialize( + updateTaskScheduleRequest.updateTaskScheduleDetails, + "UpdateTaskScheduleDetails", + model.UpdateTaskScheduleDetails.getJsonObj + ), + pathParams: pathParams, + headerParams: headerParams, + queryParams: queryParams + }); + try { + const response = await retrier.makeServiceCall(this._httpClient, request); + const sdkResponse = composeResponse({ + responseObject: {}, + body: await response.json(), + bodyKey: "taskSchedule", + bodyModel: model.TaskSchedule, + type: "model.TaskSchedule", + responseHeaders: [ + { + value: response.headers.get("opc-request-id"), + key: "opcRequestId", + dataType: "string" + }, + { + value: response.headers.get("etag"), + key: "etag", + dataType: "string" + } + ] + }); + + return sdkResponse; + } catch (err) { + throw err; + } + } + /** * Updates the specified Data Integration workspace. * @param UpdateWorkspaceRequest diff --git a/lib/dataintegration/lib/model/abstract-format-attribute.ts b/lib/dataintegration/lib/model/abstract-format-attribute.ts index 603432c84e..5712e95935 100644 --- a/lib/dataintegration/lib/model/abstract-format-attribute.ts +++ b/lib/dataintegration/lib/model/abstract-format-attribute.ts @@ -18,6 +18,11 @@ import common = require("oci-common"); * The abstract format attribute. */ export interface AbstractFormatAttribute { + /** + * Defines whether a file pattern is supported. + */ + "isFilePattern"?: boolean; + "modelType": string; } @@ -42,6 +47,11 @@ export namespace AbstractFormatAttribute { (jsonObj), true ); + case "PARQUET_FORMAT": + return model.ParquetFormatAttribute.getJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } @@ -68,6 +78,11 @@ export namespace AbstractFormatAttribute { (jsonObj), true ); + case "PARQUET_FORMAT": + return model.ParquetFormatAttribute.getDeserializedJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } diff --git a/lib/dataintegration/lib/model/abstract-read-attribute.ts b/lib/dataintegration/lib/model/abstract-read-attribute.ts index d9769166c0..1f07ed5e5b 100644 --- a/lib/dataintegration/lib/model/abstract-read-attribute.ts +++ b/lib/dataintegration/lib/model/abstract-read-attribute.ts @@ -27,6 +27,16 @@ export namespace AbstractReadAttribute { if ("modelType" in obj && obj.modelType) { switch (obj.modelType) { + case "ORACLE_READ_ATTRIBUTE": + return model.OracleReadAttributes.getJsonObj( + (jsonObj), + true + ); + case "BICC_READ_ATTRIBUTE": + return model.BiccReadAttributes.getJsonObj( + (jsonObj), + true + ); case "ORACLEREADATTRIBUTE": return model.OracleReadAttribute.getJsonObj( (jsonObj), @@ -43,6 +53,16 @@ export namespace AbstractReadAttribute { if ("modelType" in obj && obj.modelType) { switch (obj.modelType) { + case "ORACLE_READ_ATTRIBUTE": + return model.OracleReadAttributes.getDeserializedJsonObj( + (jsonObj), + true + ); + case "BICC_READ_ATTRIBUTE": + return model.BiccReadAttributes.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLEREADATTRIBUTE": return model.OracleReadAttribute.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/abstract-write-attribute.ts b/lib/dataintegration/lib/model/abstract-write-attribute.ts index 72c04d7a06..b047b7245e 100644 --- a/lib/dataintegration/lib/model/abstract-write-attribute.ts +++ b/lib/dataintegration/lib/model/abstract-write-attribute.ts @@ -32,16 +32,41 @@ export namespace AbstractWriteAttribute { (jsonObj), true ); + case "ORACLE_ATP_WRITE_ATTRIBUTE": + return model.OracleAtpWriteAttributes.getJsonObj( + (jsonObj), + true + ); case "ORACLEWRITEATTRIBUTE": return model.OracleWriteAttribute.getJsonObj( (jsonObj), true ); + case "ORACLE_WRITE_ATTRIBUTE": + return model.OracleWriteAttributes.getJsonObj( + (jsonObj), + true + ); case "ORACLEATPWRITEATTRIBUTE": return model.OracleAtpWriteAttribute.getJsonObj( (jsonObj), true ); + case "OBJECTSTORAGEWRITEATTRIBUTE": + return model.ObjectStorageWriteAttribute.getJsonObj( + (jsonObj), + true + ); + case "ORACLE_ADWC_WRITE_ATTRIBUTE": + return model.OracleAdwcWriteAttributes.getJsonObj( + (jsonObj), + true + ); + case "OBJECT_STORAGE_WRITE_ATTRIBUTE": + return model.ObjectStorageWriteAttributes.getJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } @@ -58,16 +83,41 @@ export namespace AbstractWriteAttribute { (jsonObj), true ); + case "ORACLE_ATP_WRITE_ATTRIBUTE": + return model.OracleAtpWriteAttributes.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLEWRITEATTRIBUTE": return model.OracleWriteAttribute.getDeserializedJsonObj( (jsonObj), true ); + case "ORACLE_WRITE_ATTRIBUTE": + return model.OracleWriteAttributes.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLEATPWRITEATTRIBUTE": return model.OracleAtpWriteAttribute.getDeserializedJsonObj( (jsonObj), true ); + case "OBJECTSTORAGEWRITEATTRIBUTE": + return model.ObjectStorageWriteAttribute.getDeserializedJsonObj( + (jsonObj), + true + ); + case "ORACLE_ADWC_WRITE_ATTRIBUTE": + return model.OracleAdwcWriteAttributes.getDeserializedJsonObj( + (jsonObj), + true + ); + case "OBJECT_STORAGE_WRITE_ATTRIBUTE": + return model.ObjectStorageWriteAttributes.getDeserializedJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } diff --git a/lib/dataintegration/lib/model/auth-details.ts b/lib/dataintegration/lib/model/auth-details.ts new file mode 100644 index 0000000000..befcff24aa --- /dev/null +++ b/lib/dataintegration/lib/model/auth-details.ts @@ -0,0 +1,69 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Authentication type to be used for Generic REST invocation. + */ +export interface AuthDetails { + /** + * Generated key that can be used in API calls to identify data flow. On scenarios where reference to the data flow is needed, a value can be passed in create. + */ + "key"?: string; + /** + * The model version of an object. + */ + "modelVersion"?: string; + "parentRef"?: model.ParentReference; + /** + * The authentication mode to be used for Generic REST invocation. + */ + "modelType"?: AuthDetails.ModelType; +} + +export namespace AuthDetails { + export enum ModelType { + NoAuthDetails = "NO_AUTH_DETAILS", + ResourcePrincipalAuthDetails = "RESOURCE_PRINCIPAL_AUTH_DETAILS", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: AuthDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: AuthDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/bicc-read-attributes.ts b/lib/dataintegration/lib/model/bicc-read-attributes.ts new file mode 100644 index 0000000000..007000ba30 --- /dev/null +++ b/lib/dataintegration/lib/model/bicc-read-attributes.ts @@ -0,0 +1,85 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Properties to configure reading from an Oracle Database. + */ +export interface BiccReadAttributes extends model.AbstractReadAttribute { + /** + * The fetch size for reading. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "fetchSize"?: number; + /** + * Extraction Strategy - FULL|INCREMENTAL + */ + "extractStrategy"?: BiccReadAttributes.ExtractStrategy; + "externalStorage"?: model.ExternalStorage; + /** + * Date from where extract should start + */ + "initialExtractDate"?: Date; + /** + * Date last extracted + */ + "lastExtractDate"?: Date; + + "modelType": string; +} + +export namespace BiccReadAttributes { + export enum ExtractStrategy { + Full = "FULL", + Incremental = "INCREMENTAL", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: BiccReadAttributes, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractReadAttribute.getJsonObj(obj) as BiccReadAttributes)), + ...{ + "externalStorage": obj.externalStorage + ? model.ExternalStorage.getJsonObj(obj.externalStorage) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "BICC_READ_ATTRIBUTE"; + export function getDeserializedJsonObj( + obj: BiccReadAttributes, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractReadAttribute.getDeserializedJsonObj(obj) as BiccReadAttributes)), + ...{ + "externalStorage": obj.externalStorage + ? model.ExternalStorage.getDeserializedJsonObj(obj.externalStorage) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/config-parameter-value.ts b/lib/dataintegration/lib/model/config-parameter-value.ts index 5df0b0b22b..27e3a8d527 100644 --- a/lib/dataintegration/lib/model/config-parameter-value.ts +++ b/lib/dataintegration/lib/model/config-parameter-value.ts @@ -38,6 +38,10 @@ export interface ConfigParameterValue { * Reference to the parameter by its key. */ "parameterValue"?: string; + /** + * The root object value, used in custom parameters. + */ + "rootObjectValue"?: any; } export namespace ConfigParameterValue { diff --git a/lib/dataintegration/lib/model/configuration-details.ts b/lib/dataintegration/lib/model/configuration-details.ts index 6f9411da1e..79b13cdb93 100644 --- a/lib/dataintegration/lib/model/configuration-details.ts +++ b/lib/dataintegration/lib/model/configuration-details.ts @@ -22,7 +22,9 @@ export interface ConfigurationDetails { | model.DataAssetFromJdbc | model.DataAssetFromOracleDetails | model.DataAssetFromAdwcDetails + | model.DataAssetFromAmazonS3 | model.DataAssetFromObjectStorageDetails + | model.DataAssetFromFusionApp | model.DataAssetFromAtpDetails | model.DataAssetFromMySQL; "connection"?: @@ -30,8 +32,10 @@ export interface ConfigurationDetails { | model.ConnectionFromAdwc | model.ConnectionFromAtp | model.ConnectionFromOracle + | model.ConnectionFromAmazonS3 | model.ConnectionFromMySQL - | model.ConnectionFromJdbc; + | model.ConnectionFromJdbc + | model.ConnectionFromBICC; /** * The compartment ID of the object store. */ diff --git a/lib/dataintegration/lib/model/connection-details.ts b/lib/dataintegration/lib/model/connection-details.ts index e607e00f58..855c610c10 100644 --- a/lib/dataintegration/lib/model/connection-details.ts +++ b/lib/dataintegration/lib/model/connection-details.ts @@ -86,11 +86,21 @@ export namespace ConnectionDetails { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.ConnectionFromAmazonS3Details.getJsonObj( + (jsonObj), + true + ); case "ORACLE_OBJECT_STORAGE_CONNECTION": return model.ConnectionFromObjectStorageDetails.getJsonObj( (jsonObj), true ); + case "BICC_CONNECTION": + return model.ConnectionFromBICCDetails.getJsonObj( + (jsonObj), + true + ); case "MYSQL_CONNECTION": return model.ConnectionFromMySQLDetails.getJsonObj( (jsonObj), @@ -147,11 +157,21 @@ export namespace ConnectionDetails { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.ConnectionFromAmazonS3Details.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_OBJECT_STORAGE_CONNECTION": return model.ConnectionFromObjectStorageDetails.getDeserializedJsonObj( (jsonObj), true ); + case "BICC_CONNECTION": + return model.ConnectionFromBICCDetails.getDeserializedJsonObj( + (jsonObj), + true + ); case "MYSQL_CONNECTION": return model.ConnectionFromMySQLDetails.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/connection-from-amazon-s3-details.ts b/lib/dataintegration/lib/model/connection-from-amazon-s3-details.ts new file mode 100644 index 0000000000..d12af6b3be --- /dev/null +++ b/lib/dataintegration/lib/model/connection-from-amazon-s3-details.ts @@ -0,0 +1,65 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The connection details for an Oracle Database data asset. + */ +export interface ConnectionFromAmazonS3Details extends model.ConnectionDetails { + "accessKey"?: model.SensitiveAttribute; + "secretKey"?: model.SensitiveAttribute; + + "modelType": string; +} + +export namespace ConnectionFromAmazonS3Details { + export function getJsonObj( + obj: ConnectionFromAmazonS3Details, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionDetails.getJsonObj(obj) as ConnectionFromAmazonS3Details)), + ...{ + "accessKey": obj.accessKey ? model.SensitiveAttribute.getJsonObj(obj.accessKey) : undefined, + "secretKey": obj.secretKey ? model.SensitiveAttribute.getJsonObj(obj.secretKey) : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_CONNECTION"; + export function getDeserializedJsonObj( + obj: ConnectionFromAmazonS3Details, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionDetails.getDeserializedJsonObj(obj) as ConnectionFromAmazonS3Details)), + ...{ + "accessKey": obj.accessKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.accessKey) + : undefined, + "secretKey": obj.secretKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.secretKey) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/connection-from-amazon-s3.ts b/lib/dataintegration/lib/model/connection-from-amazon-s3.ts new file mode 100644 index 0000000000..380103408d --- /dev/null +++ b/lib/dataintegration/lib/model/connection-from-amazon-s3.ts @@ -0,0 +1,60 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The connection details for Amazon s3 data asset. + */ +export interface ConnectionFromAmazonS3 extends model.Connection { + "accessKey"?: model.SensitiveAttribute; + "secretKey"?: model.SensitiveAttribute; + + "modelType": string; +} + +export namespace ConnectionFromAmazonS3 { + export function getJsonObj(obj: ConnectionFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Connection.getJsonObj(obj) as ConnectionFromAmazonS3)), + ...{ + "accessKey": obj.accessKey ? model.SensitiveAttribute.getJsonObj(obj.accessKey) : undefined, + "secretKey": obj.secretKey ? model.SensitiveAttribute.getJsonObj(obj.secretKey) : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_CONNECTION"; + export function getDeserializedJsonObj( + obj: ConnectionFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.Connection.getDeserializedJsonObj(obj) as ConnectionFromAmazonS3)), + ...{ + "accessKey": obj.accessKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.accessKey) + : undefined, + "secretKey": obj.secretKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.secretKey) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/connection-from-bi-cc-details.ts b/lib/dataintegration/lib/model/connection-from-bi-cc-details.ts new file mode 100644 index 0000000000..b019c6b973 --- /dev/null +++ b/lib/dataintegration/lib/model/connection-from-bi-cc-details.ts @@ -0,0 +1,70 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The connection details for an Oracle Database data asset. + */ +export interface ConnectionFromBICCDetails extends model.ConnectionDetails { + /** + * The user name for the connection. + */ + "username"?: string; + "passwordSecret"?: model.SensitiveAttribute; + "defaultExternalStorage"?: model.ExternalStorage; + + "modelType": string; +} + +export namespace ConnectionFromBICCDetails { + export function getJsonObj(obj: ConnectionFromBICCDetails, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionDetails.getJsonObj(obj) as ConnectionFromBICCDetails)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "BICC_CONNECTION"; + export function getDeserializedJsonObj( + obj: ConnectionFromBICCDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionDetails.getDeserializedJsonObj(obj) as ConnectionFromBICCDetails)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getDeserializedJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/connection-from-bi-cc.ts b/lib/dataintegration/lib/model/connection-from-bi-cc.ts new file mode 100644 index 0000000000..4d4b1b4eb8 --- /dev/null +++ b/lib/dataintegration/lib/model/connection-from-bi-cc.ts @@ -0,0 +1,68 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The connection details for an Oracle Database data asset. + */ +export interface ConnectionFromBICC extends model.Connection { + /** + * The user name for the connection. + */ + "username"?: string; + "passwordSecret"?: model.SensitiveAttribute; + "defaultExternalStorage"?: model.ExternalStorage; + + "modelType": string; +} + +export namespace ConnectionFromBICC { + export function getJsonObj(obj: ConnectionFromBICC, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Connection.getJsonObj(obj) as ConnectionFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "BICC_CONNECTION"; + export function getDeserializedJsonObj( + obj: ConnectionFromBICC, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.Connection.getDeserializedJsonObj(obj) as ConnectionFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getDeserializedJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/connection-summary-from-amazon-s3.ts b/lib/dataintegration/lib/model/connection-summary-from-amazon-s3.ts new file mode 100644 index 0000000000..52e76e7399 --- /dev/null +++ b/lib/dataintegration/lib/model/connection-summary-from-amazon-s3.ts @@ -0,0 +1,65 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The connection summary details for Amazons3 data asset. + */ +export interface ConnectionSummaryFromAmazonS3 extends model.ConnectionSummary { + "accessKey"?: model.SensitiveAttribute; + "secretKey"?: model.SensitiveAttribute; + + "modelType": string; +} + +export namespace ConnectionSummaryFromAmazonS3 { + export function getJsonObj( + obj: ConnectionSummaryFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionSummary.getJsonObj(obj) as ConnectionSummaryFromAmazonS3)), + ...{ + "accessKey": obj.accessKey ? model.SensitiveAttribute.getJsonObj(obj.accessKey) : undefined, + "secretKey": obj.secretKey ? model.SensitiveAttribute.getJsonObj(obj.secretKey) : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_CONNECTION"; + export function getDeserializedJsonObj( + obj: ConnectionSummaryFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionSummary.getDeserializedJsonObj(obj) as ConnectionSummaryFromAmazonS3)), + ...{ + "accessKey": obj.accessKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.accessKey) + : undefined, + "secretKey": obj.secretKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.secretKey) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/connection-summary-from-bi-cc.ts b/lib/dataintegration/lib/model/connection-summary-from-bi-cc.ts new file mode 100644 index 0000000000..74f2912947 --- /dev/null +++ b/lib/dataintegration/lib/model/connection-summary-from-bi-cc.ts @@ -0,0 +1,63 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The connection summary details for an Oracle Database data asset. + */ +export interface ConnectionSummaryFromBICC extends model.ConnectionSummary { + /** + * The user name for the connection. + */ + "username"?: string; + "passwordSecret"?: model.SensitiveAttribute; + + "modelType": string; +} + +export namespace ConnectionSummaryFromBICC { + export function getJsonObj(obj: ConnectionSummaryFromBICC, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionSummary.getJsonObj(obj) as ConnectionSummaryFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getJsonObj(obj.passwordSecret) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "BICC_CONNECTION"; + export function getDeserializedJsonObj( + obj: ConnectionSummaryFromBICC, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectionSummary.getDeserializedJsonObj(obj) as ConnectionSummaryFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.passwordSecret) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/connection-summary.ts b/lib/dataintegration/lib/model/connection-summary.ts index 7fc88c4b52..db0adf132d 100644 --- a/lib/dataintegration/lib/model/connection-summary.ts +++ b/lib/dataintegration/lib/model/connection-summary.ts @@ -90,6 +90,11 @@ export namespace ConnectionSummary { (jsonObj), true ); + case "BICC_CONNECTION": + return model.ConnectionSummaryFromBICC.getJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_CONNECTION": return model.ConnectionSummaryFromAtp.getJsonObj( (jsonObj), @@ -100,6 +105,11 @@ export namespace ConnectionSummary { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.ConnectionSummaryFromAmazonS3.getJsonObj( + (jsonObj), + true + ); case "ORACLE_ADWC_CONNECTION": return model.ConnectionSummaryFromAdwc.getJsonObj( (jsonObj), @@ -151,6 +161,11 @@ export namespace ConnectionSummary { (jsonObj), true ); + case "BICC_CONNECTION": + return model.ConnectionSummaryFromBICC.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_CONNECTION": return model.ConnectionSummaryFromAtp.getDeserializedJsonObj( (jsonObj), @@ -161,6 +176,11 @@ export namespace ConnectionSummary { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.ConnectionSummaryFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_ADWC_CONNECTION": return model.ConnectionSummaryFromAdwc.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/connection.ts b/lib/dataintegration/lib/model/connection.ts index 34fa994d32..630793748e 100644 --- a/lib/dataintegration/lib/model/connection.ts +++ b/lib/dataintegration/lib/model/connection.ts @@ -105,6 +105,11 @@ export namespace Connection { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.ConnectionFromAmazonS3.getJsonObj( + (jsonObj), + true + ); case "MYSQL_CONNECTION": return model.ConnectionFromMySQL.getJsonObj( (jsonObj), @@ -115,6 +120,11 @@ export namespace Connection { (jsonObj), true ); + case "BICC_CONNECTION": + return model.ConnectionFromBICC.getJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } @@ -166,6 +176,11 @@ export namespace Connection { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.ConnectionFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); case "MYSQL_CONNECTION": return model.ConnectionFromMySQL.getDeserializedJsonObj( (jsonObj), @@ -176,6 +191,11 @@ export namespace Connection { (jsonObj), true ); + case "BICC_CONNECTION": + return model.ConnectionFromBICC.getDeserializedJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } diff --git a/lib/dataintegration/lib/model/connector-attribute.ts b/lib/dataintegration/lib/model/connector-attribute.ts new file mode 100644 index 0000000000..6befacc3f4 --- /dev/null +++ b/lib/dataintegration/lib/model/connector-attribute.ts @@ -0,0 +1,54 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Marker class for connector attributes. + */ +export interface ConnectorAttribute { + "modelType": string; +} + +export namespace ConnectorAttribute { + export function getJsonObj(obj: ConnectorAttribute): object { + const jsonObj = { ...obj, ...{} }; + + if ("modelType" in obj && obj.modelType) { + switch (obj.modelType) { + case "EXTERNAL_STORAGE": + return model.ExternalStorage.getJsonObj((jsonObj), true); + default: + throw Error("Unknown value for: " + obj.modelType); + } + } + return jsonObj; + } + export function getDeserializedJsonObj(obj: ConnectorAttribute): object { + const jsonObj = { ...obj, ...{} }; + + if ("modelType" in obj && obj.modelType) { + switch (obj.modelType) { + case "EXTERNAL_STORAGE": + return model.ExternalStorage.getDeserializedJsonObj( + (jsonObj), + true + ); + default: + throw Error("Unknown value for: " + obj.modelType); + } + } + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-connection-details.ts b/lib/dataintegration/lib/model/create-connection-details.ts index 1512185629..3062e5d86d 100644 --- a/lib/dataintegration/lib/model/create-connection-details.ts +++ b/lib/dataintegration/lib/model/create-connection-details.ts @@ -77,11 +77,21 @@ export namespace CreateConnectionDetails { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.CreateConnectionFromAmazonS3.getJsonObj( + (jsonObj), + true + ); case "GENERIC_JDBC_CONNECTION": return model.CreateConnectionFromJdbc.getJsonObj( (jsonObj), true ); + case "BICC_CONNECTION": + return model.CreateConnectionFromBICC.getJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_CONNECTION": return model.CreateConnectionFromAtp.getJsonObj( (jsonObj), @@ -134,11 +144,21 @@ export namespace CreateConnectionDetails { (jsonObj), true ); + case "AMAZON_S3_CONNECTION": + return model.CreateConnectionFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); case "GENERIC_JDBC_CONNECTION": return model.CreateConnectionFromJdbc.getDeserializedJsonObj( (jsonObj), true ); + case "BICC_CONNECTION": + return model.CreateConnectionFromBICC.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_CONNECTION": return model.CreateConnectionFromAtp.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/create-connection-from-amazon-s3.ts b/lib/dataintegration/lib/model/create-connection-from-amazon-s3.ts new file mode 100644 index 0000000000..5a625899e1 --- /dev/null +++ b/lib/dataintegration/lib/model/create-connection-from-amazon-s3.ts @@ -0,0 +1,64 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The details to create a Amazon S3 connection. + */ +export interface CreateConnectionFromAmazonS3 extends model.CreateConnectionDetails { + "accessKey"?: model.SensitiveAttribute; + "secretKey"?: model.SensitiveAttribute; + + "modelType": string; +} + +export namespace CreateConnectionFromAmazonS3 { + export function getJsonObj(obj: CreateConnectionFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateConnectionDetails.getJsonObj(obj) as CreateConnectionFromAmazonS3)), + ...{ + "accessKey": obj.accessKey ? model.SensitiveAttribute.getJsonObj(obj.accessKey) : undefined, + "secretKey": obj.secretKey ? model.SensitiveAttribute.getJsonObj(obj.secretKey) : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_CONNECTION"; + export function getDeserializedJsonObj( + obj: CreateConnectionFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateConnectionDetails.getDeserializedJsonObj( + obj + ) as CreateConnectionFromAmazonS3)), + ...{ + "accessKey": obj.accessKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.accessKey) + : undefined, + "secretKey": obj.secretKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.secretKey) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-connection-from-bi-cc.ts b/lib/dataintegration/lib/model/create-connection-from-bi-cc.ts new file mode 100644 index 0000000000..e4237bd705 --- /dev/null +++ b/lib/dataintegration/lib/model/create-connection-from-bi-cc.ts @@ -0,0 +1,70 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The details to create an Oracle Database data asset connection. + */ +export interface CreateConnectionFromBICC extends model.CreateConnectionDetails { + /** + * The user name for the connection. + */ + "username"?: string; + "passwordSecret"?: model.SensitiveAttribute; + "defaultExternalStorage"?: model.ExternalStorage; + + "modelType": string; +} + +export namespace CreateConnectionFromBICC { + export function getJsonObj(obj: CreateConnectionFromBICC, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateConnectionDetails.getJsonObj(obj) as CreateConnectionFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "BICC_CONNECTION"; + export function getDeserializedJsonObj( + obj: CreateConnectionFromBICC, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateConnectionDetails.getDeserializedJsonObj(obj) as CreateConnectionFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getDeserializedJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-connection-validation-details.ts b/lib/dataintegration/lib/model/create-connection-validation-details.ts index eea0b88426..f03eccdada 100644 --- a/lib/dataintegration/lib/model/create-connection-validation-details.ts +++ b/lib/dataintegration/lib/model/create-connection-validation-details.ts @@ -23,11 +23,15 @@ export interface CreateConnectionValidationDetails { | model.CreateDataAssetFromMySQL | model.CreateDataAssetFromOracle | model.CreateDataAssetFromAdwc + | model.CreateDataAssetFromAmazonS3 + | model.CreateDataAssetFromFusionApp | model.CreateDataAssetFromAtp | model.CreateDataAssetFromObjectStorage; "connection"?: | model.CreateConnectionFromMySQL + | model.CreateConnectionFromAmazonS3 | model.CreateConnectionFromJdbc + | model.CreateConnectionFromBICC | model.CreateConnectionFromAtp | model.CreateConnectionFromAdwc | model.CreateConnectionFromOracle diff --git a/lib/dataintegration/lib/model/create-data-asset-details.ts b/lib/dataintegration/lib/model/create-data-asset-details.ts index da4b5c8670..4ce3b2b88a 100644 --- a/lib/dataintegration/lib/model/create-data-asset-details.ts +++ b/lib/dataintegration/lib/model/create-data-asset-details.ts @@ -88,6 +88,16 @@ export namespace CreateDataAssetDetails { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.CreateDataAssetFromAmazonS3.getJsonObj( + (jsonObj), + true + ); + case "FUSION_APP_DATA_ASSET": + return model.CreateDataAssetFromFusionApp.getJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_DATA_ASSET": return model.CreateDataAssetFromAtp.getJsonObj( (jsonObj), @@ -136,6 +146,16 @@ export namespace CreateDataAssetDetails { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.CreateDataAssetFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); + case "FUSION_APP_DATA_ASSET": + return model.CreateDataAssetFromFusionApp.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_DATA_ASSET": return model.CreateDataAssetFromAtp.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/create-data-asset-from-adwc.ts b/lib/dataintegration/lib/model/create-data-asset-from-adwc.ts index adb883b97b..db76e22d58 100644 --- a/lib/dataintegration/lib/model/create-data-asset-from-adwc.ts +++ b/lib/dataintegration/lib/model/create-data-asset-from-adwc.ts @@ -32,6 +32,22 @@ export interface CreateDataAssetFromAdwc extends model.CreateDataAssetDetails { "credentialFileContent"?: string; "walletSecret"?: model.SensitiveAttribute; "walletPasswordSecret"?: model.SensitiveAttribute; + /** + * The Autonomous Data Warehouse instance region Id. + */ + "regionId"?: string; + /** + * The Autonomous Data Warehouse instance tenancy Id. + */ + "tenancyId"?: string; + /** + * The Autonomous Data Warehouse instance compartment Id. + */ + "compartmentId"?: string; + /** + * Tha Autonomous Database Id + */ + "autonomousDbId"?: string; "defaultConnection"?: model.CreateConnectionFromAdwc; "modelType": string; @@ -50,6 +66,7 @@ export namespace CreateDataAssetFromAdwc { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.CreateConnectionFromAdwc.getJsonObj(obj.defaultConnection) : undefined @@ -74,6 +91,7 @@ export namespace CreateDataAssetFromAdwc { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getDeserializedJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.CreateConnectionFromAdwc.getDeserializedJsonObj(obj.defaultConnection) : undefined diff --git a/lib/dataintegration/lib/model/create-data-asset-from-amazon-s3.ts b/lib/dataintegration/lib/model/create-data-asset-from-amazon-s3.ts new file mode 100644 index 0000000000..d24c9e3ffe --- /dev/null +++ b/lib/dataintegration/lib/model/create-data-asset-from-amazon-s3.ts @@ -0,0 +1,65 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details for the Amazons3 data asset type. + */ +export interface CreateDataAssetFromAmazonS3 extends model.CreateDataAssetDetails { + /** + * The region for Amazon s3 + */ + "region"?: string; + "defaultConnection"?: model.CreateConnectionFromAmazonS3; + + "modelType": string; +} + +export namespace CreateDataAssetFromAmazonS3 { + export function getJsonObj(obj: CreateDataAssetFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateDataAssetDetails.getJsonObj(obj) as CreateDataAssetFromAmazonS3)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.CreateConnectionFromAmazonS3.getJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: CreateDataAssetFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateDataAssetDetails.getDeserializedJsonObj( + obj + ) as CreateDataAssetFromAmazonS3)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.CreateConnectionFromAmazonS3.getDeserializedJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-data-asset-from-atp.ts b/lib/dataintegration/lib/model/create-data-asset-from-atp.ts index f705583d5d..15f6374ff7 100644 --- a/lib/dataintegration/lib/model/create-data-asset-from-atp.ts +++ b/lib/dataintegration/lib/model/create-data-asset-from-atp.ts @@ -32,6 +32,22 @@ export interface CreateDataAssetFromAtp extends model.CreateDataAssetDetails { "credentialFileContent"?: string; "walletSecret"?: model.SensitiveAttribute; "walletPasswordSecret"?: model.SensitiveAttribute; + /** + * The Autonomous Data Warehouse instance region Id. + */ + "regionId"?: string; + /** + * The Autonomous Data Warehouse instance tenancy Id. + */ + "tenancyId"?: string; + /** + * The Autonomous Data Warehouse instance compartment Id. + */ + "compartmentId"?: string; + /** + * Tha Autonomous Database Id + */ + "autonomousDbId"?: string; "defaultConnection"?: model.CreateConnectionFromAtp; "modelType": string; @@ -50,6 +66,7 @@ export namespace CreateDataAssetFromAtp { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.CreateConnectionFromAtp.getJsonObj(obj.defaultConnection) : undefined @@ -74,6 +91,7 @@ export namespace CreateDataAssetFromAtp { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getDeserializedJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.CreateConnectionFromAtp.getDeserializedJsonObj(obj.defaultConnection) : undefined diff --git a/lib/dataintegration/lib/model/create-data-asset-from-fusion-app.ts b/lib/dataintegration/lib/model/create-data-asset-from-fusion-app.ts new file mode 100644 index 0000000000..e28609992d --- /dev/null +++ b/lib/dataintegration/lib/model/create-data-asset-from-fusion-app.ts @@ -0,0 +1,65 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details for the MYSQL data asset type. + */ +export interface CreateDataAssetFromFusionApp extends model.CreateDataAssetDetails { + /** + * The service url of the Bi Server. + */ + "serviceUrl"?: string; + "defaultConnection"?: model.CreateConnectionFromBICC; + + "modelType": string; +} + +export namespace CreateDataAssetFromFusionApp { + export function getJsonObj(obj: CreateDataAssetFromFusionApp, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateDataAssetDetails.getJsonObj(obj) as CreateDataAssetFromFusionApp)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.CreateConnectionFromBICC.getJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "FUSION_APP_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: CreateDataAssetFromFusionApp, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateDataAssetDetails.getDeserializedJsonObj( + obj + ) as CreateDataAssetFromFusionApp)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.CreateConnectionFromBICC.getDeserializedJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-schedule-details.ts b/lib/dataintegration/lib/model/create-schedule-details.ts new file mode 100644 index 0000000000..936d93e2fd --- /dev/null +++ b/lib/dataintegration/lib/model/create-schedule-details.ts @@ -0,0 +1,97 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The details for creating a schedule. + */ +export interface CreateScheduleDetails { + /** + * Generated key that can be used in API calls to identify schedule. On scenarios where reference to the schedule is needed, a value can be passed in create. + */ + "key"?: string; + /** + * This is a version number that is used by the service to upgrade objects if needed through releases of the service. + */ + "modelVersion"?: string; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name": string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier": string; + "frequencyDetails"?: + | model.MonthlyFrequencyDetails + | model.DailyFrequencyDetails + | model.HourlyFrequencyDetails; + /** + * The timezone for the schedule. + */ + "timezone"?: string; + /** + * A flag to indicate whether daylight adjustment should be considered or not. + */ + "isDaylightAdjustmentEnabled"?: boolean; + "registryMetadata"?: model.RegistryMetadata; +} + +export namespace CreateScheduleDetails { + export function getJsonObj(obj: CreateScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "frequencyDetails": obj.frequencyDetails + ? model.AbstractFrequencyDetails.getJsonObj(obj.frequencyDetails) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: CreateScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "frequencyDetails": obj.frequencyDetails + ? model.AbstractFrequencyDetails.getDeserializedJsonObj(obj.frequencyDetails) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getDeserializedJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-task-details.ts b/lib/dataintegration/lib/model/create-task-details.ts index c2f520756c..35dcd119aa 100644 --- a/lib/dataintegration/lib/model/create-task-details.ts +++ b/lib/dataintegration/lib/model/create-task-details.ts @@ -113,6 +113,21 @@ export namespace CreateTaskDetails { (jsonObj), true ); + case "OCI_DATAFLOW_TASK": + return model.CreateTaskFromOCIDataflowTask.getJsonObj( + (jsonObj), + true + ); + case "SQL_TASK": + return model.CreateTaskFromSQLTask.getJsonObj( + (jsonObj), + true + ); + case "REST_TASK": + return model.CreateTaskFromRestTask.getJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } @@ -171,6 +186,21 @@ export namespace CreateTaskDetails { (jsonObj), true ); + case "OCI_DATAFLOW_TASK": + return model.CreateTaskFromOCIDataflowTask.getDeserializedJsonObj( + (jsonObj), + true + ); + case "SQL_TASK": + return model.CreateTaskFromSQLTask.getDeserializedJsonObj( + (jsonObj), + true + ); + case "REST_TASK": + return model.CreateTaskFromRestTask.getDeserializedJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } diff --git a/lib/dataintegration/lib/model/create-task-from-oc-idataflow-task.ts b/lib/dataintegration/lib/model/create-task-from-oc-idataflow-task.ts new file mode 100644 index 0000000000..320d98abb2 --- /dev/null +++ b/lib/dataintegration/lib/model/create-task-from-oc-idataflow-task.ts @@ -0,0 +1,62 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the OCI Dataflow task. + */ +export interface CreateTaskFromOCIDataflowTask extends model.CreateTaskDetails { + "dataflowApplication"?: model.DataflowApplication; + + "modelType": string; +} + +export namespace CreateTaskFromOCIDataflowTask { + export function getJsonObj( + obj: CreateTaskFromOCIDataflowTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateTaskDetails.getJsonObj(obj) as CreateTaskFromOCIDataflowTask)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "OCI_DATAFLOW_TASK"; + export function getDeserializedJsonObj( + obj: CreateTaskFromOCIDataflowTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateTaskDetails.getDeserializedJsonObj(obj) as CreateTaskFromOCIDataflowTask)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getDeserializedJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-task-from-rest-task.ts b/lib/dataintegration/lib/model/create-task-from-rest-task.ts new file mode 100644 index 0000000000..5121c1407b --- /dev/null +++ b/lib/dataintegration/lib/model/create-task-from-rest-task.ts @@ -0,0 +1,112 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the Generic REST task. + */ +export interface CreateTaskFromRestTask extends model.CreateTaskDetails { + "authDetails"?: model.AuthDetails; + "endpoint"?: model.Expression; + /** + * The REST method to use. + */ + "methodType"?: CreateTaskFromRestTask.MethodType; + /** + * The headers for the REST call. + */ + "headers"?: any; + /** + * JSON data for payload body. + */ + "jsonData"?: string; + /** + * The invocation type to be used for Generic REST invocation. + */ + "apiCallMode"?: CreateTaskFromRestTask.ApiCallMode; + "cancelEndpoint"?: model.Expression; + /** + * The REST method to use for canceling the original request. + */ + "cancelMethodType"?: CreateTaskFromRestTask.CancelMethodType; + + "modelType": string; +} + +export namespace CreateTaskFromRestTask { + export enum MethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT" + } + + export enum ApiCallMode { + Synchronous = "SYNCHRONOUS", + AsyncOciWorkrequest = "ASYNC_OCI_WORKREQUEST" + } + + export enum CancelMethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT" + } + + export function getJsonObj(obj: CreateTaskFromRestTask, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateTaskDetails.getJsonObj(obj) as CreateTaskFromRestTask)), + ...{ + "authDetails": obj.authDetails ? model.AuthDetails.getJsonObj(obj.authDetails) : undefined, + "endpoint": obj.endpoint ? model.Expression.getJsonObj(obj.endpoint) : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "REST_TASK"; + export function getDeserializedJsonObj( + obj: CreateTaskFromRestTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateTaskDetails.getDeserializedJsonObj(obj) as CreateTaskFromRestTask)), + ...{ + "authDetails": obj.authDetails + ? model.AuthDetails.getDeserializedJsonObj(obj.authDetails) + : undefined, + "endpoint": obj.endpoint + ? model.Expression.getDeserializedJsonObj(obj.endpoint) + : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getDeserializedJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-task-from-sq-ltask.ts b/lib/dataintegration/lib/model/create-task-from-sq-ltask.ts new file mode 100644 index 0000000000..f324a0108c --- /dev/null +++ b/lib/dataintegration/lib/model/create-task-from-sq-ltask.ts @@ -0,0 +1,68 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the SQL task. + */ +export interface CreateTaskFromSQLTask extends model.CreateTaskDetails { + "script"?: model.Script; + /** + * Indicates whether the task is invoking a custom SQL script or stored procedure. + */ + "sqlScriptType"?: CreateTaskFromSQLTask.SqlScriptType; + /** + * Describes the shape of the execution result + */ + "operation"?: any; + + "modelType": string; +} + +export namespace CreateTaskFromSQLTask { + export enum SqlScriptType { + StoredProcedure = "STORED_PROCEDURE", + SqlCode = "SQL_CODE" + } + + export function getJsonObj(obj: CreateTaskFromSQLTask, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateTaskDetails.getJsonObj(obj) as CreateTaskFromSQLTask)), + ...{ + "script": obj.script ? model.Script.getJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } + export const modelType = "SQL_TASK"; + export function getDeserializedJsonObj( + obj: CreateTaskFromSQLTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.CreateTaskDetails.getDeserializedJsonObj(obj) as CreateTaskFromSQLTask)), + ...{ + "script": obj.script ? model.Script.getDeserializedJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/create-task-run-details.ts b/lib/dataintegration/lib/model/create-task-run-details.ts index 69b520f7e9..3d37af70a6 100644 --- a/lib/dataintegration/lib/model/create-task-run-details.ts +++ b/lib/dataintegration/lib/model/create-task-run-details.ts @@ -43,6 +43,10 @@ export interface CreateTaskRunDetails { * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. */ "identifier"?: string; + /** + * Optional task schedule key reference. + */ + "taskScheduleKey"?: string; "registryMetadata"?: model.RegistryMetadata; } diff --git a/lib/dataintegration/lib/model/create-task-schedule-details.ts b/lib/dataintegration/lib/model/create-task-schedule-details.ts new file mode 100644 index 0000000000..ddfb8fc11d --- /dev/null +++ b/lib/dataintegration/lib/model/create-task-schedule-details.ts @@ -0,0 +1,162 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The create task details. + */ +export interface CreateTaskScheduleDetails { + /** + * Generated key that can be used in API calls to identify taskSchedule. On scenarios where reference to the taskSchedule is needed, a value can be passed in create. + */ + "key"?: string; + /** + * This is a version number that is used by the service to upgrade objects if needed through releases of the service. + */ + "modelVersion"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name": string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier": string; + "scheduleRef"?: model.Schedule; + "configProviderDelegate"?: model.ConfigProvider; + /** + * Whether the task schedule is enabled. + */ + "isEnabled"?: boolean; + /** + * The number of retries. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "numberOfRetries"?: number; + /** + * The retry delay, the unit for measurement is in the property retry delay unit. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "retryDelay"?: number; + /** + * The unit for the retry delay. + */ + "retryDelayUnit"?: CreateTaskScheduleDetails.RetryDelayUnit; + /** + * The start time in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "startTimeMillis"?: number; + /** + * The end time in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "endTimeMillis"?: number; + /** + * Whether the same task can be executed concurrently. + */ + "isConcurrentAllowed"?: boolean; + /** + * Whether the backfill is enabled. + */ + "isBackfillEnabled"?: boolean; + /** + * The authorization mode for the task. + */ + "authMode"?: CreateTaskScheduleDetails.AuthMode; + /** + * The expected duration of the task execution. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "expectedDuration"?: number; + /** + * The expected duration unit of the task execution. + */ + "expectedDurationUnit"?: CreateTaskScheduleDetails.ExpectedDurationUnit; + "registryMetadata"?: model.RegistryMetadata; +} + +export namespace CreateTaskScheduleDetails { + export enum RetryDelayUnit { + Seconds = "SECONDS", + Minutes = "MINUTES", + Hours = "HOURS", + Days = "DAYS" + } + + export enum AuthMode { + Obo = "OBO", + ResourcePrincipal = "RESOURCE_PRINCIPAL", + UserCertificate = "USER_CERTIFICATE" + } + + export enum ExpectedDurationUnit { + Seconds = "SECONDS", + Minutes = "MINUTES", + Hours = "HOURS", + Days = "DAYS" + } + + export function getJsonObj(obj: CreateTaskScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "scheduleRef": obj.scheduleRef ? model.Schedule.getJsonObj(obj.scheduleRef) : undefined, + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getJsonObj(obj.configProviderDelegate) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: CreateTaskScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "scheduleRef": obj.scheduleRef + ? model.Schedule.getDeserializedJsonObj(obj.scheduleRef) + : undefined, + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getDeserializedJsonObj(obj.configProviderDelegate) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getDeserializedJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/csv-format-attribute.ts b/lib/dataintegration/lib/model/csv-format-attribute.ts index b80d95356e..95c0ab5c86 100644 --- a/lib/dataintegration/lib/model/csv-format-attribute.ts +++ b/lib/dataintegration/lib/model/csv-format-attribute.ts @@ -38,10 +38,6 @@ export interface CsvFormatAttribute extends model.AbstractFormatAttribute { * Defines whether the file has a header row. */ "hasHeader"?: boolean; - /** - * Defines whether a file pattern is supported. - */ - "isFilePattern"?: boolean; /** * Format for timestamp information. */ diff --git a/lib/dataintegration/lib/model/data-asset-from-amazon-s3.ts b/lib/dataintegration/lib/model/data-asset-from-amazon-s3.ts new file mode 100644 index 0000000000..3ed56adb9c --- /dev/null +++ b/lib/dataintegration/lib/model/data-asset-from-amazon-s3.ts @@ -0,0 +1,61 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details for the MYSQL data asset type. + */ +export interface DataAssetFromAmazonS3 extends model.DataAsset { + /** + * The region for Amazon s3 + */ + "region"?: string; + "defaultConnection"?: model.ConnectionSummaryFromAmazonS3; + + "modelType": string; +} + +export namespace DataAssetFromAmazonS3 { + export function getJsonObj(obj: DataAssetFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.DataAsset.getJsonObj(obj) as DataAssetFromAmazonS3)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionSummaryFromAmazonS3.getJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: DataAssetFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataAsset.getDeserializedJsonObj(obj) as DataAssetFromAmazonS3)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionSummaryFromAmazonS3.getDeserializedJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-asset-from-fusion-app.ts b/lib/dataintegration/lib/model/data-asset-from-fusion-app.ts new file mode 100644 index 0000000000..167ebef2a1 --- /dev/null +++ b/lib/dataintegration/lib/model/data-asset-from-fusion-app.ts @@ -0,0 +1,61 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details for the MYSQL data asset type. + */ +export interface DataAssetFromFusionApp extends model.DataAsset { + /** + * The service url of the Bi Server. + */ + "serviceUrl"?: string; + "defaultConnection"?: model.ConnectionFromBICCDetails; + + "modelType": string; +} + +export namespace DataAssetFromFusionApp { + export function getJsonObj(obj: DataAssetFromFusionApp, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.DataAsset.getJsonObj(obj) as DataAssetFromFusionApp)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionFromBICCDetails.getJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "FUSION_APP_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: DataAssetFromFusionApp, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataAsset.getDeserializedJsonObj(obj) as DataAssetFromFusionApp)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionFromBICCDetails.getDeserializedJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-asset-summary-from-amazon-s3.ts b/lib/dataintegration/lib/model/data-asset-summary-from-amazon-s3.ts new file mode 100644 index 0000000000..f8d19ea2b9 --- /dev/null +++ b/lib/dataintegration/lib/model/data-asset-summary-from-amazon-s3.ts @@ -0,0 +1,63 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Summary details for the Amazon s3 data asset type. + */ +export interface DataAssetSummaryFromAmazonS3 extends model.DataAssetSummary { + /** + * The region for Amazon s3 + */ + "region"?: string; + "defaultConnection"?: model.ConnectionSummaryFromAmazonS3; + + "modelType": string; +} + +export namespace DataAssetSummaryFromAmazonS3 { + export function getJsonObj(obj: DataAssetSummaryFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataAssetSummary.getJsonObj(obj) as DataAssetSummaryFromAmazonS3)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionSummaryFromAmazonS3.getJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: DataAssetSummaryFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataAssetSummary.getDeserializedJsonObj(obj) as DataAssetSummaryFromAmazonS3)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionSummaryFromAmazonS3.getDeserializedJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-asset-summary-from-fusion-app.ts b/lib/dataintegration/lib/model/data-asset-summary-from-fusion-app.ts new file mode 100644 index 0000000000..cd0d080a11 --- /dev/null +++ b/lib/dataintegration/lib/model/data-asset-summary-from-fusion-app.ts @@ -0,0 +1,66 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Summary details for the FUSION_APP data asset type. + */ +export interface DataAssetSummaryFromFusionApp extends model.DataAssetSummary { + /** + * The generic JDBC host name. + */ + "serviceUrl"?: string; + "defaultConnection"?: model.ConnectionSummaryFromBICC; + + "modelType": string; +} + +export namespace DataAssetSummaryFromFusionApp { + export function getJsonObj( + obj: DataAssetSummaryFromFusionApp, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataAssetSummary.getJsonObj(obj) as DataAssetSummaryFromFusionApp)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionSummaryFromBICC.getJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "FUSION_APP_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: DataAssetSummaryFromFusionApp, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataAssetSummary.getDeserializedJsonObj(obj) as DataAssetSummaryFromFusionApp)), + ...{ + "defaultConnection": obj.defaultConnection + ? model.ConnectionSummaryFromBICC.getDeserializedJsonObj(obj.defaultConnection) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-asset-summary.ts b/lib/dataintegration/lib/model/data-asset-summary.ts index 4eddf7ced4..2f5383077b 100644 --- a/lib/dataintegration/lib/model/data-asset-summary.ts +++ b/lib/dataintegration/lib/model/data-asset-summary.ts @@ -97,6 +97,11 @@ export namespace DataAssetSummary { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.DataAssetSummaryFromAmazonS3.getJsonObj( + (jsonObj), + true + ); case "ORACLE_OBJECT_STORAGE_DATA_ASSET": return model.DataAssetSummaryFromObjectStorage.getJsonObj( (jsonObj), @@ -107,6 +112,11 @@ export namespace DataAssetSummary { (jsonObj), true ); + case "FUSION_APP_DATA_ASSET": + return model.DataAssetSummaryFromFusionApp.getJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } @@ -152,6 +162,11 @@ export namespace DataAssetSummary { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.DataAssetSummaryFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_OBJECT_STORAGE_DATA_ASSET": return model.DataAssetSummaryFromObjectStorage.getDeserializedJsonObj( (jsonObj), @@ -162,6 +177,11 @@ export namespace DataAssetSummary { (jsonObj), true ); + case "FUSION_APP_DATA_ASSET": + return model.DataAssetSummaryFromFusionApp.getDeserializedJsonObj( + (jsonObj), + true + ); default: throw Error("Unknown value for: " + obj.modelType); } diff --git a/lib/dataintegration/lib/model/data-asset.ts b/lib/dataintegration/lib/model/data-asset.ts index 0ea3d73093..351b13a27a 100644 --- a/lib/dataintegration/lib/model/data-asset.ts +++ b/lib/dataintegration/lib/model/data-asset.ts @@ -96,11 +96,21 @@ export namespace DataAsset { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.DataAssetFromAmazonS3.getJsonObj( + (jsonObj), + true + ); case "ORACLE_OBJECT_STORAGE_DATA_ASSET": return model.DataAssetFromObjectStorageDetails.getJsonObj( (jsonObj), true ); + case "FUSION_APP_DATA_ASSET": + return model.DataAssetFromFusionApp.getJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_DATA_ASSET": return model.DataAssetFromAtpDetails.getJsonObj( (jsonObj), @@ -151,11 +161,21 @@ export namespace DataAsset { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.DataAssetFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_OBJECT_STORAGE_DATA_ASSET": return model.DataAssetFromObjectStorageDetails.getDeserializedJsonObj( (jsonObj), true ); + case "FUSION_APP_DATA_ASSET": + return model.DataAssetFromFusionApp.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_DATA_ASSET": return model.DataAssetFromAtpDetails.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/data-entity-details.ts b/lib/dataintegration/lib/model/data-entity-details.ts index fb31143905..1a0d9e2e64 100644 --- a/lib/dataintegration/lib/model/data-entity-details.ts +++ b/lib/dataintegration/lib/model/data-entity-details.ts @@ -37,6 +37,11 @@ export namespace DataEntityDetails { (jsonObj), true ); + case "DATA_STORE_ENTITY": + return model.DataEntityFromDataStoreEntityDetails.getJsonObj( + (jsonObj), + true + ); case "TABLE_ENTITY": return model.DataEntityFromTableEntityDetails.getJsonObj( (jsonObj), @@ -63,6 +68,11 @@ export namespace DataEntityDetails { (jsonObj), true ); + case "DATA_STORE_ENTITY": + return model.DataEntityFromDataStoreEntityDetails.getDeserializedJsonObj( + (jsonObj), + true + ); case "TABLE_ENTITY": return model.DataEntityFromTableEntityDetails.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/data-entity-from-data-store-entity-details.ts b/lib/dataintegration/lib/model/data-entity-from-data-store-entity-details.ts new file mode 100644 index 0000000000..2da816a640 --- /dev/null +++ b/lib/dataintegration/lib/model/data-entity-from-data-store-entity-details.ts @@ -0,0 +1,180 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The view entity data entity details. + */ +export interface DataEntityFromDataStoreEntityDetails extends model.DataEntityDetails { + /** + * The object key. + */ + "key"?: string; + /** + * The object's model version. + */ + "modelVersion"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * The version of the object that is used to track changes in the object instance. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The external key for the object + */ + "externalKey"?: string; + "shape"?: model.Shape; + /** + * The shape ID. + */ + "shapeId"?: string; + "types"?: model.TypeLibrary; + /** + * The entity type. + */ + "entityType"?: DataEntityFromDataStoreEntityDetails.EntityType; + /** + * Specifies other type labels. + */ + "otherTypeLabel"?: string; + /** + * An array of unique keys. + */ + "uniqueKeys"?: Array; + /** + * An array of foreign keys. + */ + "foreignKeys"?: Array; + /** + * The resource name. + */ + "resourceName"?: string; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + /** + * Filters present in the Datastore. It can be Null. + */ + "filters"?: string; + /** + * It shows whether or not effective date is disabled + */ + "isEffectiveDateDisabled"?: boolean; + /** + * It shows whether the datastore is of flex type + */ + "isFlexDataStore"?: boolean; + /** + * It shows whether the extraction of this datastore will stop on error + */ + "isSilentError"?: boolean; + /** + * It shows whether the datastore supports Incremental Extract or not. + */ + "supportsIncremental"?: boolean; + + "modelType": string; +} + +export namespace DataEntityFromDataStoreEntityDetails { + export enum EntityType { + Table = "TABLE", + View = "VIEW", + File = "FILE", + Queue = "QUEUE", + Stream = "STREAM", + Other = "OTHER", + DataStore = "DATA_STORE" + } + + export function getJsonObj( + obj: DataEntityFromDataStoreEntityDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataEntityDetails.getJsonObj(obj) as DataEntityFromDataStoreEntityDetails)), + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "shape": obj.shape ? model.Shape.getJsonObj(obj.shape) : undefined, + + "types": obj.types ? model.TypeLibrary.getJsonObj(obj.types) : undefined, + + "uniqueKeys": obj.uniqueKeys + ? obj.uniqueKeys.map(item => { + return model.UniqueKey.getJsonObj(item); + }) + : undefined, + "foreignKeys": obj.foreignKeys + ? obj.foreignKeys.map(item => { + return model.ForeignKey.getJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "DATA_STORE_ENTITY"; + export function getDeserializedJsonObj( + obj: DataEntityFromDataStoreEntityDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataEntityDetails.getDeserializedJsonObj( + obj + ) as DataEntityFromDataStoreEntityDetails)), + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "shape": obj.shape ? model.Shape.getDeserializedJsonObj(obj.shape) : undefined, + + "types": obj.types ? model.TypeLibrary.getDeserializedJsonObj(obj.types) : undefined, + + "uniqueKeys": obj.uniqueKeys + ? obj.uniqueKeys.map(item => { + return model.UniqueKey.getDeserializedJsonObj(item); + }) + : undefined, + "foreignKeys": obj.foreignKeys + ? obj.foreignKeys.map(item => { + return model.ForeignKey.getDeserializedJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-entity-from-data-store.ts b/lib/dataintegration/lib/model/data-entity-from-data-store.ts new file mode 100644 index 0000000000..3b5a4241b8 --- /dev/null +++ b/lib/dataintegration/lib/model/data-entity-from-data-store.ts @@ -0,0 +1,178 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The view entity data entity details. + */ +export interface DataEntityFromDataStore extends model.DataEntity { + /** + * The object key. + */ + "key"?: string; + /** + * The object's model version. + */ + "modelVersion"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * The version of the object that is used to track changes in the object instance. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The external key for the object + */ + "externalKey"?: string; + "shape"?: model.Shape; + /** + * The shape ID. + */ + "shapeId"?: string; + "types"?: model.TypeLibrary; + /** + * The entity type. + */ + "entityType"?: DataEntityFromDataStore.EntityType; + /** + * Specifies other type label. + */ + "otherTypeLabel"?: string; + /** + * An array of unique keys. + */ + "uniqueKeys"?: Array; + /** + * An array of foreign keys. + */ + "foreignKeys"?: Array; + /** + * The resource name. + */ + "resourceName"?: string; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + /** + * Filters present in the Datastore. It can be Null. + */ + "filters"?: string; + /** + * It shows whether or not effective date is disabled + */ + "isEffectiveDateDisabled"?: boolean; + /** + * It shows whether the datastore is of flex type + */ + "isFlexDataStore"?: boolean; + /** + * It shows whether the extraction of this datastore will stop on error + */ + "isSilentError"?: boolean; + /** + * It shows whether the datastore supports Incremental Extract or not. + */ + "supportsIncremental"?: boolean; + + "modelType": string; +} + +export namespace DataEntityFromDataStore { + export enum EntityType { + Table = "TABLE", + View = "VIEW", + File = "FILE", + Queue = "QUEUE", + Stream = "STREAM", + Other = "OTHER", + DataStore = "DATA_STORE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: DataEntityFromDataStore, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.DataEntity.getJsonObj(obj) as DataEntityFromDataStore)), + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "shape": obj.shape ? model.Shape.getJsonObj(obj.shape) : undefined, + + "types": obj.types ? model.TypeLibrary.getJsonObj(obj.types) : undefined, + + "uniqueKeys": obj.uniqueKeys + ? obj.uniqueKeys.map(item => { + return model.UniqueKey.getJsonObj(item); + }) + : undefined, + "foreignKeys": obj.foreignKeys + ? obj.foreignKeys.map(item => { + return model.ForeignKey.getJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "DATA_STORE_ENTITY"; + export function getDeserializedJsonObj( + obj: DataEntityFromDataStore, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataEntity.getDeserializedJsonObj(obj) as DataEntityFromDataStore)), + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "shape": obj.shape ? model.Shape.getDeserializedJsonObj(obj.shape) : undefined, + + "types": obj.types ? model.TypeLibrary.getDeserializedJsonObj(obj.types) : undefined, + + "uniqueKeys": obj.uniqueKeys + ? obj.uniqueKeys.map(item => { + return model.UniqueKey.getDeserializedJsonObj(item); + }) + : undefined, + "foreignKeys": obj.foreignKeys + ? obj.foreignKeys.map(item => { + return model.ForeignKey.getDeserializedJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-entity-summary-from-data-store.ts b/lib/dataintegration/lib/model/data-entity-summary-from-data-store.ts new file mode 100644 index 0000000000..f9bfb02061 --- /dev/null +++ b/lib/dataintegration/lib/model/data-entity-summary-from-data-store.ts @@ -0,0 +1,183 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The view entity data entity details. + */ +export interface DataEntitySummaryFromDataStore extends model.DataEntitySummary { + /** + * The object key. + */ + "key"?: string; + /** + * The object's model version. + */ + "modelVersion"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * The version of the object that is used to track changes in the object instance. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The external key for the object + */ + "externalKey"?: string; + "shape"?: model.Shape; + /** + * The shape ID. + */ + "shapeId"?: string; + "types"?: model.TypeLibrary; + /** + * The entity type. + */ + "entityType"?: DataEntitySummaryFromDataStore.EntityType; + /** + * Specifies other type label. + */ + "otherTypeLabel"?: string; + /** + * An array of unique keys. + */ + "uniqueKeys"?: Array; + /** + * An array of foreign keys. + */ + "foreignKeys"?: Array; + /** + * The resource name. + */ + "resourceName"?: string; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + /** + * Query filter for the extract. It can be Null. + */ + "filters"?: string; + /** + * It shows whether or not effective date is disabled + */ + "isEffectiveDateDisabled"?: boolean; + /** + * Is Flex data store. Metadata csv will be generated for flex data store + */ + "isFlexDataStore"?: boolean; + /** + * Should the VO failure fail the whole batch? + */ + "isSilentError"?: boolean; + /** + * It shows whether the datastore supports Incremental Extract or not. + */ + "supportsIncremental"?: boolean; + + "modelType": string; +} + +export namespace DataEntitySummaryFromDataStore { + export enum EntityType { + Table = "TABLE", + View = "VIEW", + File = "FILE", + Queue = "QUEUE", + Stream = "STREAM", + Other = "OTHER", + DataStore = "DATA_STORE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj( + obj: DataEntitySummaryFromDataStore, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataEntitySummary.getJsonObj(obj) as DataEntitySummaryFromDataStore)), + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "shape": obj.shape ? model.Shape.getJsonObj(obj.shape) : undefined, + + "types": obj.types ? model.TypeLibrary.getJsonObj(obj.types) : undefined, + + "uniqueKeys": obj.uniqueKeys + ? obj.uniqueKeys.map(item => { + return model.UniqueKey.getJsonObj(item); + }) + : undefined, + "foreignKeys": obj.foreignKeys + ? obj.foreignKeys.map(item => { + return model.ForeignKey.getJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "DATA_STORE_ENTITY"; + export function getDeserializedJsonObj( + obj: DataEntitySummaryFromDataStore, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.DataEntitySummary.getDeserializedJsonObj(obj) as DataEntitySummaryFromDataStore)), + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "shape": obj.shape ? model.Shape.getDeserializedJsonObj(obj.shape) : undefined, + + "types": obj.types ? model.TypeLibrary.getDeserializedJsonObj(obj.types) : undefined, + + "uniqueKeys": obj.uniqueKeys + ? obj.uniqueKeys.map(item => { + return model.UniqueKey.getDeserializedJsonObj(item); + }) + : undefined, + "foreignKeys": obj.foreignKeys + ? obj.foreignKeys.map(item => { + return model.ForeignKey.getDeserializedJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/data-entity-summary.ts b/lib/dataintegration/lib/model/data-entity-summary.ts index 3939284804..5173445051 100644 --- a/lib/dataintegration/lib/model/data-entity-summary.ts +++ b/lib/dataintegration/lib/model/data-entity-summary.ts @@ -44,6 +44,11 @@ export namespace DataEntitySummary { (jsonObj), true ); + case "DATA_STORE_ENTITY": + return model.DataEntitySummaryFromDataStore.getJsonObj( + (jsonObj), + true + ); case "VIEW_ENTITY": return model.DataEntitySummaryFromView.getJsonObj( (jsonObj), @@ -77,6 +82,11 @@ export namespace DataEntitySummary { (jsonObj), true ); + case "DATA_STORE_ENTITY": + return model.DataEntitySummaryFromDataStore.getDeserializedJsonObj( + (jsonObj), + true + ); case "VIEW_ENTITY": return model.DataEntitySummaryFromView.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/data-entity.ts b/lib/dataintegration/lib/model/data-entity.ts index db7940c5f1..cf7aa9386f 100644 --- a/lib/dataintegration/lib/model/data-entity.ts +++ b/lib/dataintegration/lib/model/data-entity.ts @@ -39,6 +39,11 @@ export namespace DataEntity { (jsonObj), true ); + case "DATA_STORE_ENTITY": + return model.DataEntityFromDataStore.getJsonObj( + (jsonObj), + true + ); case "VIEW_ENTITY": return model.DataEntityFromView.getJsonObj( (jsonObj), @@ -72,6 +77,11 @@ export namespace DataEntity { (jsonObj), true ); + case "DATA_STORE_ENTITY": + return model.DataEntityFromDataStore.getDeserializedJsonObj( + (jsonObj), + true + ); case "VIEW_ENTITY": return model.DataEntityFromView.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/data-format.ts b/lib/dataintegration/lib/model/data-format.ts index 5d56c71eeb..eada19cfd7 100644 --- a/lib/dataintegration/lib/model/data-format.ts +++ b/lib/dataintegration/lib/model/data-format.ts @@ -21,7 +21,8 @@ export interface DataFormat { "formatAttribute"?: | model.AvroFormatAttribute | model.JsonFormatAttribute - | model.CsvFormatAttribute; + | model.CsvFormatAttribute + | model.ParquetFormatAttribute; /** * type */ diff --git a/lib/dataintegration/lib/model/dataflow-application.ts b/lib/dataintegration/lib/model/dataflow-application.ts new file mode 100644 index 0000000000..296985983a --- /dev/null +++ b/lib/dataintegration/lib/model/dataflow-application.ts @@ -0,0 +1,42 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Minimum information required to recognize a Dataflow Application object. + */ +export interface DataflowApplication { + /** + * The application id for which Oracle Cloud Infrastructure data flow task is to be created. + */ + "applicationId"?: string; + /** + * The compartmentId id under which Oracle Cloud Infrastructure dataflow application lies. + */ + "compartmentId"?: string; +} + +export namespace DataflowApplication { + export function getJsonObj(obj: DataflowApplication): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: DataflowApplication): object { + const jsonObj = { ...obj, ...{} }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/dependent-object-summary.ts b/lib/dataintegration/lib/model/dependent-object-summary.ts index 7dfcd381d0..0bc9131d0e 100644 --- a/lib/dataintegration/lib/model/dependent-object-summary.ts +++ b/lib/dataintegration/lib/model/dependent-object-summary.ts @@ -67,6 +67,7 @@ export interface DependentObjectSummary { * Specifies whether this object is a favorite or not. */ "isFavorite"?: boolean; + "countStatistics"?: model.CountStatistic; } export namespace DependentObjectSummary { @@ -76,6 +77,10 @@ export namespace DependentObjectSummary { ...{ "aggregator": obj.aggregator ? model.AggregatorSummary.getJsonObj(obj.aggregator) + : undefined, + + "countStatistics": obj.countStatistics + ? model.CountStatistic.getJsonObj(obj.countStatistics) : undefined } }; @@ -88,6 +93,10 @@ export namespace DependentObjectSummary { ...{ "aggregator": obj.aggregator ? model.AggregatorSummary.getDeserializedJsonObj(obj.aggregator) + : undefined, + + "countStatistics": obj.countStatistics + ? model.CountStatistic.getDeserializedJsonObj(obj.countStatistics) : undefined } }; diff --git a/lib/dataintegration/lib/model/enriched-entity.ts b/lib/dataintegration/lib/model/enriched-entity.ts index d9eef68225..0e44442b87 100644 --- a/lib/dataintegration/lib/model/enriched-entity.ts +++ b/lib/dataintegration/lib/model/enriched-entity.ts @@ -18,8 +18,17 @@ import common = require("oci-common"); * This is used to specify runtime parameters for data entities such as files that need both the data entity and the format. */ export interface EnrichedEntity { - "entity"?: model.DataEntityFromTable | model.DataEntityFromView | model.DataEntityFromFile; + "entity"?: + | model.DataEntityFromTable + | model.DataEntityFromDataStore + | model.DataEntityFromView + | model.DataEntityFromFile; "dataFormat"?: model.DataFormat; + /** + * The model type for the entity which is referenced. + */ + "modelType"?: string; + "parentRef"?: model.ParentReference; } export namespace EnrichedEntity { @@ -28,7 +37,9 @@ export namespace EnrichedEntity { ...obj, ...{ "entity": obj.entity ? model.DataEntity.getJsonObj(obj.entity) : undefined, - "dataFormat": obj.dataFormat ? model.DataFormat.getJsonObj(obj.dataFormat) : undefined + "dataFormat": obj.dataFormat ? model.DataFormat.getJsonObj(obj.dataFormat) : undefined, + + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined } }; @@ -41,6 +52,10 @@ export namespace EnrichedEntity { "entity": obj.entity ? model.DataEntity.getDeserializedJsonObj(obj.entity) : undefined, "dataFormat": obj.dataFormat ? model.DataFormat.getDeserializedJsonObj(obj.dataFormat) + : undefined, + + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) : undefined } }; diff --git a/lib/dataintegration/lib/model/expression-operator.ts b/lib/dataintegration/lib/model/expression-operator.ts new file mode 100644 index 0000000000..805fac08b7 --- /dev/null +++ b/lib/dataintegration/lib/model/expression-operator.ts @@ -0,0 +1,76 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * An operator for expressions + */ +export interface ExpressionOperator extends model.Operator { + /** + * The merge condition. The conditions are + * ALL_SUCCESS - All the preceeding operators need to be successful. + * ALL_FAILED - All the preceeding operators should have failed. + * ALL_COMPLETE - All the preceeding operators should have completed. It could have executed successfully or failed. + * + */ + "triggerRule"?: ExpressionOperator.TriggerRule; + "configProviderDelegate"?: model.ConfigProvider; + + "modelType": string; +} + +export namespace ExpressionOperator { + export enum TriggerRule { + AllSuccess = "ALL_SUCCESS", + AllFailed = "ALL_FAILED", + AllComplete = "ALL_COMPLETE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: ExpressionOperator, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Operator.getJsonObj(obj) as ExpressionOperator)), + ...{ + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getJsonObj(obj.configProviderDelegate) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "EXPRESSION_OPERATOR"; + export function getDeserializedJsonObj( + obj: ExpressionOperator, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.Operator.getDeserializedJsonObj(obj) as ExpressionOperator)), + ...{ + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getDeserializedJsonObj(obj.configProviderDelegate) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/external-storage.ts b/lib/dataintegration/lib/model/external-storage.ts new file mode 100644 index 0000000000..55217a6d01 --- /dev/null +++ b/lib/dataintegration/lib/model/external-storage.ts @@ -0,0 +1,69 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * BICC Connector Attribute.Object Storage as External storage where the BICC extracted files are written + */ +export interface ExternalStorage extends model.ConnectorAttribute { + /** + * Id of the external stoarge configured in BICC console. Usually its numeric. + */ + "storageId"?: string; + /** + * Name of the external storage configured in BICC console + */ + "storageName"?: string; + /** + * Object Storage host Url. DO not give http/https. + */ + "host"?: string; + /** + * Tenancy OCID for the OOS bucket + */ + "tenancyId"?: string; + /** + * Namespace for the OOS bucket + */ + "namespace"?: string; + /** + * Bucket Name where BICC extracts stores the files + */ + "bucket"?: string; + + "modelType": string; +} + +export namespace ExternalStorage { + export function getJsonObj(obj: ExternalStorage, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.ConnectorAttribute.getJsonObj(obj) as ExternalStorage)), + ...{} + }; + + return jsonObj; + } + export const modelType = "EXTERNAL_STORAGE"; + export function getDeserializedJsonObj(obj: ExternalStorage, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.ConnectorAttribute.getDeserializedJsonObj(obj) as ExternalStorage)), + ...{} + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/flow-node.ts b/lib/dataintegration/lib/model/flow-node.ts index 25d87e42f3..d825a9c3c1 100644 --- a/lib/dataintegration/lib/model/flow-node.ts +++ b/lib/dataintegration/lib/model/flow-node.ts @@ -56,10 +56,12 @@ export interface FlowNode { | model.EndOperator | model.Source | model.Union + | model.ExpressionOperator | model.Intersect | model.Target | model.Distinct | model.Filter + | model.Lookup | model.StartOperator | model.MergeOperator | model.Minus; diff --git a/lib/dataintegration/lib/model/index.ts b/lib/dataintegration/lib/model/index.ts index d9fa32b617..d1fc8f881e 100644 --- a/lib/dataintegration/lib/model/index.ts +++ b/lib/dataintegration/lib/model/index.ts @@ -31,6 +31,8 @@ import * as ApplicationSummary from "./application-summary"; export import ApplicationSummary = ApplicationSummary.ApplicationSummary; import * as ApplicationSummaryCollection from "./application-summary-collection"; export import ApplicationSummaryCollection = ApplicationSummaryCollection.ApplicationSummaryCollection; +import * as AuthDetails from "./auth-details"; +export import AuthDetails = AuthDetails.AuthDetails; import * as BaseType from "./base-type"; export import BaseType = BaseType.BaseType; import * as ChangeCompartmentDetails from "./change-compartment-details"; @@ -69,6 +71,8 @@ import * as ConnectionValidationSummary from "./connection-validation-summary"; export import ConnectionValidationSummary = ConnectionValidationSummary.ConnectionValidationSummary; import * as ConnectionValidationSummaryCollection from "./connection-validation-summary-collection"; export import ConnectionValidationSummaryCollection = ConnectionValidationSummaryCollection.ConnectionValidationSummaryCollection; +import * as ConnectorAttribute from "./connector-attribute"; +export import ConnectorAttribute = ConnectorAttribute.ConnectorAttribute; import * as CountStatistic from "./count-statistic"; export import CountStatistic = CountStatistic.CountStatistic; import * as CountStatisticSummary from "./count-statistic-summary"; @@ -103,12 +107,16 @@ import * as CreatePipelineValidationDetails from "./create-pipeline-validation-d export import CreatePipelineValidationDetails = CreatePipelineValidationDetails.CreatePipelineValidationDetails; import * as CreateProjectDetails from "./create-project-details"; export import CreateProjectDetails = CreateProjectDetails.CreateProjectDetails; +import * as CreateScheduleDetails from "./create-schedule-details"; +export import CreateScheduleDetails = CreateScheduleDetails.CreateScheduleDetails; import * as CreateSourceApplicationInfo from "./create-source-application-info"; export import CreateSourceApplicationInfo = CreateSourceApplicationInfo.CreateSourceApplicationInfo; import * as CreateTaskDetails from "./create-task-details"; export import CreateTaskDetails = CreateTaskDetails.CreateTaskDetails; import * as CreateTaskRunDetails from "./create-task-run-details"; export import CreateTaskRunDetails = CreateTaskRunDetails.CreateTaskRunDetails; +import * as CreateTaskScheduleDetails from "./create-task-schedule-details"; +export import CreateTaskScheduleDetails = CreateTaskScheduleDetails.CreateTaskScheduleDetails; import * as CreateTaskValidationDetails from "./create-task-validation-details"; export import CreateTaskValidationDetails = CreateTaskValidationDetails.CreateTaskValidationDetails; import * as CreateWorkspaceDetails from "./create-workspace-details"; @@ -143,6 +151,8 @@ import * as DataFlowValidationSummaryCollection from "./data-flow-validation-sum export import DataFlowValidationSummaryCollection = DataFlowValidationSummaryCollection.DataFlowValidationSummaryCollection; import * as DataFormat from "./data-format"; export import DataFormat = DataFormat.DataFormat; +import * as DataflowApplication from "./dataflow-application"; +export import DataflowApplication = DataflowApplication.DataflowApplication; import * as DependentObject from "./dependent-object"; export import DependentObject = DependentObject.DependentObject; import * as DependentObjectSummary from "./dependent-object-summary"; @@ -201,14 +211,6 @@ import * as ObjectMetadata from "./object-metadata"; export import ObjectMetadata = ObjectMetadata.ObjectMetadata; import * as Operator from "./operator"; export import Operator = Operator.Operator; -import * as OracleAdwcWriteAttributes from "./oracle-adwc-write-attributes"; -export import OracleAdwcWriteAttributes = OracleAdwcWriteAttributes.OracleAdwcWriteAttributes; -import * as OracleAtpWriteAttributes from "./oracle-atp-write-attributes"; -export import OracleAtpWriteAttributes = OracleAtpWriteAttributes.OracleAtpWriteAttributes; -import * as OracleReadAttributes from "./oracle-read-attributes"; -export import OracleReadAttributes = OracleReadAttributes.OracleReadAttributes; -import * as OracleWriteAttributes from "./oracle-write-attributes"; -export import OracleWriteAttributes = OracleWriteAttributes.OracleWriteAttributes; import * as ParameterValue from "./parameter-value"; export import ParameterValue = ParameterValue.ParameterValue; import * as ParentReference from "./parent-reference"; @@ -273,6 +275,10 @@ import * as RootObject from "./root-object"; export import RootObject = RootObject.RootObject; import * as Schedule from "./schedule"; export import Schedule = Schedule.Schedule; +import * as ScheduleSummary from "./schedule-summary"; +export import ScheduleSummary = ScheduleSummary.ScheduleSummary; +import * as ScheduleSummaryCollection from "./schedule-summary-collection"; +export import ScheduleSummaryCollection = ScheduleSummaryCollection.ScheduleSummaryCollection; import * as Schema from "./schema"; export import Schema = Schema.Schema; import * as SchemaDriftConfig from "./schema-drift-config"; @@ -281,6 +287,8 @@ import * as SchemaSummary from "./schema-summary"; export import SchemaSummary = SchemaSummary.SchemaSummary; import * as SchemaSummaryCollection from "./schema-summary-collection"; export import SchemaSummaryCollection = SchemaSummaryCollection.SchemaSummaryCollection; +import * as Script from "./script"; +export import Script = Script.Script; import * as SecretConfig from "./secret-config"; export import SecretConfig = SecretConfig.SecretConfig; import * as SensitiveAttribute from "./sensitive-attribute"; @@ -309,6 +317,10 @@ import * as TaskRunSummaryCollection from "./task-run-summary-collection"; export import TaskRunSummaryCollection = TaskRunSummaryCollection.TaskRunSummaryCollection; import * as TaskSchedule from "./task-schedule"; export import TaskSchedule = TaskSchedule.TaskSchedule; +import * as TaskScheduleSummary from "./task-schedule-summary"; +export import TaskScheduleSummary = TaskScheduleSummary.TaskScheduleSummary; +import * as TaskScheduleSummaryCollection from "./task-schedule-summary-collection"; +export import TaskScheduleSummaryCollection = TaskScheduleSummaryCollection.TaskScheduleSummaryCollection; import * as TaskSummary from "./task-summary"; export import TaskSummary = TaskSummary.TaskSummary; import * as TaskSummaryCollection from "./task-summary-collection"; @@ -349,10 +361,14 @@ import * as UpdateProjectDetails from "./update-project-details"; export import UpdateProjectDetails = UpdateProjectDetails.UpdateProjectDetails; import * as UpdateReferenceDetails from "./update-reference-details"; export import UpdateReferenceDetails = UpdateReferenceDetails.UpdateReferenceDetails; +import * as UpdateScheduleDetails from "./update-schedule-details"; +export import UpdateScheduleDetails = UpdateScheduleDetails.UpdateScheduleDetails; import * as UpdateTaskDetails from "./update-task-details"; export import UpdateTaskDetails = UpdateTaskDetails.UpdateTaskDetails; import * as UpdateTaskRunDetails from "./update-task-run-details"; export import UpdateTaskRunDetails = UpdateTaskRunDetails.UpdateTaskRunDetails; +import * as UpdateTaskScheduleDetails from "./update-task-schedule-details"; +export import UpdateTaskScheduleDetails = UpdateTaskScheduleDetails.UpdateTaskScheduleDetails; import * as UpdateWorkspaceDetails from "./update-workspace-details"; export import UpdateWorkspaceDetails = UpdateWorkspaceDetails.UpdateWorkspaceDetails; import * as ValidationMessage from "./validation-message"; @@ -380,6 +396,8 @@ import * as Aggregator from "./aggregator"; export import Aggregator = Aggregator.Aggregator; import * as AvroFormatAttribute from "./avro-format-attribute"; export import AvroFormatAttribute = AvroFormatAttribute.AvroFormatAttribute; +import * as BiccReadAttributes from "./bicc-read-attributes"; +export import BiccReadAttributes = BiccReadAttributes.BiccReadAttributes; import * as CompositeFieldMap from "./composite-field-map"; export import CompositeFieldMap = CompositeFieldMap.CompositeFieldMap; import * as CompositeType from "./composite-type"; @@ -392,10 +410,18 @@ import * as ConnectionFromAdwc from "./connection-from-adwc"; export import ConnectionFromAdwc = ConnectionFromAdwc.ConnectionFromAdwc; import * as ConnectionFromAdwcDetails from "./connection-from-adwc-details"; export import ConnectionFromAdwcDetails = ConnectionFromAdwcDetails.ConnectionFromAdwcDetails; +import * as ConnectionFromAmazonS3 from "./connection-from-amazon-s3"; +export import ConnectionFromAmazonS3 = ConnectionFromAmazonS3.ConnectionFromAmazonS3; +import * as ConnectionFromAmazonS3Details from "./connection-from-amazon-s3-details"; +export import ConnectionFromAmazonS3Details = ConnectionFromAmazonS3Details.ConnectionFromAmazonS3Details; import * as ConnectionFromAtp from "./connection-from-atp"; export import ConnectionFromAtp = ConnectionFromAtp.ConnectionFromAtp; import * as ConnectionFromAtpDetails from "./connection-from-atp-details"; export import ConnectionFromAtpDetails = ConnectionFromAtpDetails.ConnectionFromAtpDetails; +import * as ConnectionFromBICC from "./connection-from-bi-cc"; +export import ConnectionFromBICC = ConnectionFromBICC.ConnectionFromBICC; +import * as ConnectionFromBICCDetails from "./connection-from-bi-cc-details"; +export import ConnectionFromBICCDetails = ConnectionFromBICCDetails.ConnectionFromBICCDetails; import * as ConnectionFromJdbc from "./connection-from-jdbc"; export import ConnectionFromJdbc = ConnectionFromJdbc.ConnectionFromJdbc; import * as ConnectionFromJdbcDetails from "./connection-from-jdbc-details"; @@ -414,8 +440,12 @@ import * as ConnectionFromOracleDetails from "./connection-from-oracle-details"; export import ConnectionFromOracleDetails = ConnectionFromOracleDetails.ConnectionFromOracleDetails; import * as ConnectionSummaryFromAdwc from "./connection-summary-from-adwc"; export import ConnectionSummaryFromAdwc = ConnectionSummaryFromAdwc.ConnectionSummaryFromAdwc; +import * as ConnectionSummaryFromAmazonS3 from "./connection-summary-from-amazon-s3"; +export import ConnectionSummaryFromAmazonS3 = ConnectionSummaryFromAmazonS3.ConnectionSummaryFromAmazonS3; import * as ConnectionSummaryFromAtp from "./connection-summary-from-atp"; export import ConnectionSummaryFromAtp = ConnectionSummaryFromAtp.ConnectionSummaryFromAtp; +import * as ConnectionSummaryFromBICC from "./connection-summary-from-bi-cc"; +export import ConnectionSummaryFromBICC = ConnectionSummaryFromBICC.ConnectionSummaryFromBICC; import * as ConnectionSummaryFromJdbc from "./connection-summary-from-jdbc"; export import ConnectionSummaryFromJdbc = ConnectionSummaryFromJdbc.ConnectionSummaryFromJdbc; import * as ConnectionSummaryFromMySQL from "./connection-summary-from-my-sq-l"; @@ -426,8 +456,12 @@ import * as ConnectionSummaryFromOracle from "./connection-summary-from-oracle"; export import ConnectionSummaryFromOracle = ConnectionSummaryFromOracle.ConnectionSummaryFromOracle; import * as CreateConnectionFromAdwc from "./create-connection-from-adwc"; export import CreateConnectionFromAdwc = CreateConnectionFromAdwc.CreateConnectionFromAdwc; +import * as CreateConnectionFromAmazonS3 from "./create-connection-from-amazon-s3"; +export import CreateConnectionFromAmazonS3 = CreateConnectionFromAmazonS3.CreateConnectionFromAmazonS3; import * as CreateConnectionFromAtp from "./create-connection-from-atp"; export import CreateConnectionFromAtp = CreateConnectionFromAtp.CreateConnectionFromAtp; +import * as CreateConnectionFromBICC from "./create-connection-from-bi-cc"; +export import CreateConnectionFromBICC = CreateConnectionFromBICC.CreateConnectionFromBICC; import * as CreateConnectionFromJdbc from "./create-connection-from-jdbc"; export import CreateConnectionFromJdbc = CreateConnectionFromJdbc.CreateConnectionFromJdbc; import * as CreateConnectionFromMySQL from "./create-connection-from-my-sq-l"; @@ -438,8 +472,12 @@ import * as CreateConnectionFromOracle from "./create-connection-from-oracle"; export import CreateConnectionFromOracle = CreateConnectionFromOracle.CreateConnectionFromOracle; import * as CreateDataAssetFromAdwc from "./create-data-asset-from-adwc"; export import CreateDataAssetFromAdwc = CreateDataAssetFromAdwc.CreateDataAssetFromAdwc; +import * as CreateDataAssetFromAmazonS3 from "./create-data-asset-from-amazon-s3"; +export import CreateDataAssetFromAmazonS3 = CreateDataAssetFromAmazonS3.CreateDataAssetFromAmazonS3; import * as CreateDataAssetFromAtp from "./create-data-asset-from-atp"; export import CreateDataAssetFromAtp = CreateDataAssetFromAtp.CreateDataAssetFromAtp; +import * as CreateDataAssetFromFusionApp from "./create-data-asset-from-fusion-app"; +export import CreateDataAssetFromFusionApp = CreateDataAssetFromFusionApp.CreateDataAssetFromFusionApp; import * as CreateDataAssetFromJdbc from "./create-data-asset-from-jdbc"; export import CreateDataAssetFromJdbc = CreateDataAssetFromJdbc.CreateDataAssetFromJdbc; import * as CreateDataAssetFromMySQL from "./create-data-asset-from-my-sq-l"; @@ -454,8 +492,14 @@ import * as CreateTaskFromDataLoaderTask from "./create-task-from-data-loader-ta export import CreateTaskFromDataLoaderTask = CreateTaskFromDataLoaderTask.CreateTaskFromDataLoaderTask; import * as CreateTaskFromIntegrationTask from "./create-task-from-integration-task"; export import CreateTaskFromIntegrationTask = CreateTaskFromIntegrationTask.CreateTaskFromIntegrationTask; +import * as CreateTaskFromOCIDataflowTask from "./create-task-from-oc-idataflow-task"; +export import CreateTaskFromOCIDataflowTask = CreateTaskFromOCIDataflowTask.CreateTaskFromOCIDataflowTask; import * as CreateTaskFromPipelineTask from "./create-task-from-pipeline-task"; export import CreateTaskFromPipelineTask = CreateTaskFromPipelineTask.CreateTaskFromPipelineTask; +import * as CreateTaskFromRestTask from "./create-task-from-rest-task"; +export import CreateTaskFromRestTask = CreateTaskFromRestTask.CreateTaskFromRestTask; +import * as CreateTaskFromSQLTask from "./create-task-from-sq-ltask"; +export import CreateTaskFromSQLTask = CreateTaskFromSQLTask.CreateTaskFromSQLTask; import * as CreateTaskValidationFromDataLoaderTask from "./create-task-validation-from-data-loader-task"; export import CreateTaskValidationFromDataLoaderTask = CreateTaskValidationFromDataLoaderTask.CreateTaskValidationFromDataLoaderTask; import * as CreateTaskValidationFromIntegrationTask from "./create-task-validation-from-integration-task"; @@ -468,8 +512,12 @@ import * as DailyFrequencyDetails from "./daily-frequency-details"; export import DailyFrequencyDetails = DailyFrequencyDetails.DailyFrequencyDetails; import * as DataAssetFromAdwcDetails from "./data-asset-from-adwc-details"; export import DataAssetFromAdwcDetails = DataAssetFromAdwcDetails.DataAssetFromAdwcDetails; +import * as DataAssetFromAmazonS3 from "./data-asset-from-amazon-s3"; +export import DataAssetFromAmazonS3 = DataAssetFromAmazonS3.DataAssetFromAmazonS3; import * as DataAssetFromAtpDetails from "./data-asset-from-atp-details"; export import DataAssetFromAtpDetails = DataAssetFromAtpDetails.DataAssetFromAtpDetails; +import * as DataAssetFromFusionApp from "./data-asset-from-fusion-app"; +export import DataAssetFromFusionApp = DataAssetFromFusionApp.DataAssetFromFusionApp; import * as DataAssetFromJdbc from "./data-asset-from-jdbc"; export import DataAssetFromJdbc = DataAssetFromJdbc.DataAssetFromJdbc; import * as DataAssetFromMySQL from "./data-asset-from-my-sq-l"; @@ -480,8 +528,12 @@ import * as DataAssetFromOracleDetails from "./data-asset-from-oracle-details"; export import DataAssetFromOracleDetails = DataAssetFromOracleDetails.DataAssetFromOracleDetails; import * as DataAssetSummaryFromAdwc from "./data-asset-summary-from-adwc"; export import DataAssetSummaryFromAdwc = DataAssetSummaryFromAdwc.DataAssetSummaryFromAdwc; +import * as DataAssetSummaryFromAmazonS3 from "./data-asset-summary-from-amazon-s3"; +export import DataAssetSummaryFromAmazonS3 = DataAssetSummaryFromAmazonS3.DataAssetSummaryFromAmazonS3; import * as DataAssetSummaryFromAtp from "./data-asset-summary-from-atp"; export import DataAssetSummaryFromAtp = DataAssetSummaryFromAtp.DataAssetSummaryFromAtp; +import * as DataAssetSummaryFromFusionApp from "./data-asset-summary-from-fusion-app"; +export import DataAssetSummaryFromFusionApp = DataAssetSummaryFromFusionApp.DataAssetSummaryFromFusionApp; import * as DataAssetSummaryFromJdbc from "./data-asset-summary-from-jdbc"; export import DataAssetSummaryFromJdbc = DataAssetSummaryFromJdbc.DataAssetSummaryFromJdbc; import * as DataAssetSummaryFromMySQL from "./data-asset-summary-from-my-sq-l"; @@ -490,6 +542,10 @@ import * as DataAssetSummaryFromObjectStorage from "./data-asset-summary-from-ob export import DataAssetSummaryFromObjectStorage = DataAssetSummaryFromObjectStorage.DataAssetSummaryFromObjectStorage; import * as DataAssetSummaryFromOracle from "./data-asset-summary-from-oracle"; export import DataAssetSummaryFromOracle = DataAssetSummaryFromOracle.DataAssetSummaryFromOracle; +import * as DataEntityFromDataStore from "./data-entity-from-data-store"; +export import DataEntityFromDataStore = DataEntityFromDataStore.DataEntityFromDataStore; +import * as DataEntityFromDataStoreEntityDetails from "./data-entity-from-data-store-entity-details"; +export import DataEntityFromDataStoreEntityDetails = DataEntityFromDataStoreEntityDetails.DataEntityFromDataStoreEntityDetails; import * as DataEntityFromFile from "./data-entity-from-file"; export import DataEntityFromFile = DataEntityFromFile.DataEntityFromFile; import * as DataEntityFromFileEntityDetails from "./data-entity-from-file-entity-details"; @@ -502,6 +558,8 @@ import * as DataEntityFromView from "./data-entity-from-view"; export import DataEntityFromView = DataEntityFromView.DataEntityFromView; import * as DataEntityFromViewEntityDetails from "./data-entity-from-view-entity-details"; export import DataEntityFromViewEntityDetails = DataEntityFromViewEntityDetails.DataEntityFromViewEntityDetails; +import * as DataEntitySummaryFromDataStore from "./data-entity-summary-from-data-store"; +export import DataEntitySummaryFromDataStore = DataEntitySummaryFromDataStore.DataEntitySummaryFromDataStore; import * as DataEntitySummaryFromFile from "./data-entity-summary-from-file"; export import DataEntitySummaryFromFile = DataEntitySummaryFromFile.DataEntitySummaryFromFile; import * as DataEntitySummaryFromTable from "./data-entity-summary-from-table"; @@ -530,6 +588,10 @@ import * as EndOperator from "./end-operator"; export import EndOperator = EndOperator.EndOperator; import * as EntityShapeFromFile from "./entity-shape-from-file"; export import EntityShapeFromFile = EntityShapeFromFile.EntityShapeFromFile; +import * as ExpressionOperator from "./expression-operator"; +export import ExpressionOperator = ExpressionOperator.ExpressionOperator; +import * as ExternalStorage from "./external-storage"; +export import ExternalStorage = ExternalStorage.ExternalStorage; import * as Filter from "./filter"; export import Filter = Filter.Filter; import * as FilterPush from "./filter-push"; @@ -558,6 +620,8 @@ import * as JsonFormatAttribute from "./json-format-attribute"; export import JsonFormatAttribute = JsonFormatAttribute.JsonFormatAttribute; import * as KeyRangePartitionConfig from "./key-range-partition-config"; export import KeyRangePartitionConfig = KeyRangePartitionConfig.KeyRangePartitionConfig; +import * as Lookup from "./lookup"; +export import Lookup = Lookup.Lookup; import * as MacroField from "./macro-field"; export import MacroField = MacroField.MacroField; import * as MergeOperator from "./merge-operator"; @@ -570,16 +634,28 @@ import * as NameListRule from "./name-list-rule"; export import NameListRule = NameListRule.NameListRule; import * as NamePatternRule from "./name-pattern-rule"; export import NamePatternRule = NamePatternRule.NamePatternRule; +import * as ObjectStorageWriteAttribute from "./object-storage-write-attribute"; +export import ObjectStorageWriteAttribute = ObjectStorageWriteAttribute.ObjectStorageWriteAttribute; +import * as ObjectStorageWriteAttributes from "./object-storage-write-attributes"; +export import ObjectStorageWriteAttributes = ObjectStorageWriteAttributes.ObjectStorageWriteAttributes; import * as OciVaultSecretConfig from "./oci-vault-secret-config"; export import OciVaultSecretConfig = OciVaultSecretConfig.OciVaultSecretConfig; import * as OracleAdwcWriteAttribute from "./oracle-adwc-write-attribute"; export import OracleAdwcWriteAttribute = OracleAdwcWriteAttribute.OracleAdwcWriteAttribute; +import * as OracleAdwcWriteAttributes from "./oracle-adwc-write-attributes"; +export import OracleAdwcWriteAttributes = OracleAdwcWriteAttributes.OracleAdwcWriteAttributes; import * as OracleAtpWriteAttribute from "./oracle-atp-write-attribute"; export import OracleAtpWriteAttribute = OracleAtpWriteAttribute.OracleAtpWriteAttribute; +import * as OracleAtpWriteAttributes from "./oracle-atp-write-attributes"; +export import OracleAtpWriteAttributes = OracleAtpWriteAttributes.OracleAtpWriteAttributes; import * as OracleReadAttribute from "./oracle-read-attribute"; export import OracleReadAttribute = OracleReadAttribute.OracleReadAttribute; +import * as OracleReadAttributes from "./oracle-read-attributes"; +export import OracleReadAttributes = OracleReadAttributes.OracleReadAttributes; import * as OracleWriteAttribute from "./oracle-write-attribute"; export import OracleWriteAttribute = OracleWriteAttribute.OracleWriteAttribute; +import * as OracleWriteAttributes from "./oracle-write-attributes"; +export import OracleWriteAttributes = OracleWriteAttributes.OracleWriteAttributes; import * as OutputField from "./output-field"; export import OutputField = OutputField.OutputField; import * as OutputLink from "./output-link"; @@ -588,6 +664,8 @@ import * as OutputPort from "./output-port"; export import OutputPort = OutputPort.OutputPort; import * as Parameter from "./parameter"; export import Parameter = Parameter.Parameter; +import * as ParquetFormatAttribute from "./parquet-format-attribute"; +export import ParquetFormatAttribute = ParquetFormatAttribute.ParquetFormatAttribute; import * as PrimaryKey from "./primary-key"; export import PrimaryKey = PrimaryKey.PrimaryKey; import * as Projection from "./projection"; @@ -636,16 +714,28 @@ import * as TaskFromDataLoaderTaskDetails from "./task-from-data-loader-task-det export import TaskFromDataLoaderTaskDetails = TaskFromDataLoaderTaskDetails.TaskFromDataLoaderTaskDetails; import * as TaskFromIntegrationTaskDetails from "./task-from-integration-task-details"; export import TaskFromIntegrationTaskDetails = TaskFromIntegrationTaskDetails.TaskFromIntegrationTaskDetails; +import * as TaskFromOCIDataflowTaskDetails from "./task-from-oc-idataflow-task-details"; +export import TaskFromOCIDataflowTaskDetails = TaskFromOCIDataflowTaskDetails.TaskFromOCIDataflowTaskDetails; import * as TaskFromPipelineTaskDetails from "./task-from-pipeline-task-details"; export import TaskFromPipelineTaskDetails = TaskFromPipelineTaskDetails.TaskFromPipelineTaskDetails; +import * as TaskFromRestTaskDetails from "./task-from-rest-task-details"; +export import TaskFromRestTaskDetails = TaskFromRestTaskDetails.TaskFromRestTaskDetails; +import * as TaskFromSQLTaskDetails from "./task-from-sq-ltask-details"; +export import TaskFromSQLTaskDetails = TaskFromSQLTaskDetails.TaskFromSQLTaskDetails; import * as TaskOperator from "./task-operator"; export import TaskOperator = TaskOperator.TaskOperator; import * as TaskSummaryFromDataLoaderTask from "./task-summary-from-data-loader-task"; export import TaskSummaryFromDataLoaderTask = TaskSummaryFromDataLoaderTask.TaskSummaryFromDataLoaderTask; import * as TaskSummaryFromIntegrationTask from "./task-summary-from-integration-task"; export import TaskSummaryFromIntegrationTask = TaskSummaryFromIntegrationTask.TaskSummaryFromIntegrationTask; +import * as TaskSummaryFromOCIDataflowTask from "./task-summary-from-oc-idataflow-task"; +export import TaskSummaryFromOCIDataflowTask = TaskSummaryFromOCIDataflowTask.TaskSummaryFromOCIDataflowTask; import * as TaskSummaryFromPipelineTask from "./task-summary-from-pipeline-task"; export import TaskSummaryFromPipelineTask = TaskSummaryFromPipelineTask.TaskSummaryFromPipelineTask; +import * as TaskSummaryFromRestTask from "./task-summary-from-rest-task"; +export import TaskSummaryFromRestTask = TaskSummaryFromRestTask.TaskSummaryFromRestTask; +import * as TaskSummaryFromSQLTask from "./task-summary-from-sq-ltask"; +export import TaskSummaryFromSQLTask = TaskSummaryFromSQLTask.TaskSummaryFromSQLTask; import * as TypeListRule from "./type-list-rule"; export import TypeListRule = TypeListRule.TypeListRule; import * as TypedNamePatternRule from "./typed-name-pattern-rule"; @@ -654,8 +744,12 @@ import * as Union from "./union"; export import Union = Union.Union; import * as UpdateConnectionFromAdwc from "./update-connection-from-adwc"; export import UpdateConnectionFromAdwc = UpdateConnectionFromAdwc.UpdateConnectionFromAdwc; +import * as UpdateConnectionFromAmazonS3 from "./update-connection-from-amazon-s3"; +export import UpdateConnectionFromAmazonS3 = UpdateConnectionFromAmazonS3.UpdateConnectionFromAmazonS3; import * as UpdateConnectionFromAtp from "./update-connection-from-atp"; export import UpdateConnectionFromAtp = UpdateConnectionFromAtp.UpdateConnectionFromAtp; +import * as UpdateConnectionFromBICC from "./update-connection-from-bi-cc"; +export import UpdateConnectionFromBICC = UpdateConnectionFromBICC.UpdateConnectionFromBICC; import * as UpdateConnectionFromJdbc from "./update-connection-from-jdbc"; export import UpdateConnectionFromJdbc = UpdateConnectionFromJdbc.UpdateConnectionFromJdbc; import * as UpdateConnectionFromMySQL from "./update-connection-from-my-sq-l"; @@ -666,8 +760,12 @@ import * as UpdateConnectionFromOracle from "./update-connection-from-oracle"; export import UpdateConnectionFromOracle = UpdateConnectionFromOracle.UpdateConnectionFromOracle; import * as UpdateDataAssetFromAdwc from "./update-data-asset-from-adwc"; export import UpdateDataAssetFromAdwc = UpdateDataAssetFromAdwc.UpdateDataAssetFromAdwc; +import * as UpdateDataAssetFromAmazonS3 from "./update-data-asset-from-amazon-s3"; +export import UpdateDataAssetFromAmazonS3 = UpdateDataAssetFromAmazonS3.UpdateDataAssetFromAmazonS3; import * as UpdateDataAssetFromAtp from "./update-data-asset-from-atp"; export import UpdateDataAssetFromAtp = UpdateDataAssetFromAtp.UpdateDataAssetFromAtp; +import * as UpdateDataAssetFromFusionApp from "./update-data-asset-from-fusion-app"; +export import UpdateDataAssetFromFusionApp = UpdateDataAssetFromFusionApp.UpdateDataAssetFromFusionApp; import * as UpdateDataAssetFromJdbc from "./update-data-asset-from-jdbc"; export import UpdateDataAssetFromJdbc = UpdateDataAssetFromJdbc.UpdateDataAssetFromJdbc; import * as UpdateDataAssetFromMySQL from "./update-data-asset-from-my-sq-l"; @@ -680,7 +778,13 @@ import * as UpdateTaskFromDataLoaderTask from "./update-task-from-data-loader-ta export import UpdateTaskFromDataLoaderTask = UpdateTaskFromDataLoaderTask.UpdateTaskFromDataLoaderTask; import * as UpdateTaskFromIntegrationTask from "./update-task-from-integration-task"; export import UpdateTaskFromIntegrationTask = UpdateTaskFromIntegrationTask.UpdateTaskFromIntegrationTask; +import * as UpdateTaskFromOCIDataflowTask from "./update-task-from-oc-idataflow-task"; +export import UpdateTaskFromOCIDataflowTask = UpdateTaskFromOCIDataflowTask.UpdateTaskFromOCIDataflowTask; import * as UpdateTaskFromPipelineTask from "./update-task-from-pipeline-task"; export import UpdateTaskFromPipelineTask = UpdateTaskFromPipelineTask.UpdateTaskFromPipelineTask; +import * as UpdateTaskFromRestTask from "./update-task-from-rest-task"; +export import UpdateTaskFromRestTask = UpdateTaskFromRestTask.UpdateTaskFromRestTask; +import * as UpdateTaskFromSQLTask from "./update-task-from-sq-ltask"; +export import UpdateTaskFromSQLTask = UpdateTaskFromSQLTask.UpdateTaskFromSQLTask; import * as WriteOperationConfig from "./write-operation-config"; export import WriteOperationConfig = WriteOperationConfig.WriteOperationConfig; diff --git a/lib/dataintegration/lib/model/lookup.ts b/lib/dataintegration/lib/model/lookup.ts new file mode 100644 index 0000000000..0226c3179e --- /dev/null +++ b/lib/dataintegration/lib/model/lookup.ts @@ -0,0 +1,77 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the lookup operator. The lookup operator has two input links, a primary input, and a lookup source input. It has an output link, fields of the lookup input are appended to the primary input and projected as the output fields. + */ +export interface Lookup extends model.Operator { + "lookupCondition"?: model.Expression; + /** + * For the rows for which lookup condition does not satisfy, if set to true - do not return those rows of primary Input source and if set to false - create a row with primary input fields values and lookup field values as NULL. + */ + "isSkipNoMatch"?: boolean; + /** + * if there are multiple records found in the lookup input what action should be performed. The default value for this field is RETURN_ANY. + */ + "multiMatchStrategy"?: Lookup.MultiMatchStrategy; + /** + * this map is used for replacing NULL values in the record. Key is the column name and value is the NULL replacement. + */ + "nullFillValues"?: { [key: string]: any }; + + "modelType": string; +} + +export namespace Lookup { + export enum MultiMatchStrategy { + ReturnAny = "RETURN_ANY", + ReturnFirst = "RETURN_FIRST", + ReturnLast = "RETURN_LAST", + ReturnAll = "RETURN_ALL", + ReturnError = "RETURN_ERROR", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: Lookup, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Operator.getJsonObj(obj) as Lookup)), + ...{ + "lookupCondition": obj.lookupCondition + ? model.Expression.getJsonObj(obj.lookupCondition) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "LOOKUP_OPERATOR"; + export function getDeserializedJsonObj(obj: Lookup, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Operator.getDeserializedJsonObj(obj) as Lookup)), + ...{ + "lookupCondition": obj.lookupCondition + ? model.Expression.getDeserializedJsonObj(obj.lookupCondition) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/native-shape-field.ts b/lib/dataintegration/lib/model/native-shape-field.ts index 13099d2d5b..6990af0339 100644 --- a/lib/dataintegration/lib/model/native-shape-field.ts +++ b/lib/dataintegration/lib/model/native-shape-field.ts @@ -29,7 +29,7 @@ export interface NativeShapeField { /** * The type reference. */ - "type"?: string; + "type"?: any; "configValues"?: model.ConfigValues; /** * The position of the attribute. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. diff --git a/lib/dataintegration/lib/model/object-metadata.ts b/lib/dataintegration/lib/model/object-metadata.ts index 6202893e05..53c186389b 100644 --- a/lib/dataintegration/lib/model/object-metadata.ts +++ b/lib/dataintegration/lib/model/object-metadata.ts @@ -67,6 +67,7 @@ export interface ObjectMetadata { * Specifies whether this object is a favorite or not. */ "isFavorite"?: boolean; + "countStatistics"?: model.CountStatistic; } export namespace ObjectMetadata { @@ -76,6 +77,10 @@ export namespace ObjectMetadata { ...{ "aggregator": obj.aggregator ? model.AggregatorSummary.getJsonObj(obj.aggregator) + : undefined, + + "countStatistics": obj.countStatistics + ? model.CountStatistic.getJsonObj(obj.countStatistics) : undefined } }; @@ -88,6 +93,10 @@ export namespace ObjectMetadata { ...{ "aggregator": obj.aggregator ? model.AggregatorSummary.getDeserializedJsonObj(obj.aggregator) + : undefined, + + "countStatistics": obj.countStatistics + ? model.CountStatistic.getDeserializedJsonObj(obj.countStatistics) : undefined } }; diff --git a/lib/dataintegration/lib/model/object-storage-write-attribute.ts b/lib/dataintegration/lib/model/object-storage-write-attribute.ts new file mode 100644 index 0000000000..4a0945fc1f --- /dev/null +++ b/lib/dataintegration/lib/model/object-storage-write-attribute.ts @@ -0,0 +1,56 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Properties to configure writing to Object Storage. + */ +export interface ObjectStorageWriteAttribute extends model.AbstractWriteAttribute { + /** + * Specifies whether to write output to single-file or not. + */ + "writeToSingleFile"?: boolean; + + "modelType": string; +} + +export namespace ObjectStorageWriteAttribute { + export function getJsonObj(obj: ObjectStorageWriteAttribute, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getJsonObj(obj) as ObjectStorageWriteAttribute)), + ...{} + }; + + return jsonObj; + } + export const modelType = "OBJECTSTORAGEWRITEATTRIBUTE"; + export function getDeserializedJsonObj( + obj: ObjectStorageWriteAttribute, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getDeserializedJsonObj( + obj + ) as ObjectStorageWriteAttribute)), + ...{} + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/object-storage-write-attributes.ts b/lib/dataintegration/lib/model/object-storage-write-attributes.ts new file mode 100644 index 0000000000..20caf5fd28 --- /dev/null +++ b/lib/dataintegration/lib/model/object-storage-write-attributes.ts @@ -0,0 +1,56 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Properties to configure writing to Object Storage. + */ +export interface ObjectStorageWriteAttributes extends model.AbstractWriteAttribute { + /** + * Specifies whether to write output to single-file or not. + */ + "writeToSingleFile"?: boolean; + + "modelType": string; +} + +export namespace ObjectStorageWriteAttributes { + export function getJsonObj(obj: ObjectStorageWriteAttributes, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getJsonObj(obj) as ObjectStorageWriteAttributes)), + ...{} + }; + + return jsonObj; + } + export const modelType = "OBJECT_STORAGE_WRITE_ATTRIBUTE"; + export function getDeserializedJsonObj( + obj: ObjectStorageWriteAttributes, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getDeserializedJsonObj( + obj + ) as ObjectStorageWriteAttributes)), + ...{} + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/operator.ts b/lib/dataintegration/lib/model/operator.ts index 7ab575437b..67d2e66988 100644 --- a/lib/dataintegration/lib/model/operator.ts +++ b/lib/dataintegration/lib/model/operator.ts @@ -111,6 +111,11 @@ export namespace Operator { return model.Source.getJsonObj((jsonObj), true); case "UNION_OPERATOR": return model.Union.getJsonObj((jsonObj), true); + case "EXPRESSION_OPERATOR": + return model.ExpressionOperator.getJsonObj( + (jsonObj), + true + ); case "INTERSECT_OPERATOR": return model.Intersect.getJsonObj((jsonObj), true); case "TARGET_OPERATOR": @@ -119,6 +124,8 @@ export namespace Operator { return model.Distinct.getJsonObj((jsonObj), true); case "FILTER_OPERATOR": return model.Filter.getJsonObj((jsonObj), true); + case "LOOKUP_OPERATOR": + return model.Lookup.getJsonObj((jsonObj), true); case "START_OPERATOR": return model.StartOperator.getJsonObj((jsonObj), true); case "MERGE_OPERATOR": @@ -185,6 +192,11 @@ export namespace Operator { return model.Source.getDeserializedJsonObj((jsonObj), true); case "UNION_OPERATOR": return model.Union.getDeserializedJsonObj((jsonObj), true); + case "EXPRESSION_OPERATOR": + return model.ExpressionOperator.getDeserializedJsonObj( + (jsonObj), + true + ); case "INTERSECT_OPERATOR": return model.Intersect.getDeserializedJsonObj((jsonObj), true); case "TARGET_OPERATOR": @@ -193,6 +205,8 @@ export namespace Operator { return model.Distinct.getDeserializedJsonObj((jsonObj), true); case "FILTER_OPERATOR": return model.Filter.getDeserializedJsonObj((jsonObj), true); + case "LOOKUP_OPERATOR": + return model.Lookup.getDeserializedJsonObj((jsonObj), true); case "START_OPERATOR": return model.StartOperator.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/oracle-adwc-write-attribute.ts b/lib/dataintegration/lib/model/oracle-adwc-write-attribute.ts index 170afa78fc..4aae45c9a2 100644 --- a/lib/dataintegration/lib/model/oracle-adwc-write-attribute.ts +++ b/lib/dataintegration/lib/model/oracle-adwc-write-attribute.ts @@ -30,7 +30,9 @@ export interface OracleAdwcWriteAttribute extends model.AbstractWriteAttribute { | model.DataAssetFromJdbc | model.DataAssetFromOracleDetails | model.DataAssetFromAdwcDetails + | model.DataAssetFromAmazonS3 | model.DataAssetFromObjectStorageDetails + | model.DataAssetFromFusionApp | model.DataAssetFromAtpDetails | model.DataAssetFromMySQL; "stagingConnection"?: @@ -38,8 +40,10 @@ export interface OracleAdwcWriteAttribute extends model.AbstractWriteAttribute { | model.ConnectionFromAdwc | model.ConnectionFromAtp | model.ConnectionFromOracle + | model.ConnectionFromAmazonS3 | model.ConnectionFromMySQL - | model.ConnectionFromJdbc; + | model.ConnectionFromJdbc + | model.ConnectionFromBICC; "modelType": string; } diff --git a/lib/dataintegration/lib/model/oracle-adwc-write-attributes.ts b/lib/dataintegration/lib/model/oracle-adwc-write-attributes.ts index 830c040362..c24f2b4a11 100644 --- a/lib/dataintegration/lib/model/oracle-adwc-write-attributes.ts +++ b/lib/dataintegration/lib/model/oracle-adwc-write-attributes.ts @@ -17,11 +17,8 @@ import common = require("oci-common"); /** * Properties to configure when writing to Oracle Autonomous Data Warehouse Cloud. */ -export interface OracleAdwcWriteAttributes { - /** - * The bucket name for the attribute. - */ - "bucketName"?: string; +export interface OracleAdwcWriteAttributes extends model.AbstractWriteAttribute { + "bucketSchema"?: model.Schema; /** * The file name for the attribute. */ @@ -30,7 +27,9 @@ export interface OracleAdwcWriteAttributes { | model.DataAssetFromJdbc | model.DataAssetFromOracleDetails | model.DataAssetFromAdwcDetails + | model.DataAssetFromAmazonS3 | model.DataAssetFromObjectStorageDetails + | model.DataAssetFromFusionApp | model.DataAssetFromAtpDetails | model.DataAssetFromMySQL; "stagingConnection"?: @@ -38,15 +37,23 @@ export interface OracleAdwcWriteAttributes { | model.ConnectionFromAdwc | model.ConnectionFromAtp | model.ConnectionFromOracle + | model.ConnectionFromAmazonS3 | model.ConnectionFromMySQL - | model.ConnectionFromJdbc; + | model.ConnectionFromJdbc + | model.ConnectionFromBICC; + + "modelType": string; } export namespace OracleAdwcWriteAttributes { - export function getJsonObj(obj: OracleAdwcWriteAttributes): object { + export function getJsonObj(obj: OracleAdwcWriteAttributes, isParentJsonObj?: boolean): object { const jsonObj = { - ...obj, + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getJsonObj(obj) as OracleAdwcWriteAttributes)), ...{ + "bucketSchema": obj.bucketSchema ? model.Schema.getJsonObj(obj.bucketSchema) : undefined, + "stagingDataAsset": obj.stagingDataAsset ? model.DataAsset.getJsonObj(obj.stagingDataAsset) : undefined, @@ -58,10 +65,20 @@ export namespace OracleAdwcWriteAttributes { return jsonObj; } - export function getDeserializedJsonObj(obj: OracleAdwcWriteAttributes): object { + export const modelType = "ORACLE_ADWC_WRITE_ATTRIBUTE"; + export function getDeserializedJsonObj( + obj: OracleAdwcWriteAttributes, + isParentJsonObj?: boolean + ): object { const jsonObj = { - ...obj, + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getDeserializedJsonObj(obj) as OracleAdwcWriteAttributes)), ...{ + "bucketSchema": obj.bucketSchema + ? model.Schema.getDeserializedJsonObj(obj.bucketSchema) + : undefined, + "stagingDataAsset": obj.stagingDataAsset ? model.DataAsset.getDeserializedJsonObj(obj.stagingDataAsset) : undefined, diff --git a/lib/dataintegration/lib/model/oracle-atp-write-attribute.ts b/lib/dataintegration/lib/model/oracle-atp-write-attribute.ts index 59308cd75c..d23af8a4bc 100644 --- a/lib/dataintegration/lib/model/oracle-atp-write-attribute.ts +++ b/lib/dataintegration/lib/model/oracle-atp-write-attribute.ts @@ -30,7 +30,9 @@ export interface OracleAtpWriteAttribute extends model.AbstractWriteAttribute { | model.DataAssetFromJdbc | model.DataAssetFromOracleDetails | model.DataAssetFromAdwcDetails + | model.DataAssetFromAmazonS3 | model.DataAssetFromObjectStorageDetails + | model.DataAssetFromFusionApp | model.DataAssetFromAtpDetails | model.DataAssetFromMySQL; "stagingConnection"?: @@ -38,8 +40,10 @@ export interface OracleAtpWriteAttribute extends model.AbstractWriteAttribute { | model.ConnectionFromAdwc | model.ConnectionFromAtp | model.ConnectionFromOracle + | model.ConnectionFromAmazonS3 | model.ConnectionFromMySQL - | model.ConnectionFromJdbc; + | model.ConnectionFromJdbc + | model.ConnectionFromBICC; "modelType": string; } diff --git a/lib/dataintegration/lib/model/oracle-atp-write-attributes.ts b/lib/dataintegration/lib/model/oracle-atp-write-attributes.ts index aeed091d49..1f291692cb 100644 --- a/lib/dataintegration/lib/model/oracle-atp-write-attributes.ts +++ b/lib/dataintegration/lib/model/oracle-atp-write-attributes.ts @@ -17,11 +17,8 @@ import common = require("oci-common"); /** * Properties to configure when writing to Oracle Autonomous Data Warehouse Cloud. */ -export interface OracleAtpWriteAttributes { - /** - * The bucket name for the attribute. - */ - "bucketName"?: string; +export interface OracleAtpWriteAttributes extends model.AbstractWriteAttribute { + "bucketSchema"?: model.Schema; /** * The file name for the attribute. */ @@ -30,7 +27,9 @@ export interface OracleAtpWriteAttributes { | model.DataAssetFromJdbc | model.DataAssetFromOracleDetails | model.DataAssetFromAdwcDetails + | model.DataAssetFromAmazonS3 | model.DataAssetFromObjectStorageDetails + | model.DataAssetFromFusionApp | model.DataAssetFromAtpDetails | model.DataAssetFromMySQL; "stagingConnection"?: @@ -38,15 +37,23 @@ export interface OracleAtpWriteAttributes { | model.ConnectionFromAdwc | model.ConnectionFromAtp | model.ConnectionFromOracle + | model.ConnectionFromAmazonS3 | model.ConnectionFromMySQL - | model.ConnectionFromJdbc; + | model.ConnectionFromJdbc + | model.ConnectionFromBICC; + + "modelType": string; } export namespace OracleAtpWriteAttributes { - export function getJsonObj(obj: OracleAtpWriteAttributes): object { + export function getJsonObj(obj: OracleAtpWriteAttributes, isParentJsonObj?: boolean): object { const jsonObj = { - ...obj, + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getJsonObj(obj) as OracleAtpWriteAttributes)), ...{ + "bucketSchema": obj.bucketSchema ? model.Schema.getJsonObj(obj.bucketSchema) : undefined, + "stagingDataAsset": obj.stagingDataAsset ? model.DataAsset.getJsonObj(obj.stagingDataAsset) : undefined, @@ -58,10 +65,20 @@ export namespace OracleAtpWriteAttributes { return jsonObj; } - export function getDeserializedJsonObj(obj: OracleAtpWriteAttributes): object { + export const modelType = "ORACLE_ATP_WRITE_ATTRIBUTE"; + export function getDeserializedJsonObj( + obj: OracleAtpWriteAttributes, + isParentJsonObj?: boolean + ): object { const jsonObj = { - ...obj, + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getDeserializedJsonObj(obj) as OracleAtpWriteAttributes)), ...{ + "bucketSchema": obj.bucketSchema + ? model.Schema.getDeserializedJsonObj(obj.bucketSchema) + : undefined, + "stagingDataAsset": obj.stagingDataAsset ? model.DataAsset.getDeserializedJsonObj(obj.stagingDataAsset) : undefined, diff --git a/lib/dataintegration/lib/model/oracle-read-attributes.ts b/lib/dataintegration/lib/model/oracle-read-attributes.ts index 2f728a0bea..501ee9fa6c 100644 --- a/lib/dataintegration/lib/model/oracle-read-attributes.ts +++ b/lib/dataintegration/lib/model/oracle-read-attributes.ts @@ -17,21 +17,37 @@ import common = require("oci-common"); /** * Properties to configure reading from an Oracle Database. */ -export interface OracleReadAttributes { +export interface OracleReadAttributes extends model.AbstractReadAttribute { /** * The fetch size for reading. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "fetchSize"?: number; + + "modelType": string; } export namespace OracleReadAttributes { - export function getJsonObj(obj: OracleReadAttributes): object { - const jsonObj = { ...obj, ...{} }; + export function getJsonObj(obj: OracleReadAttributes, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractReadAttribute.getJsonObj(obj) as OracleReadAttributes)), + ...{} + }; return jsonObj; } - export function getDeserializedJsonObj(obj: OracleReadAttributes): object { - const jsonObj = { ...obj, ...{} }; + export const modelType = "ORACLE_READ_ATTRIBUTE"; + export function getDeserializedJsonObj( + obj: OracleReadAttributes, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractReadAttribute.getDeserializedJsonObj(obj) as OracleReadAttributes)), + ...{} + }; return jsonObj; } diff --git a/lib/dataintegration/lib/model/oracle-write-attributes.ts b/lib/dataintegration/lib/model/oracle-write-attributes.ts index 2d64a7358c..401492a8f9 100644 --- a/lib/dataintegration/lib/model/oracle-write-attributes.ts +++ b/lib/dataintegration/lib/model/oracle-write-attributes.ts @@ -17,7 +17,7 @@ import common = require("oci-common"); /** * Properties to configure when writing to an Oracle Database. */ -export interface OracleWriteAttributes { +export interface OracleWriteAttributes extends model.AbstractWriteAttribute { /** * The batch size for writing. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ @@ -30,16 +30,32 @@ export interface OracleWriteAttributes { * Specifies the isolation level. */ "isolationLevel"?: string; + + "modelType": string; } export namespace OracleWriteAttributes { - export function getJsonObj(obj: OracleWriteAttributes): object { - const jsonObj = { ...obj, ...{} }; + export function getJsonObj(obj: OracleWriteAttributes, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getJsonObj(obj) as OracleWriteAttributes)), + ...{} + }; return jsonObj; } - export function getDeserializedJsonObj(obj: OracleWriteAttributes): object { - const jsonObj = { ...obj, ...{} }; + export const modelType = "ORACLE_WRITE_ATTRIBUTE"; + export function getDeserializedJsonObj( + obj: OracleWriteAttributes, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractWriteAttribute.getDeserializedJsonObj(obj) as OracleWriteAttributes)), + ...{} + }; return jsonObj; } diff --git a/lib/dataintegration/lib/model/parameter.ts b/lib/dataintegration/lib/model/parameter.ts index 53408da661..513c75c7f3 100644 --- a/lib/dataintegration/lib/model/parameter.ts +++ b/lib/dataintegration/lib/model/parameter.ts @@ -18,13 +18,10 @@ import common = require("oci-common"); * Parameters are created and assigned values that can be configured for each integration task. */ export interface Parameter extends model.TypedObject { - "type"?: - | model.ConfiguredType - | model.JavaType - | model.DynamicType - | model.DerivedType - | model.DataType - | model.CompositeType; + /** + * This can either be a string value referencing the type or a BaseType object. + */ + "type"?: any; /** * The default value of the parameter. */ @@ -69,9 +66,7 @@ export namespace Parameter { export function getJsonObj(obj: Parameter, isParentJsonObj?: boolean): object { const jsonObj = { ...(isParentJsonObj ? obj : (model.TypedObject.getJsonObj(obj) as Parameter)), - ...{ - "type": obj.type ? model.BaseType.getJsonObj(obj.type) : undefined - } + ...{} }; return jsonObj; @@ -80,9 +75,7 @@ export namespace Parameter { export function getDeserializedJsonObj(obj: Parameter, isParentJsonObj?: boolean): object { const jsonObj = { ...(isParentJsonObj ? obj : (model.TypedObject.getDeserializedJsonObj(obj) as Parameter)), - ...{ - "type": obj.type ? model.BaseType.getDeserializedJsonObj(obj.type) : undefined - } + ...{} }; return jsonObj; diff --git a/lib/dataintegration/lib/model/parent-reference.ts b/lib/dataintegration/lib/model/parent-reference.ts index 98b60d553b..cbc59c97ae 100644 --- a/lib/dataintegration/lib/model/parent-reference.ts +++ b/lib/dataintegration/lib/model/parent-reference.ts @@ -22,6 +22,10 @@ export interface ParentReference { * Key of the parent object. */ "parent"?: string; + /** + * Key of the root document object. + */ + "rootDocId"?: string; } export namespace ParentReference { diff --git a/lib/dataintegration/lib/model/parquet-format-attribute.ts b/lib/dataintegration/lib/model/parquet-format-attribute.ts new file mode 100644 index 0000000000..50be7eb423 --- /dev/null +++ b/lib/dataintegration/lib/model/parquet-format-attribute.ts @@ -0,0 +1,54 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The PARQUET format attribute. + */ +export interface ParquetFormatAttribute extends model.AbstractFormatAttribute { + /** + * The compression for the file. + */ + "compression"?: string; + + "modelType": string; +} + +export namespace ParquetFormatAttribute { + export function getJsonObj(obj: ParquetFormatAttribute, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractFormatAttribute.getJsonObj(obj) as ParquetFormatAttribute)), + ...{} + }; + + return jsonObj; + } + export const modelType = "PARQUET_FORMAT"; + export function getDeserializedJsonObj( + obj: ParquetFormatAttribute, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.AbstractFormatAttribute.getDeserializedJsonObj(obj) as ParquetFormatAttribute)), + ...{} + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/patch-change-summary.ts b/lib/dataintegration/lib/model/patch-change-summary.ts index 09bc787ec8..03c13a262f 100644 --- a/lib/dataintegration/lib/model/patch-change-summary.ts +++ b/lib/dataintegration/lib/model/patch-change-summary.ts @@ -53,6 +53,9 @@ export namespace PatchChangeSummary { IntegrationTask = "INTEGRATION_TASK", DataLoaderTask = "DATA_LOADER_TASK", PipelineTask = "PIPELINE_TASK", + SqlTask = "SQL_TASK", + OciDataflowTask = "OCI_DATAFLOW_TASK", + RestTask = "REST_TASK", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. diff --git a/lib/dataintegration/lib/model/patch-object-metadata.ts b/lib/dataintegration/lib/model/patch-object-metadata.ts index dd4bf796d0..c563e3c6fd 100644 --- a/lib/dataintegration/lib/model/patch-object-metadata.ts +++ b/lib/dataintegration/lib/model/patch-object-metadata.ts @@ -53,6 +53,9 @@ export namespace PatchObjectMetadata { IntegrationTask = "INTEGRATION_TASK", DataLoaderTask = "DATA_LOADER_TASK", PipelineTask = "PIPELINE_TASK", + SqlTask = "SQL_TASK", + OciDataflowTask = "OCI_DATAFLOW_TASK", + RestTask = "REST_TASK", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. diff --git a/lib/dataintegration/lib/model/read-operation-config.ts b/lib/dataintegration/lib/model/read-operation-config.ts index 532a864d1c..ae08e06ef1 100644 --- a/lib/dataintegration/lib/model/read-operation-config.ts +++ b/lib/dataintegration/lib/model/read-operation-config.ts @@ -33,7 +33,10 @@ export interface ReadOperationConfig extends model.AbstractDataOperationConfig { "operations"?: Array; "dataFormat"?: model.DataFormat; "partitionConfig"?: model.KeyRangePartitionConfig; - "readAttribute"?: model.OracleReadAttribute; + "readAttribute"?: + | model.OracleReadAttributes + | model.BiccReadAttributes + | model.OracleReadAttribute; /** * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ diff --git a/lib/dataintegration/lib/model/schedule-summary-collection.ts b/lib/dataintegration/lib/model/schedule-summary-collection.ts new file mode 100644 index 0000000000..fb9c7c444c --- /dev/null +++ b/lib/dataintegration/lib/model/schedule-summary-collection.ts @@ -0,0 +1,56 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * A collection of schedule summaries. The collection can be lightweight details or full definitions. + */ +export interface ScheduleSummaryCollection { + /** + * An array of Schedule summaries + */ + "items": Array; +} + +export namespace ScheduleSummaryCollection { + export function getJsonObj(obj: ScheduleSummaryCollection): object { + const jsonObj = { + ...obj, + ...{ + "items": obj.items + ? obj.items.map(item => { + return model.ScheduleSummary.getJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: ScheduleSummaryCollection): object { + const jsonObj = { + ...obj, + ...{ + "items": obj.items + ? obj.items.map(item => { + return model.ScheduleSummary.getDeserializedJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/schedule-summary.ts b/lib/dataintegration/lib/model/schedule-summary.ts new file mode 100644 index 0000000000..e61ce8a82c --- /dev/null +++ b/lib/dataintegration/lib/model/schedule-summary.ts @@ -0,0 +1,106 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The schedule summary information. + */ +export interface ScheduleSummary { + /** + * Generated key that can be used in API calls to identify schedule. On scenarios where reference to the schedule is needed, a value can be passed in create. + */ + "key"?: string; + /** + * This is a version number that is used by the service to upgrade objects if needed through releases of the service. + */ + "modelVersion"?: string; + /** + * The type of the object. + */ + "modelType"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + "frequencyDetails"?: + | model.MonthlyFrequencyDetails + | model.DailyFrequencyDetails + | model.HourlyFrequencyDetails; + /** + * The timezone for the schedule. + */ + "timezone"?: string; + /** + * A flag to indicate whether daylight adjustment should be considered or not. + */ + "isDaylightAdjustmentEnabled"?: boolean; + "metadata"?: model.ObjectMetadata; +} + +export namespace ScheduleSummary { + export function getJsonObj(obj: ScheduleSummary): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "frequencyDetails": obj.frequencyDetails + ? model.AbstractFrequencyDetails.getJsonObj(obj.frequencyDetails) + : undefined, + + "metadata": obj.metadata ? model.ObjectMetadata.getJsonObj(obj.metadata) : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: ScheduleSummary): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "frequencyDetails": obj.frequencyDetails + ? model.AbstractFrequencyDetails.getDeserializedJsonObj(obj.frequencyDetails) + : undefined, + + "metadata": obj.metadata + ? model.ObjectMetadata.getDeserializedJsonObj(obj.metadata) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/script.ts b/lib/dataintegration/lib/model/script.ts new file mode 100644 index 0000000000..46f5dd343e --- /dev/null +++ b/lib/dataintegration/lib/model/script.ts @@ -0,0 +1,63 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The script object. + */ +export interface Script { + /** + * The key of the object. + */ + "key"?: string; + /** + * The type of the object. + */ + "modelType"?: string; + /** + * The model version of an object. + */ + "modelVersion"?: string; + "parentRef"?: model.ParentReference; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; +} + +export namespace Script { + export function getJsonObj(obj: Script): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: Script): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/shape-field.ts b/lib/dataintegration/lib/model/shape-field.ts index 51d7ca412f..578d81aa2d 100644 --- a/lib/dataintegration/lib/model/shape-field.ts +++ b/lib/dataintegration/lib/model/shape-field.ts @@ -21,7 +21,7 @@ export interface ShapeField extends model.TypedObject { /** * The reference to the type. */ - "type"?: string; + "type"?: any; /** * Labels are keywords or labels that you can add to data assets, dataflows etc. You can define your own labels and use them to categorize content. */ diff --git a/lib/dataintegration/lib/model/source.ts b/lib/dataintegration/lib/model/source.ts index 5c39826153..40c2d25651 100644 --- a/lib/dataintegration/lib/model/source.ts +++ b/lib/dataintegration/lib/model/source.ts @@ -18,7 +18,11 @@ import common = require("oci-common"); * The information about the source object. */ export interface Source extends model.Operator { - "entity"?: model.DataEntityFromTable | model.DataEntityFromView | model.DataEntityFromFile; + "entity"?: + | model.DataEntityFromTable + | model.DataEntityFromDataStore + | model.DataEntityFromView + | model.DataEntityFromFile; /** * Specifies the read access. */ diff --git a/lib/dataintegration/lib/model/target.ts b/lib/dataintegration/lib/model/target.ts index 6a5194145a..45f8495eed 100644 --- a/lib/dataintegration/lib/model/target.ts +++ b/lib/dataintegration/lib/model/target.ts @@ -18,7 +18,11 @@ import common = require("oci-common"); * The information about the target operator. The target operator lets you specify the data entity to store the transformed data. */ export interface Target extends model.Operator { - "entity"?: model.DataEntityFromTable | model.DataEntityFromView | model.DataEntityFromFile; + "entity"?: + | model.DataEntityFromTable + | model.DataEntityFromDataStore + | model.DataEntityFromView + | model.DataEntityFromFile; /** * Specifies the read access. */ diff --git a/lib/dataintegration/lib/model/task-from-oc-idataflow-task-details.ts b/lib/dataintegration/lib/model/task-from-oc-idataflow-task-details.ts new file mode 100644 index 0000000000..fb5323dc0b --- /dev/null +++ b/lib/dataintegration/lib/model/task-from-oc-idataflow-task-details.ts @@ -0,0 +1,60 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the OCI Dataflow task. + */ +export interface TaskFromOCIDataflowTaskDetails extends model.Task { + "dataflowApplication"?: model.DataflowApplication; + + "modelType": string; +} + +export namespace TaskFromOCIDataflowTaskDetails { + export function getJsonObj( + obj: TaskFromOCIDataflowTaskDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Task.getJsonObj(obj) as TaskFromOCIDataflowTaskDetails)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "OCI_DATAFLOW_TASK"; + export function getDeserializedJsonObj( + obj: TaskFromOCIDataflowTaskDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.Task.getDeserializedJsonObj(obj) as TaskFromOCIDataflowTaskDetails)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getDeserializedJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-from-rest-task-details.ts b/lib/dataintegration/lib/model/task-from-rest-task-details.ts new file mode 100644 index 0000000000..8c43587731 --- /dev/null +++ b/lib/dataintegration/lib/model/task-from-rest-task-details.ts @@ -0,0 +1,125 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the Generic REST task. + */ +export interface TaskFromRestTaskDetails extends model.Task { + "authDetails"?: model.AuthDetails; + "endpoint"?: model.Expression; + /** + * The REST method to use. + */ + "methodType"?: TaskFromRestTaskDetails.MethodType; + /** + * The headers for the REST call. + */ + "headers"?: any; + /** + * JSON data for payload body. + */ + "jsonData"?: string; + /** + * The invocation type to be used for Generic REST invocation. + */ + "apiCallMode"?: TaskFromRestTaskDetails.ApiCallMode; + "cancelEndpoint"?: model.Expression; + /** + * The REST method to use for canceling the original request. + */ + "cancelMethodType"?: TaskFromRestTaskDetails.CancelMethodType; + + "modelType": string; +} + +export namespace TaskFromRestTaskDetails { + export enum MethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum ApiCallMode { + Synchronous = "SYNCHRONOUS", + AsyncOciWorkrequest = "ASYNC_OCI_WORKREQUEST", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum CancelMethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: TaskFromRestTaskDetails, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Task.getJsonObj(obj) as TaskFromRestTaskDetails)), + ...{ + "authDetails": obj.authDetails ? model.AuthDetails.getJsonObj(obj.authDetails) : undefined, + "endpoint": obj.endpoint ? model.Expression.getJsonObj(obj.endpoint) : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "REST_TASK"; + export function getDeserializedJsonObj( + obj: TaskFromRestTaskDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.Task.getDeserializedJsonObj(obj) as TaskFromRestTaskDetails)), + ...{ + "authDetails": obj.authDetails + ? model.AuthDetails.getDeserializedJsonObj(obj.authDetails) + : undefined, + "endpoint": obj.endpoint + ? model.Expression.getDeserializedJsonObj(obj.endpoint) + : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getDeserializedJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-from-sq-ltask-details.ts b/lib/dataintegration/lib/model/task-from-sq-ltask-details.ts new file mode 100644 index 0000000000..8d04f0857e --- /dev/null +++ b/lib/dataintegration/lib/model/task-from-sq-ltask-details.ts @@ -0,0 +1,71 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the SQL task. + */ +export interface TaskFromSQLTaskDetails extends model.Task { + "script"?: model.Script; + /** + * Indicates whether the task is invoking a custom SQL script or stored procedure. + */ + "sqlScriptType"?: TaskFromSQLTaskDetails.SqlScriptType; + /** + * Describes the shape of the execution result + */ + "operation"?: any; + + "modelType": string; +} + +export namespace TaskFromSQLTaskDetails { + export enum SqlScriptType { + StoredProcedure = "STORED_PROCEDURE", + SqlCode = "SQL_CODE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: TaskFromSQLTaskDetails, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.Task.getJsonObj(obj) as TaskFromSQLTaskDetails)), + ...{ + "script": obj.script ? model.Script.getJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } + export const modelType = "SQL_TASK"; + export function getDeserializedJsonObj( + obj: TaskFromSQLTaskDetails, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.Task.getDeserializedJsonObj(obj) as TaskFromSQLTaskDetails)), + ...{ + "script": obj.script ? model.Script.getDeserializedJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-operator.ts b/lib/dataintegration/lib/model/task-operator.ts index 27f70f006e..62e7478af5 100644 --- a/lib/dataintegration/lib/model/task-operator.ts +++ b/lib/dataintegration/lib/model/task-operator.ts @@ -45,6 +45,9 @@ export interface TaskOperator extends model.Operator { "task"?: | model.TaskFromPipelineTaskDetails | model.TaskFromIntegrationTaskDetails + | model.TaskFromSQLTaskDetails + | model.TaskFromRestTaskDetails + | model.TaskFromOCIDataflowTaskDetails | model.TaskFromDataLoaderTaskDetails; /** * The merge condition. The conditions are @@ -88,6 +91,9 @@ export namespace TaskOperator { PipelineTask = "PIPELINE_TASK", IntegrationTask = "INTEGRATION_TASK", DataLoaderTask = "DATA_LOADER_TASK", + SqlTask = "SQL_TASK", + OciDataflowTask = "OCI_DATAFLOW_TASK", + RestTask = "REST_TASK", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. diff --git a/lib/dataintegration/lib/model/task-run-details.ts b/lib/dataintegration/lib/model/task-run-details.ts index c812c5ebee..abe4a8742d 100644 --- a/lib/dataintegration/lib/model/task-run-details.ts +++ b/lib/dataintegration/lib/model/task-run-details.ts @@ -102,6 +102,9 @@ export namespace TaskRunDetails { IntegrationTask = "INTEGRATION_TASK", DataLoaderTask = "DATA_LOADER_TASK", PipelineTask = "PIPELINE_TASK", + SqlTask = "SQL_TASK", + OciDataflowTask = "OCI_DATAFLOW_TASK", + RestTask = "REST_TASK", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. diff --git a/lib/dataintegration/lib/model/task-run-summary.ts b/lib/dataintegration/lib/model/task-run-summary.ts index d03820eaa5..8730ae0355 100644 --- a/lib/dataintegration/lib/model/task-run-summary.ts +++ b/lib/dataintegration/lib/model/task-run-summary.ts @@ -102,6 +102,9 @@ export namespace TaskRunSummary { IntegrationTask = "INTEGRATION_TASK", DataLoaderTask = "DATA_LOADER_TASK", PipelineTask = "PIPELINE_TASK", + SqlTask = "SQL_TASK", + OciDataflowTask = "OCI_DATAFLOW_TASK", + RestTask = "REST_TASK", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. diff --git a/lib/dataintegration/lib/model/task-run.ts b/lib/dataintegration/lib/model/task-run.ts index 61ebf46f99..23e05969d1 100644 --- a/lib/dataintegration/lib/model/task-run.ts +++ b/lib/dataintegration/lib/model/task-run.ts @@ -84,6 +84,10 @@ export interface TaskRun { * Task Key of the task for which TaskRun is being created. If not specified, the AggregatorKey in RegistryMetadata will be assumed to be the TaskKey */ "taskKey"?: string; + /** + * The external identifier for the task run. + */ + "externalId"?: string; /** * Holds the particular attempt number. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ @@ -93,6 +97,10 @@ export interface TaskRun { * A map of metrics for the run. */ "metrics"?: { [key: string]: number }; + /** + * A map of the outputs of the run. + */ + "outputs"?: { [key: string]: model.ParameterValue }; /** * An array of execution errors from the run. */ @@ -101,6 +109,10 @@ export interface TaskRun { * An array of termination errors from the run. */ "terminationErrors"?: Array; + /** + * The autorization mode for when the task was executed. + */ + "authMode"?: TaskRun.AuthMode; /** * The OPC request ID of execution of the task run. */ @@ -152,10 +164,24 @@ export namespace TaskRun { UnknownValue = "UNKNOWN_VALUE" } + export enum AuthMode { + Obo = "OBO", + ResourcePrincipal = "RESOURCE_PRINCIPAL", + UserCertificate = "USER_CERTIFICATE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + export enum TaskType { IntegrationTask = "INTEGRATION_TASK", DataLoaderTask = "DATA_LOADER_TASK", PipelineTask = "PIPELINE_TASK", + SqlTask = "SQL_TASK", + OciDataflowTask = "OCI_DATAFLOW_TASK", + RestTask = "REST_TASK", /** * This value is used if a service returns a value for this enum that is not recognized by this * version of the SDK. @@ -177,6 +203,10 @@ export namespace TaskRun { ? model.TaskSchedule.getJsonObj(obj.taskSchedule) : undefined, + "outputs": obj.outputs + ? common.mapContainer(obj.outputs, model.ParameterValue.getJsonObj) + : undefined, + "metadata": obj.metadata ? model.ObjectMetadata.getJsonObj(obj.metadata) : undefined } }; @@ -199,6 +229,10 @@ export namespace TaskRun { ? model.TaskSchedule.getDeserializedJsonObj(obj.taskSchedule) : undefined, + "outputs": obj.outputs + ? common.mapContainer(obj.outputs, model.ParameterValue.getDeserializedJsonObj) + : undefined, + "metadata": obj.metadata ? model.ObjectMetadata.getDeserializedJsonObj(obj.metadata) : undefined diff --git a/lib/dataintegration/lib/model/task-schedule-summary-collection.ts b/lib/dataintegration/lib/model/task-schedule-summary-collection.ts new file mode 100644 index 0000000000..1c3a8fe201 --- /dev/null +++ b/lib/dataintegration/lib/model/task-schedule-summary-collection.ts @@ -0,0 +1,56 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * A collection of TaskSchedule summaries. The collection can be lightweight details or full definitions. + */ +export interface TaskScheduleSummaryCollection { + /** + * The array of TaskSchedule summaries + */ + "items": Array; +} + +export namespace TaskScheduleSummaryCollection { + export function getJsonObj(obj: TaskScheduleSummaryCollection): object { + const jsonObj = { + ...obj, + ...{ + "items": obj.items + ? obj.items.map(item => { + return model.TaskScheduleSummary.getJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: TaskScheduleSummaryCollection): object { + const jsonObj = { + ...obj, + ...{ + "items": obj.items + ? obj.items.map(item => { + return model.TaskScheduleSummary.getDeserializedJsonObj(item); + }) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-schedule-summary.ts b/lib/dataintegration/lib/model/task-schedule-summary.ts new file mode 100644 index 0000000000..ef4d62cb46 --- /dev/null +++ b/lib/dataintegration/lib/model/task-schedule-summary.ts @@ -0,0 +1,190 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The tsk schedule summary information. + */ +export interface TaskScheduleSummary { + /** + * Generated key that can be used in API calls to identify taskSchedule. On scenarios where reference to the taskSchedule is needed, a value can be passed in create. + */ + "key"?: string; + /** + * This is a version number that is used by the service to upgrade objects if needed through releases of the service. + */ + "modelVersion"?: string; + /** + * The type of the object. + */ + "modelType"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion"?: number; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + "scheduleRef"?: model.Schedule; + "configProviderDelegate"?: model.ConfigProvider; + /** + * Whether the task schedule is enabled. + */ + "isEnabled"?: boolean; + /** + * The number of retries. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "numberOfRetries"?: number; + /** + * The retry delay, the unit for measurement is in the property retry delay unit. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "retryDelay"?: number; + /** + * The unit for the retry delay. + */ + "retryDelayUnit"?: TaskScheduleSummary.RetryDelayUnit; + /** + * The start time in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "startTimeMillis"?: number; + /** + * The end time in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "endTimeMillis"?: number; + /** + * Whether the same task can be executed concurrently. + */ + "isConcurrentAllowed"?: boolean; + /** + * Whether the backfill is enabled. + */ + "isBackfillEnabled"?: boolean; + /** + * The authorization mode for the task. + */ + "authMode"?: TaskScheduleSummary.AuthMode; + /** + * The expected duration of the task execution. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "expectedDuration"?: number; + /** + * The expected duration unit of the task execution. + */ + "expectedDurationUnit"?: TaskScheduleSummary.ExpectedDurationUnit; + /** + * The time for next run in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "nextRunTimeMillis"?: number; + "lastRunDetails"?: model.LastRunDetails; + "metadata"?: model.ObjectMetadata; +} + +export namespace TaskScheduleSummary { + export enum RetryDelayUnit { + Seconds = "SECONDS", + Minutes = "MINUTES", + Hours = "HOURS", + Days = "DAYS", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum AuthMode { + Obo = "OBO", + ResourcePrincipal = "RESOURCE_PRINCIPAL", + UserCertificate = "USER_CERTIFICATE", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export enum ExpectedDurationUnit { + Seconds = "SECONDS", + Minutes = "MINUTES", + Hours = "HOURS", + Days = "DAYS", + /** + * This value is used if a service returns a value for this enum that is not recognized by this + * version of the SDK. + */ + UnknownValue = "UNKNOWN_VALUE" + } + + export function getJsonObj(obj: TaskScheduleSummary): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "scheduleRef": obj.scheduleRef ? model.Schedule.getJsonObj(obj.scheduleRef) : undefined, + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getJsonObj(obj.configProviderDelegate) + : undefined, + + "lastRunDetails": obj.lastRunDetails + ? model.LastRunDetails.getJsonObj(obj.lastRunDetails) + : undefined, + "metadata": obj.metadata ? model.ObjectMetadata.getJsonObj(obj.metadata) : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: TaskScheduleSummary): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "scheduleRef": obj.scheduleRef + ? model.Schedule.getDeserializedJsonObj(obj.scheduleRef) + : undefined, + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getDeserializedJsonObj(obj.configProviderDelegate) + : undefined, + + "lastRunDetails": obj.lastRunDetails + ? model.LastRunDetails.getDeserializedJsonObj(obj.lastRunDetails) + : undefined, + "metadata": obj.metadata + ? model.ObjectMetadata.getDeserializedJsonObj(obj.metadata) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-summary-from-oc-idataflow-task.ts b/lib/dataintegration/lib/model/task-summary-from-oc-idataflow-task.ts new file mode 100644 index 0000000000..c82be7c318 --- /dev/null +++ b/lib/dataintegration/lib/model/task-summary-from-oc-idataflow-task.ts @@ -0,0 +1,62 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the OCI Dataflow task. + */ +export interface TaskSummaryFromOCIDataflowTask extends model.TaskSummary { + "dataflowApplication"?: model.DataflowApplication; + + "modelType": string; +} + +export namespace TaskSummaryFromOCIDataflowTask { + export function getJsonObj( + obj: TaskSummaryFromOCIDataflowTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.TaskSummary.getJsonObj(obj) as TaskSummaryFromOCIDataflowTask)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "OCI_DATAFLOW_TASK"; + export function getDeserializedJsonObj( + obj: TaskSummaryFromOCIDataflowTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.TaskSummary.getDeserializedJsonObj(obj) as TaskSummaryFromOCIDataflowTask)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getDeserializedJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-summary-from-rest-task.ts b/lib/dataintegration/lib/model/task-summary-from-rest-task.ts new file mode 100644 index 0000000000..12f98fa0ac --- /dev/null +++ b/lib/dataintegration/lib/model/task-summary-from-rest-task.ts @@ -0,0 +1,110 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the Generic REST task. + */ +export interface TaskSummaryFromRestTask extends model.TaskSummary { + "authDetails"?: model.AuthDetails; + "endpoint"?: model.Expression; + /** + * The REST method to use. + */ + "methodType"?: TaskSummaryFromRestTask.MethodType; + /** + * The headers for the REST call. + */ + "headers"?: any; + /** + * JSON data for payload body. + */ + "jsonData"?: string; + /** + * The invocation type to be used for Generic REST invocation. + */ + "apiCallMode"?: TaskSummaryFromRestTask.ApiCallMode; + "cancelEndpoint"?: model.Expression; + /** + * The REST method to use for canceling the original request. + */ + "cancelMethodType"?: TaskSummaryFromRestTask.CancelMethodType; + + "modelType": string; +} + +export namespace TaskSummaryFromRestTask { + export enum MethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT" + } + + export enum ApiCallMode { + Synchronous = "SYNCHRONOUS", + AsyncOciWorkrequest = "ASYNC_OCI_WORKREQUEST" + } + + export enum CancelMethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT" + } + + export function getJsonObj(obj: TaskSummaryFromRestTask, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.TaskSummary.getJsonObj(obj) as TaskSummaryFromRestTask)), + ...{ + "authDetails": obj.authDetails ? model.AuthDetails.getJsonObj(obj.authDetails) : undefined, + "endpoint": obj.endpoint ? model.Expression.getJsonObj(obj.endpoint) : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "REST_TASK"; + export function getDeserializedJsonObj( + obj: TaskSummaryFromRestTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.TaskSummary.getDeserializedJsonObj(obj) as TaskSummaryFromRestTask)), + ...{ + "authDetails": obj.authDetails + ? model.AuthDetails.getDeserializedJsonObj(obj.authDetails) + : undefined, + "endpoint": obj.endpoint + ? model.Expression.getDeserializedJsonObj(obj.endpoint) + : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getDeserializedJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-summary-from-sq-ltask.ts b/lib/dataintegration/lib/model/task-summary-from-sq-ltask.ts new file mode 100644 index 0000000000..0931193d0c --- /dev/null +++ b/lib/dataintegration/lib/model/task-summary-from-sq-ltask.ts @@ -0,0 +1,66 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the SQL task. + */ +export interface TaskSummaryFromSQLTask extends model.TaskSummary { + "script"?: model.Script; + /** + * Indicates whether the task is invoking a custom SQL script or stored procedure. + */ + "sqlScriptType"?: TaskSummaryFromSQLTask.SqlScriptType; + /** + * Describes the shape of the execution result + */ + "operation"?: any; + + "modelType": string; +} + +export namespace TaskSummaryFromSQLTask { + export enum SqlScriptType { + StoredProcedure = "STORED_PROCEDURE", + SqlCode = "SQL_CODE" + } + + export function getJsonObj(obj: TaskSummaryFromSQLTask, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj ? obj : (model.TaskSummary.getJsonObj(obj) as TaskSummaryFromSQLTask)), + ...{ + "script": obj.script ? model.Script.getJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } + export const modelType = "SQL_TASK"; + export function getDeserializedJsonObj( + obj: TaskSummaryFromSQLTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.TaskSummary.getDeserializedJsonObj(obj) as TaskSummaryFromSQLTask)), + ...{ + "script": obj.script ? model.Script.getDeserializedJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/task-summary.ts b/lib/dataintegration/lib/model/task-summary.ts index 000406d236..ab50a1d8c0 100644 --- a/lib/dataintegration/lib/model/task-summary.ts +++ b/lib/dataintegration/lib/model/task-summary.ts @@ -109,6 +109,21 @@ export namespace TaskSummary { (jsonObj), true ); + case "SQL_TASK": + return model.TaskSummaryFromSQLTask.getJsonObj( + (jsonObj), + true + ); + case "OCI_DATAFLOW_TASK": + return model.TaskSummaryFromOCIDataflowTask.getJsonObj( + (jsonObj), + true + ); + case "REST_TASK": + return model.TaskSummaryFromRestTask.getJsonObj( + (jsonObj), + true + ); case "PIPELINE_TASK": return model.TaskSummaryFromPipelineTask.getJsonObj( (jsonObj), @@ -167,6 +182,21 @@ export namespace TaskSummary { (jsonObj), true ); + case "SQL_TASK": + return model.TaskSummaryFromSQLTask.getDeserializedJsonObj( + (jsonObj), + true + ); + case "OCI_DATAFLOW_TASK": + return model.TaskSummaryFromOCIDataflowTask.getDeserializedJsonObj( + (jsonObj), + true + ); + case "REST_TASK": + return model.TaskSummaryFromRestTask.getDeserializedJsonObj( + (jsonObj), + true + ); case "PIPELINE_TASK": return model.TaskSummaryFromPipelineTask.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/task.ts b/lib/dataintegration/lib/model/task.ts index 80eacd4e58..2aea0e6643 100644 --- a/lib/dataintegration/lib/model/task.ts +++ b/lib/dataintegration/lib/model/task.ts @@ -66,6 +66,7 @@ export interface Task { * A key map. If provided, key is replaced with generated key. This structure provides mapping between user provided key and generated key. */ "keyMap"?: { [key: string]: string }; + "registryMetadata"?: model.RegistryMetadata; "modelType": string; } @@ -98,7 +99,11 @@ export namespace Task { "configProviderDelegate": obj.configProviderDelegate ? model.ConfigProvider.getJsonObj(obj.configProviderDelegate) : undefined, - "metadata": obj.metadata ? model.ObjectMetadata.getJsonObj(obj.metadata) : undefined + "metadata": obj.metadata ? model.ObjectMetadata.getJsonObj(obj.metadata) : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getJsonObj(obj.registryMetadata) + : undefined } }; @@ -114,6 +119,21 @@ export namespace Task { (jsonObj), true ); + case "SQL_TASK": + return model.TaskFromSQLTaskDetails.getJsonObj( + (jsonObj), + true + ); + case "REST_TASK": + return model.TaskFromRestTaskDetails.getJsonObj( + (jsonObj), + true + ); + case "OCI_DATAFLOW_TASK": + return model.TaskFromOCIDataflowTaskDetails.getJsonObj( + (jsonObj), + true + ); case "DATA_LOADER_TASK": return model.TaskFromDataLoaderTaskDetails.getJsonObj( (jsonObj), @@ -156,6 +176,10 @@ export namespace Task { : undefined, "metadata": obj.metadata ? model.ObjectMetadata.getDeserializedJsonObj(obj.metadata) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getDeserializedJsonObj(obj.registryMetadata) : undefined } }; @@ -172,6 +196,21 @@ export namespace Task { (jsonObj), true ); + case "SQL_TASK": + return model.TaskFromSQLTaskDetails.getDeserializedJsonObj( + (jsonObj), + true + ); + case "REST_TASK": + return model.TaskFromRestTaskDetails.getDeserializedJsonObj( + (jsonObj), + true + ); + case "OCI_DATAFLOW_TASK": + return model.TaskFromOCIDataflowTaskDetails.getDeserializedJsonObj( + (jsonObj), + true + ); case "DATA_LOADER_TASK": return model.TaskFromDataLoaderTaskDetails.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/update-connection-details.ts b/lib/dataintegration/lib/model/update-connection-details.ts index b5b6921b0b..b89ff03605 100644 --- a/lib/dataintegration/lib/model/update-connection-details.ts +++ b/lib/dataintegration/lib/model/update-connection-details.ts @@ -86,6 +86,16 @@ export namespace UpdateConnectionDetails { (jsonObj), true ); + case "BICC_CONNECTION": + return model.UpdateConnectionFromBICC.getJsonObj( + (jsonObj), + true + ); + case "AMAZON_S3_CONNECTION": + return model.UpdateConnectionFromAmazonS3.getJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_CONNECTION": return model.UpdateConnectionFromAtp.getJsonObj( (jsonObj), @@ -143,6 +153,16 @@ export namespace UpdateConnectionDetails { (jsonObj), true ); + case "BICC_CONNECTION": + return model.UpdateConnectionFromBICC.getDeserializedJsonObj( + (jsonObj), + true + ); + case "AMAZON_S3_CONNECTION": + return model.UpdateConnectionFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); case "ORACLE_ATP_CONNECTION": return model.UpdateConnectionFromAtp.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/update-connection-from-amazon-s3.ts b/lib/dataintegration/lib/model/update-connection-from-amazon-s3.ts new file mode 100644 index 0000000000..9801920f5a --- /dev/null +++ b/lib/dataintegration/lib/model/update-connection-from-amazon-s3.ts @@ -0,0 +1,64 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The details to update an Amazon s3 connection. + */ +export interface UpdateConnectionFromAmazonS3 extends model.UpdateConnectionDetails { + "accessKey"?: model.SensitiveAttribute; + "secretKey"?: model.SensitiveAttribute; + + "modelType": string; +} + +export namespace UpdateConnectionFromAmazonS3 { + export function getJsonObj(obj: UpdateConnectionFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateConnectionDetails.getJsonObj(obj) as UpdateConnectionFromAmazonS3)), + ...{ + "accessKey": obj.accessKey ? model.SensitiveAttribute.getJsonObj(obj.accessKey) : undefined, + "secretKey": obj.secretKey ? model.SensitiveAttribute.getJsonObj(obj.secretKey) : undefined + } + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_CONNECTION"; + export function getDeserializedJsonObj( + obj: UpdateConnectionFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateConnectionDetails.getDeserializedJsonObj( + obj + ) as UpdateConnectionFromAmazonS3)), + ...{ + "accessKey": obj.accessKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.accessKey) + : undefined, + "secretKey": obj.secretKey + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.secretKey) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-connection-from-bi-cc.ts b/lib/dataintegration/lib/model/update-connection-from-bi-cc.ts new file mode 100644 index 0000000000..0d6b389281 --- /dev/null +++ b/lib/dataintegration/lib/model/update-connection-from-bi-cc.ts @@ -0,0 +1,70 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The details to update an Oracle Database data asset connection. + */ +export interface UpdateConnectionFromBICC extends model.UpdateConnectionDetails { + /** + * The user name for the connection. + */ + "username"?: string; + "passwordSecret"?: model.SensitiveAttribute; + "defaultExternalStorage"?: model.ExternalStorage; + + "modelType": string; +} + +export namespace UpdateConnectionFromBICC { + export function getJsonObj(obj: UpdateConnectionFromBICC, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateConnectionDetails.getJsonObj(obj) as UpdateConnectionFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "BICC_CONNECTION"; + export function getDeserializedJsonObj( + obj: UpdateConnectionFromBICC, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateConnectionDetails.getDeserializedJsonObj(obj) as UpdateConnectionFromBICC)), + ...{ + "passwordSecret": obj.passwordSecret + ? model.SensitiveAttribute.getDeserializedJsonObj(obj.passwordSecret) + : undefined, + "defaultExternalStorage": obj.defaultExternalStorage + ? model.ExternalStorage.getDeserializedJsonObj(obj.defaultExternalStorage) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-data-asset-details.ts b/lib/dataintegration/lib/model/update-data-asset-details.ts index 545da66825..0a5143bbe9 100644 --- a/lib/dataintegration/lib/model/update-data-asset-details.ts +++ b/lib/dataintegration/lib/model/update-data-asset-details.ts @@ -92,6 +92,16 @@ export namespace UpdateDataAssetDetails { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.UpdateDataAssetFromAmazonS3.getJsonObj( + (jsonObj), + true + ); + case "FUSION_APP_DATA_ASSET": + return model.UpdateDataAssetFromFusionApp.getJsonObj( + (jsonObj), + true + ); case "MYSQL_DATA_ASSET": return model.UpdateDataAssetFromMySQL.getJsonObj( (jsonObj), @@ -140,6 +150,16 @@ export namespace UpdateDataAssetDetails { (jsonObj), true ); + case "AMAZON_S3_DATA_ASSET": + return model.UpdateDataAssetFromAmazonS3.getDeserializedJsonObj( + (jsonObj), + true + ); + case "FUSION_APP_DATA_ASSET": + return model.UpdateDataAssetFromFusionApp.getDeserializedJsonObj( + (jsonObj), + true + ); case "MYSQL_DATA_ASSET": return model.UpdateDataAssetFromMySQL.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/update-data-asset-from-adwc.ts b/lib/dataintegration/lib/model/update-data-asset-from-adwc.ts index 1490b00bcf..c238d54624 100644 --- a/lib/dataintegration/lib/model/update-data-asset-from-adwc.ts +++ b/lib/dataintegration/lib/model/update-data-asset-from-adwc.ts @@ -32,6 +32,22 @@ export interface UpdateDataAssetFromAdwc extends model.UpdateDataAssetDetails { "credentialFileContent"?: string; "walletSecret"?: model.SensitiveAttribute; "walletPasswordSecret"?: model.SensitiveAttribute; + /** + * The Autonomous Data Warehouse instance region Id. + */ + "regionId"?: string; + /** + * The Autonomous Data Warehouse instance tenancy Id. + */ + "tenancyId"?: string; + /** + * The Autonomous Data Warehouse instance compartment Id. + */ + "compartmentId"?: string; + /** + * Tha Autonomous Database Id + */ + "autonomousDbId"?: string; "defaultConnection"?: model.UpdateConnectionFromAdwc; "modelType": string; @@ -50,6 +66,7 @@ export namespace UpdateDataAssetFromAdwc { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.UpdateConnectionFromAdwc.getJsonObj(obj.defaultConnection) : undefined @@ -74,6 +91,7 @@ export namespace UpdateDataAssetFromAdwc { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getDeserializedJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.UpdateConnectionFromAdwc.getDeserializedJsonObj(obj.defaultConnection) : undefined diff --git a/lib/dataintegration/lib/model/update-data-asset-from-amazon-s3.ts b/lib/dataintegration/lib/model/update-data-asset-from-amazon-s3.ts new file mode 100644 index 0000000000..0b3b855f7a --- /dev/null +++ b/lib/dataintegration/lib/model/update-data-asset-from-amazon-s3.ts @@ -0,0 +1,56 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details for the Amazon s3 data asset type. + */ +export interface UpdateDataAssetFromAmazonS3 extends model.UpdateDataAssetDetails { + /** + * The region for Amazon s3 + */ + "region"?: string; + + "modelType": string; +} + +export namespace UpdateDataAssetFromAmazonS3 { + export function getJsonObj(obj: UpdateDataAssetFromAmazonS3, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateDataAssetDetails.getJsonObj(obj) as UpdateDataAssetFromAmazonS3)), + ...{} + }; + + return jsonObj; + } + export const modelType = "AMAZON_S3_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: UpdateDataAssetFromAmazonS3, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateDataAssetDetails.getDeserializedJsonObj( + obj + ) as UpdateDataAssetFromAmazonS3)), + ...{} + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-data-asset-from-atp.ts b/lib/dataintegration/lib/model/update-data-asset-from-atp.ts index 3b2e658fe4..738b0adc02 100644 --- a/lib/dataintegration/lib/model/update-data-asset-from-atp.ts +++ b/lib/dataintegration/lib/model/update-data-asset-from-atp.ts @@ -32,6 +32,22 @@ export interface UpdateDataAssetFromAtp extends model.UpdateDataAssetDetails { "credentialFileContent"?: string; "walletSecret"?: model.SensitiveAttribute; "walletPasswordSecret"?: model.SensitiveAttribute; + /** + * The Autonomous Data Warehouse instance region Id. + */ + "regionId"?: string; + /** + * The Autonomous Data Warehouse instance tenancy Id. + */ + "tenancyId"?: string; + /** + * The Autonomous Data Warehouse instance compartment Id. + */ + "compartmentId"?: string; + /** + * Tha Autonomous Database Id + */ + "autonomousDbId"?: string; "defaultConnection"?: model.UpdateConnectionFromAtp; "modelType": string; @@ -50,6 +66,7 @@ export namespace UpdateDataAssetFromAtp { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.UpdateConnectionFromAtp.getJsonObj(obj.defaultConnection) : undefined @@ -74,6 +91,7 @@ export namespace UpdateDataAssetFromAtp { "walletPasswordSecret": obj.walletPasswordSecret ? model.SensitiveAttribute.getDeserializedJsonObj(obj.walletPasswordSecret) : undefined, + "defaultConnection": obj.defaultConnection ? model.UpdateConnectionFromAtp.getDeserializedJsonObj(obj.defaultConnection) : undefined diff --git a/lib/dataintegration/lib/model/update-data-asset-from-fusion-app.ts b/lib/dataintegration/lib/model/update-data-asset-from-fusion-app.ts new file mode 100644 index 0000000000..08c6e7e704 --- /dev/null +++ b/lib/dataintegration/lib/model/update-data-asset-from-fusion-app.ts @@ -0,0 +1,56 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * Details for the Autonomous Transaction Processing data asset type. + */ +export interface UpdateDataAssetFromFusionApp extends model.UpdateDataAssetDetails { + /** + * The service url of the BI Server. + */ + "serviceUrl"?: string; + + "modelType": string; +} + +export namespace UpdateDataAssetFromFusionApp { + export function getJsonObj(obj: UpdateDataAssetFromFusionApp, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateDataAssetDetails.getJsonObj(obj) as UpdateDataAssetFromFusionApp)), + ...{} + }; + + return jsonObj; + } + export const modelType = "FUSION_APP_DATA_ASSET"; + export function getDeserializedJsonObj( + obj: UpdateDataAssetFromFusionApp, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateDataAssetDetails.getDeserializedJsonObj( + obj + ) as UpdateDataAssetFromFusionApp)), + ...{} + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-schedule-details.ts b/lib/dataintegration/lib/model/update-schedule-details.ts new file mode 100644 index 0000000000..bd219880f5 --- /dev/null +++ b/lib/dataintegration/lib/model/update-schedule-details.ts @@ -0,0 +1,108 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The details for updating a schedule. + */ +export interface UpdateScheduleDetails { + /** + * Generated key that can be used in API calls to identify schedule. On scenarios where reference to the schedule is needed, a value can be passed in create. + */ + "key": string; + /** + * This is a version number that is used by the service to upgrade objects if needed through releases of the service. + */ + "modelVersion"?: string; + /** + * The type of the object. + */ + "modelType"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion": number; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + "frequencyDetails"?: + | model.MonthlyFrequencyDetails + | model.DailyFrequencyDetails + | model.HourlyFrequencyDetails; + /** + * The timezone for the schedule. + */ + "timezone"?: string; + /** + * A flag to indicate whether daylight adjustment should be considered or not. + */ + "isDaylightAdjustmentEnabled"?: boolean; + "registryMetadata"?: model.RegistryMetadata; +} + +export namespace UpdateScheduleDetails { + export function getJsonObj(obj: UpdateScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "frequencyDetails": obj.frequencyDetails + ? model.AbstractFrequencyDetails.getJsonObj(obj.frequencyDetails) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: UpdateScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "frequencyDetails": obj.frequencyDetails + ? model.AbstractFrequencyDetails.getDeserializedJsonObj(obj.frequencyDetails) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getDeserializedJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-task-details.ts b/lib/dataintegration/lib/model/update-task-details.ts index 3bf1b39cfd..ebcde1d577 100644 --- a/lib/dataintegration/lib/model/update-task-details.ts +++ b/lib/dataintegration/lib/model/update-task-details.ts @@ -102,11 +102,26 @@ export namespace UpdateTaskDetails { if ("modelType" in obj && obj.modelType) { switch (obj.modelType) { + case "REST_TASK": + return model.UpdateTaskFromRestTask.getJsonObj( + (jsonObj), + true + ); case "PIPELINE_TASK": return model.UpdateTaskFromPipelineTask.getJsonObj( (jsonObj), true ); + case "OCI_DATAFLOW_TASK": + return model.UpdateTaskFromOCIDataflowTask.getJsonObj( + (jsonObj), + true + ); + case "SQL_TASK": + return model.UpdateTaskFromSQLTask.getJsonObj( + (jsonObj), + true + ); case "DATA_LOADER_TASK": return model.UpdateTaskFromDataLoaderTask.getJsonObj( (jsonObj), @@ -160,11 +175,26 @@ export namespace UpdateTaskDetails { if ("modelType" in obj && obj.modelType) { switch (obj.modelType) { + case "REST_TASK": + return model.UpdateTaskFromRestTask.getDeserializedJsonObj( + (jsonObj), + true + ); case "PIPELINE_TASK": return model.UpdateTaskFromPipelineTask.getDeserializedJsonObj( (jsonObj), true ); + case "OCI_DATAFLOW_TASK": + return model.UpdateTaskFromOCIDataflowTask.getDeserializedJsonObj( + (jsonObj), + true + ); + case "SQL_TASK": + return model.UpdateTaskFromSQLTask.getDeserializedJsonObj( + (jsonObj), + true + ); case "DATA_LOADER_TASK": return model.UpdateTaskFromDataLoaderTask.getDeserializedJsonObj( (jsonObj), diff --git a/lib/dataintegration/lib/model/update-task-from-oc-idataflow-task.ts b/lib/dataintegration/lib/model/update-task-from-oc-idataflow-task.ts new file mode 100644 index 0000000000..d9dbd48098 --- /dev/null +++ b/lib/dataintegration/lib/model/update-task-from-oc-idataflow-task.ts @@ -0,0 +1,62 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the OCI Dataflow task. + */ +export interface UpdateTaskFromOCIDataflowTask extends model.UpdateTaskDetails { + "dataflowApplication"?: model.DataflowApplication; + + "modelType": string; +} + +export namespace UpdateTaskFromOCIDataflowTask { + export function getJsonObj( + obj: UpdateTaskFromOCIDataflowTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateTaskDetails.getJsonObj(obj) as UpdateTaskFromOCIDataflowTask)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "OCI_DATAFLOW_TASK"; + export function getDeserializedJsonObj( + obj: UpdateTaskFromOCIDataflowTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateTaskDetails.getDeserializedJsonObj(obj) as UpdateTaskFromOCIDataflowTask)), + ...{ + "dataflowApplication": obj.dataflowApplication + ? model.DataflowApplication.getDeserializedJsonObj(obj.dataflowApplication) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-task-from-rest-task.ts b/lib/dataintegration/lib/model/update-task-from-rest-task.ts new file mode 100644 index 0000000000..367dd3b57b --- /dev/null +++ b/lib/dataintegration/lib/model/update-task-from-rest-task.ts @@ -0,0 +1,116 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the Generic REST task. + */ +export interface UpdateTaskFromRestTask extends model.UpdateTaskDetails { + "authDetails"?: model.AuthDetails; + "endpoint"?: model.Expression; + /** + * The REST method to use. + */ + "methodType"?: UpdateTaskFromRestTask.MethodType; + /** + * The headers for the REST call. + */ + "headers"?: any; + /** + * Header value. + */ + "additionalProperties"?: string; + /** + * JSON data for payload body. + */ + "jsonData"?: string; + /** + * The invocation type to be used for Generic REST invocation. + */ + "apiCallMode"?: UpdateTaskFromRestTask.ApiCallMode; + "cancelEndpoint"?: model.Expression; + /** + * The REST method to use for canceling the original request. + */ + "cancelMethodType"?: UpdateTaskFromRestTask.CancelMethodType; + + "modelType": string; +} + +export namespace UpdateTaskFromRestTask { + export enum MethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT" + } + + export enum ApiCallMode { + Synchronous = "SYNCHRONOUS", + AsyncOciWorkrequest = "ASYNC_OCI_WORKREQUEST" + } + + export enum CancelMethodType { + Get = "GET", + Post = "POST", + Patch = "PATCH", + Delete = "DELETE", + Put = "PUT" + } + + export function getJsonObj(obj: UpdateTaskFromRestTask, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateTaskDetails.getJsonObj(obj) as UpdateTaskFromRestTask)), + ...{ + "authDetails": obj.authDetails ? model.AuthDetails.getJsonObj(obj.authDetails) : undefined, + "endpoint": obj.endpoint ? model.Expression.getJsonObj(obj.endpoint) : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } + export const modelType = "REST_TASK"; + export function getDeserializedJsonObj( + obj: UpdateTaskFromRestTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateTaskDetails.getDeserializedJsonObj(obj) as UpdateTaskFromRestTask)), + ...{ + "authDetails": obj.authDetails + ? model.AuthDetails.getDeserializedJsonObj(obj.authDetails) + : undefined, + "endpoint": obj.endpoint + ? model.Expression.getDeserializedJsonObj(obj.endpoint) + : undefined, + + "cancelEndpoint": obj.cancelEndpoint + ? model.Expression.getDeserializedJsonObj(obj.cancelEndpoint) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-task-from-sq-ltask.ts b/lib/dataintegration/lib/model/update-task-from-sq-ltask.ts new file mode 100644 index 0000000000..99cf0c4379 --- /dev/null +++ b/lib/dataintegration/lib/model/update-task-from-sq-ltask.ts @@ -0,0 +1,68 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The information about the SQL task. + */ +export interface UpdateTaskFromSQLTask extends model.UpdateTaskDetails { + "script"?: model.Script; + /** + * Indicates whether the task is invoking a custom SQL script or stored procedure. + */ + "sqlScriptType"?: UpdateTaskFromSQLTask.SqlScriptType; + /** + * Describes the shape of the execution result + */ + "operation"?: any; + + "modelType": string; +} + +export namespace UpdateTaskFromSQLTask { + export enum SqlScriptType { + StoredProcedure = "STORED_PROCEDURE", + SqlCode = "SQL_CODE" + } + + export function getJsonObj(obj: UpdateTaskFromSQLTask, isParentJsonObj?: boolean): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateTaskDetails.getJsonObj(obj) as UpdateTaskFromSQLTask)), + ...{ + "script": obj.script ? model.Script.getJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } + export const modelType = "SQL_TASK"; + export function getDeserializedJsonObj( + obj: UpdateTaskFromSQLTask, + isParentJsonObj?: boolean + ): object { + const jsonObj = { + ...(isParentJsonObj + ? obj + : (model.UpdateTaskDetails.getDeserializedJsonObj(obj) as UpdateTaskFromSQLTask)), + ...{ + "script": obj.script ? model.Script.getDeserializedJsonObj(obj.script) : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/update-task-run-details.ts b/lib/dataintegration/lib/model/update-task-run-details.ts index 0c83430b06..bcaea6c250 100644 --- a/lib/dataintegration/lib/model/update-task-run-details.ts +++ b/lib/dataintegration/lib/model/update-task-run-details.ts @@ -46,6 +46,10 @@ export interface UpdateTaskRunDetails { * The version of the object that is used to track changes in the object instance. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. */ "objectVersion"?: number; + /** + * Optional task schedule key reference. + */ + "taskScheduleKey"?: string; "registryMetadata"?: model.RegistryMetadata; } diff --git a/lib/dataintegration/lib/model/update-task-schedule-details.ts b/lib/dataintegration/lib/model/update-task-schedule-details.ts new file mode 100644 index 0000000000..00a87ba999 --- /dev/null +++ b/lib/dataintegration/lib/model/update-task-schedule-details.ts @@ -0,0 +1,166 @@ +/** + * Data Integration API + * Use the Data Integration Service APIs to perform common extract, load, and transform (ETL) tasks. + * OpenAPI spec version: 20200430 + * Contact: di_dis_ww_grp@oracle.com + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * The update task details. + */ +export interface UpdateTaskScheduleDetails { + /** + * Generated key that can be used in API calls to identify taskSchedule. On scenarios where reference to the taskSchedule is needed, a value can be passed in create. + */ + "key": string; + /** + * This is a version number that is used by the service to upgrade objects if needed through releases of the service. + */ + "modelVersion"?: string; + /** + * The type of the object. + */ + "modelType"?: string; + "parentRef"?: model.ParentReference; + /** + * Free form text without any restriction on permitted characters. Name can have letters, numbers, and special characters. The value is editable and is restricted to 1000 characters. + */ + "name"?: string; + /** + * Detailed description for the object. + */ + "description"?: string; + /** + * This is used by the service for optimistic locking of the object, to prevent multiple users from simultaneously updating the object. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectVersion": number; + /** + * The status of an object that can be set to value 1 for shallow references across objects, other values reserved. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "objectStatus"?: number; + /** + * Value can only contain upper case letters, underscore, and numbers. It should begin with upper case letter or underscore. The value can be modified. + */ + "identifier"?: string; + "scheduleRef"?: model.Schedule; + "configProviderDelegate"?: model.ConfigProvider; + /** + * enabled + */ + "isEnabled"?: boolean; + /** + * The number of retries. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "numberOfRetries"?: number; + /** + * The retry delay, the unit for measurement is in the property retry delay unit. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "retryDelay"?: number; + /** + * The unit for the retry delay. + */ + "retryDelayUnit"?: UpdateTaskScheduleDetails.RetryDelayUnit; + /** + * The start time in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "startTimeMillis"?: number; + /** + * The end time in milliseconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "endTimeMillis"?: number; + /** + * Whether the same task can be executed concurrently. + */ + "isConcurrentAllowed"?: boolean; + /** + * Whether the backfill is enabled. + */ + "isBackfillEnabled"?: boolean; + /** + * The authorization mode for the task. + */ + "authMode"?: UpdateTaskScheduleDetails.AuthMode; + /** + * The expected duration of the task. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues. + */ + "expectedDuration"?: number; + /** + * The expected duration of the task. + */ + "expectedDurationUnit"?: UpdateTaskScheduleDetails.ExpectedDurationUnit; + "registryMetadata"?: model.RegistryMetadata; +} + +export namespace UpdateTaskScheduleDetails { + export enum RetryDelayUnit { + Seconds = "SECONDS", + Minutes = "MINUTES", + Hours = "HOURS", + Days = "DAYS" + } + + export enum AuthMode { + Obo = "OBO", + ResourcePrincipal = "RESOURCE_PRINCIPAL", + UserCertificate = "USER_CERTIFICATE" + } + + export enum ExpectedDurationUnit { + Seconds = "SECONDS", + Minutes = "MINUTES", + Hours = "HOURS", + Days = "DAYS" + } + + export function getJsonObj(obj: UpdateTaskScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef ? model.ParentReference.getJsonObj(obj.parentRef) : undefined, + + "scheduleRef": obj.scheduleRef ? model.Schedule.getJsonObj(obj.scheduleRef) : undefined, + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getJsonObj(obj.configProviderDelegate) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } + export function getDeserializedJsonObj(obj: UpdateTaskScheduleDetails): object { + const jsonObj = { + ...obj, + ...{ + "parentRef": obj.parentRef + ? model.ParentReference.getDeserializedJsonObj(obj.parentRef) + : undefined, + + "scheduleRef": obj.scheduleRef + ? model.Schedule.getDeserializedJsonObj(obj.scheduleRef) + : undefined, + "configProviderDelegate": obj.configProviderDelegate + ? model.ConfigProvider.getDeserializedJsonObj(obj.configProviderDelegate) + : undefined, + + "registryMetadata": obj.registryMetadata + ? model.RegistryMetadata.getDeserializedJsonObj(obj.registryMetadata) + : undefined + } + }; + + return jsonObj; + } +} diff --git a/lib/dataintegration/lib/model/write-operation-config.ts b/lib/dataintegration/lib/model/write-operation-config.ts index 99ba60a43e..6f3c91af7d 100644 --- a/lib/dataintegration/lib/model/write-operation-config.ts +++ b/lib/dataintegration/lib/model/write-operation-config.ts @@ -35,8 +35,13 @@ export interface WriteOperationConfig extends model.AbstractDataOperationConfig "partitionConfig"?: model.KeyRangePartitionConfig; "writeAttribute"?: | model.OracleAdwcWriteAttribute + | model.OracleAtpWriteAttributes | model.OracleWriteAttribute - | model.OracleAtpWriteAttribute; + | model.OracleWriteAttributes + | model.OracleAtpWriteAttribute + | model.ObjectStorageWriteAttribute + | model.OracleAdwcWriteAttributes + | model.ObjectStorageWriteAttributes; /** * The mode for the write operation. */ diff --git a/lib/dataintegration/lib/request/create-connection-request.ts b/lib/dataintegration/lib/request/create-connection-request.ts index b033aea89a..3a84933f7a 100644 --- a/lib/dataintegration/lib/request/create-connection-request.ts +++ b/lib/dataintegration/lib/request/create-connection-request.ts @@ -27,7 +27,9 @@ export interface CreateConnectionRequest extends common.BaseRequest { */ "createConnectionDetails": | model.CreateConnectionFromMySQL + | model.CreateConnectionFromAmazonS3 | model.CreateConnectionFromJdbc + | model.CreateConnectionFromBICC | model.CreateConnectionFromAtp | model.CreateConnectionFromAdwc | model.CreateConnectionFromOracle diff --git a/lib/dataintegration/lib/request/create-data-asset-request.ts b/lib/dataintegration/lib/request/create-data-asset-request.ts index a5bdaba9fd..b7e4d93575 100644 --- a/lib/dataintegration/lib/request/create-data-asset-request.ts +++ b/lib/dataintegration/lib/request/create-data-asset-request.ts @@ -30,6 +30,8 @@ export interface CreateDataAssetRequest extends common.BaseRequest { | model.CreateDataAssetFromMySQL | model.CreateDataAssetFromOracle | model.CreateDataAssetFromAdwc + | model.CreateDataAssetFromAmazonS3 + | model.CreateDataAssetFromFusionApp | model.CreateDataAssetFromAtp | model.CreateDataAssetFromObjectStorage; /** diff --git a/lib/dataintegration/lib/request/create-schedule-request.ts b/lib/dataintegration/lib/request/create-schedule-request.ts new file mode 100644 index 0000000000..5b63b12782 --- /dev/null +++ b/lib/dataintegration/lib/request/create-schedule-request.ts @@ -0,0 +1,45 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/CreateSchedule.ts.html |here} to see how to use CreateScheduleRequest. + */ +export interface CreateScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Request body parameter for Schedule details + */ + "createScheduleDetails": model.CreateScheduleDetails; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; + /** + * 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. + * + */ + "opcRetryToken"?: string; +} diff --git a/lib/dataintegration/lib/request/create-task-request.ts b/lib/dataintegration/lib/request/create-task-request.ts index b1d0d89654..330f9fdb32 100644 --- a/lib/dataintegration/lib/request/create-task-request.ts +++ b/lib/dataintegration/lib/request/create-task-request.ts @@ -28,7 +28,10 @@ export interface CreateTaskRequest extends common.BaseRequest { "createTaskDetails": | model.CreateTaskFromIntegrationTask | model.CreateTaskFromDataLoaderTask - | model.CreateTaskFromPipelineTask; + | model.CreateTaskFromPipelineTask + | model.CreateTaskFromOCIDataflowTask + | model.CreateTaskFromSQLTask + | model.CreateTaskFromRestTask; /** * 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. * diff --git a/lib/dataintegration/lib/request/create-task-schedule-request.ts b/lib/dataintegration/lib/request/create-task-schedule-request.ts new file mode 100644 index 0000000000..bab7fc67ad --- /dev/null +++ b/lib/dataintegration/lib/request/create-task-schedule-request.ts @@ -0,0 +1,45 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/CreateTaskSchedule.ts.html |here} to see how to use CreateTaskScheduleRequest. + */ +export interface CreateTaskScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Request body parameter for TaskSchedule details + */ + "createTaskScheduleDetails": model.CreateTaskScheduleDetails; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; + /** + * 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. + * + */ + "opcRetryToken"?: string; +} diff --git a/lib/dataintegration/lib/request/delete-schedule-request.ts b/lib/dataintegration/lib/request/delete-schedule-request.ts new file mode 100644 index 0000000000..d9ea7e68b5 --- /dev/null +++ b/lib/dataintegration/lib/request/delete-schedule-request.ts @@ -0,0 +1,47 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/DeleteSchedule.ts.html |here} to see how to use DeleteScheduleRequest. + */ +export interface DeleteScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Schedule Key + */ + "scheduleKey": string; + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `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. + * When 'if-match' is provided and its value does not exactly match the 'etag' of the resource on the server, the request fails with the 412 response code. + * + */ + "ifMatch"?: string; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/dataintegration/lib/request/delete-task-schedule-request.ts b/lib/dataintegration/lib/request/delete-task-schedule-request.ts new file mode 100644 index 0000000000..1f218ff460 --- /dev/null +++ b/lib/dataintegration/lib/request/delete-task-schedule-request.ts @@ -0,0 +1,47 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/DeleteTaskSchedule.ts.html |here} to see how to use DeleteTaskScheduleRequest. + */ +export interface DeleteTaskScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * TaskSchedule Key + */ + "taskScheduleKey": string; + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `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. + * When 'if-match' is provided and its value does not exactly match the 'etag' of the resource on the server, the request fails with the 412 response code. + * + */ + "ifMatch"?: string; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/dataintegration/lib/request/get-data-flow-request.ts b/lib/dataintegration/lib/request/get-data-flow-request.ts index 715ceff3a1..e312ec3bb3 100644 --- a/lib/dataintegration/lib/request/get-data-flow-request.ts +++ b/lib/dataintegration/lib/request/get-data-flow-request.ts @@ -33,4 +33,8 @@ export interface GetDataFlowRequest extends common.BaseRequest { * */ "opcRequestId"?: string; + /** + * Used to expand references of the object. If value is true, then all referenced objects are expanded. If value is false, then shallow objects are returned in place of references. Default is false.

Example:
  • ?expandReferences=true returns all objects of type data loader task
+ */ + "expandReferences"?: string; } diff --git a/lib/dataintegration/lib/request/get-folder-request.ts b/lib/dataintegration/lib/request/get-folder-request.ts index a38982a46f..9ed78f2ed1 100644 --- a/lib/dataintegration/lib/request/get-folder-request.ts +++ b/lib/dataintegration/lib/request/get-folder-request.ts @@ -33,4 +33,14 @@ export interface GetFolderRequest extends common.BaseRequest { * */ "opcRequestId"?: string; + /** + * This parameter allows users to specify which view of the object to return. CHILD_COUNT_STATISTICS - This option is used to get statistics on immediate children of the object by their type. + */ + "projection"?: Array; +} + +export namespace GetFolderRequest { + export enum Projection { + ChildCountStatistics = "CHILD_COUNT_STATISTICS" + } } diff --git a/lib/dataintegration/lib/request/get-pipeline-request.ts b/lib/dataintegration/lib/request/get-pipeline-request.ts index d53379e360..35753ead51 100644 --- a/lib/dataintegration/lib/request/get-pipeline-request.ts +++ b/lib/dataintegration/lib/request/get-pipeline-request.ts @@ -33,4 +33,8 @@ export interface GetPipelineRequest extends common.BaseRequest { * */ "opcRequestId"?: string; + /** + * Used to expand references of the object. If value is true, then all referenced objects are expanded. If value is false, then shallow objects are returned in place of references. Default is false.

Example:
  • ?expandReferences=true returns all objects of type data loader task
+ */ + "expandReferences"?: string; } diff --git a/lib/dataintegration/lib/request/get-project-request.ts b/lib/dataintegration/lib/request/get-project-request.ts index ca0370988c..911e60eb1a 100644 --- a/lib/dataintegration/lib/request/get-project-request.ts +++ b/lib/dataintegration/lib/request/get-project-request.ts @@ -33,4 +33,14 @@ export interface GetProjectRequest extends common.BaseRequest { * */ "opcRequestId"?: string; + /** + * This parameter allows users to specify which view of the object to return. CHILD_COUNT_STATISTICS - This option is used to get statistics on immediate children of the object by their type. + */ + "projection"?: Array; +} + +export namespace GetProjectRequest { + export enum Projection { + ChildCountStatistics = "CHILD_COUNT_STATISTICS" + } } diff --git a/lib/dataintegration/lib/request/get-schedule-request.ts b/lib/dataintegration/lib/request/get-schedule-request.ts new file mode 100644 index 0000000000..50e8f02b77 --- /dev/null +++ b/lib/dataintegration/lib/request/get-schedule-request.ts @@ -0,0 +1,40 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/GetSchedule.ts.html |here} to see how to use GetScheduleRequest. + */ +export interface GetScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Schedule Key + */ + "scheduleKey": string; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/dataintegration/lib/request/get-task-schedule-request.ts b/lib/dataintegration/lib/request/get-task-schedule-request.ts new file mode 100644 index 0000000000..3e4e577d05 --- /dev/null +++ b/lib/dataintegration/lib/request/get-task-schedule-request.ts @@ -0,0 +1,40 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/GetTaskSchedule.ts.html |here} to see how to use GetTaskScheduleRequest. + */ +export interface GetTaskScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * TaskSchedule Key + */ + "taskScheduleKey": string; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/dataintegration/lib/request/index.ts b/lib/dataintegration/lib/request/index.ts index f73355bf6e..4e3c478724 100644 --- a/lib/dataintegration/lib/request/index.ts +++ b/lib/dataintegration/lib/request/index.ts @@ -41,10 +41,14 @@ import * as CreatePipelineValidationRequest from "./create-pipeline-validation-r export import CreatePipelineValidationRequest = CreatePipelineValidationRequest.CreatePipelineValidationRequest; import * as CreateProjectRequest from "./create-project-request"; export import CreateProjectRequest = CreateProjectRequest.CreateProjectRequest; +import * as CreateScheduleRequest from "./create-schedule-request"; +export import CreateScheduleRequest = CreateScheduleRequest.CreateScheduleRequest; import * as CreateTaskRequest from "./create-task-request"; export import CreateTaskRequest = CreateTaskRequest.CreateTaskRequest; import * as CreateTaskRunRequest from "./create-task-run-request"; export import CreateTaskRunRequest = CreateTaskRunRequest.CreateTaskRunRequest; +import * as CreateTaskScheduleRequest from "./create-task-schedule-request"; +export import CreateTaskScheduleRequest = CreateTaskScheduleRequest.CreateTaskScheduleRequest; import * as CreateTaskValidationRequest from "./create-task-validation-request"; export import CreateTaskValidationRequest = CreateTaskValidationRequest.CreateTaskValidationRequest; import * as CreateWorkspaceRequest from "./create-workspace-request"; @@ -75,10 +79,14 @@ import * as DeletePipelineValidationRequest from "./delete-pipeline-validation-r export import DeletePipelineValidationRequest = DeletePipelineValidationRequest.DeletePipelineValidationRequest; import * as DeleteProjectRequest from "./delete-project-request"; export import DeleteProjectRequest = DeleteProjectRequest.DeleteProjectRequest; +import * as DeleteScheduleRequest from "./delete-schedule-request"; +export import DeleteScheduleRequest = DeleteScheduleRequest.DeleteScheduleRequest; import * as DeleteTaskRequest from "./delete-task-request"; export import DeleteTaskRequest = DeleteTaskRequest.DeleteTaskRequest; import * as DeleteTaskRunRequest from "./delete-task-run-request"; export import DeleteTaskRunRequest = DeleteTaskRunRequest.DeleteTaskRunRequest; +import * as DeleteTaskScheduleRequest from "./delete-task-schedule-request"; +export import DeleteTaskScheduleRequest = DeleteTaskScheduleRequest.DeleteTaskScheduleRequest; import * as DeleteTaskValidationRequest from "./delete-task-validation-request"; export import DeleteTaskValidationRequest = DeleteTaskValidationRequest.DeleteTaskValidationRequest; import * as DeleteWorkspaceRequest from "./delete-workspace-request"; @@ -119,12 +127,16 @@ import * as GetPublishedObjectRequest from "./get-published-object-request"; export import GetPublishedObjectRequest = GetPublishedObjectRequest.GetPublishedObjectRequest; import * as GetReferenceRequest from "./get-reference-request"; export import GetReferenceRequest = GetReferenceRequest.GetReferenceRequest; +import * as GetScheduleRequest from "./get-schedule-request"; +export import GetScheduleRequest = GetScheduleRequest.GetScheduleRequest; import * as GetSchemaRequest from "./get-schema-request"; export import GetSchemaRequest = GetSchemaRequest.GetSchemaRequest; import * as GetTaskRequest from "./get-task-request"; export import GetTaskRequest = GetTaskRequest.GetTaskRequest; import * as GetTaskRunRequest from "./get-task-run-request"; export import GetTaskRunRequest = GetTaskRunRequest.GetTaskRunRequest; +import * as GetTaskScheduleRequest from "./get-task-schedule-request"; +export import GetTaskScheduleRequest = GetTaskScheduleRequest.GetTaskScheduleRequest; import * as GetTaskValidationRequest from "./get-task-validation-request"; export import GetTaskValidationRequest = GetTaskValidationRequest.GetTaskValidationRequest; import * as GetWorkRequestRequest from "./get-work-request-request"; @@ -167,12 +179,16 @@ import * as ListPublishedObjectsRequest from "./list-published-objects-request"; export import ListPublishedObjectsRequest = ListPublishedObjectsRequest.ListPublishedObjectsRequest; import * as ListReferencesRequest from "./list-references-request"; export import ListReferencesRequest = ListReferencesRequest.ListReferencesRequest; +import * as ListSchedulesRequest from "./list-schedules-request"; +export import ListSchedulesRequest = ListSchedulesRequest.ListSchedulesRequest; import * as ListSchemasRequest from "./list-schemas-request"; export import ListSchemasRequest = ListSchemasRequest.ListSchemasRequest; import * as ListTaskRunLogsRequest from "./list-task-run-logs-request"; export import ListTaskRunLogsRequest = ListTaskRunLogsRequest.ListTaskRunLogsRequest; import * as ListTaskRunsRequest from "./list-task-runs-request"; export import ListTaskRunsRequest = ListTaskRunsRequest.ListTaskRunsRequest; +import * as ListTaskSchedulesRequest from "./list-task-schedules-request"; +export import ListTaskSchedulesRequest = ListTaskSchedulesRequest.ListTaskSchedulesRequest; import * as ListTaskValidationsRequest from "./list-task-validations-request"; export import ListTaskValidationsRequest = ListTaskValidationsRequest.ListTaskValidationsRequest; import * as ListTasksRequest from "./list-tasks-request"; @@ -207,9 +223,13 @@ import * as UpdateProjectRequest from "./update-project-request"; export import UpdateProjectRequest = UpdateProjectRequest.UpdateProjectRequest; import * as UpdateReferenceRequest from "./update-reference-request"; export import UpdateReferenceRequest = UpdateReferenceRequest.UpdateReferenceRequest; +import * as UpdateScheduleRequest from "./update-schedule-request"; +export import UpdateScheduleRequest = UpdateScheduleRequest.UpdateScheduleRequest; import * as UpdateTaskRequest from "./update-task-request"; export import UpdateTaskRequest = UpdateTaskRequest.UpdateTaskRequest; import * as UpdateTaskRunRequest from "./update-task-run-request"; export import UpdateTaskRunRequest = UpdateTaskRunRequest.UpdateTaskRunRequest; +import * as UpdateTaskScheduleRequest from "./update-task-schedule-request"; +export import UpdateTaskScheduleRequest = UpdateTaskScheduleRequest.UpdateTaskScheduleRequest; import * as UpdateWorkspaceRequest from "./update-workspace-request"; export import UpdateWorkspaceRequest = UpdateWorkspaceRequest.UpdateWorkspaceRequest; diff --git a/lib/dataintegration/lib/request/list-schedules-request.ts b/lib/dataintegration/lib/request/list-schedules-request.ts new file mode 100644 index 0000000000..19063d472e --- /dev/null +++ b/lib/dataintegration/lib/request/list-schedules-request.ts @@ -0,0 +1,80 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/ListSchedules.ts.html |here} to see how to use ListSchedulesRequest. + */ +export interface ListSchedulesRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Used to filter by the key of the object. + */ + "key"?: Array; + /** + * Used to filter by the name of the object. + */ + "name"?: string; + /** + * Used to filter by the identifier of the object. + */ + "identifier"?: Array; + /** + * Used to filter by the object type of the object. It can be suffixed with an optional filter operator InSubtree. If this operator is not specified, then exact match is considered.

Examples:
  • ?type=DATA_LOADER_TASK&typeInSubtree=false returns all objects of type data loader task
  • ?type=DATA_LOADER_TASK returns all objects of type data loader task
  • ?type=DATA_LOADER_TASK&typeInSubtree=true returns all objects of type data loader task
+ */ + "type"?: Array; + /** + * For list pagination. The value for this parameter is the `opc-next-page` or the `opc-prev-page` response header from the previous `List` call. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + "page"?: string; + /** + * Sets the maximum number of results per page, or items to return in a paginated `List` call. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + "limit"?: number; + /** + * Specifies the field to sort by. Accepts only one field. By default, when you sort by time fields, results are shown in descending order. All other fields default to ascending order. Sorting related parameters are ignored when parameter `query` is present (search operation and sorting order is by relevance score in descending order). + */ + "sortBy"?: ListSchedulesRequest.SortBy; + /** + * Specifies sort order to use, either `ASC` (ascending) or `DESC` (descending). + */ + "sortOrder"?: ListSchedulesRequest.SortOrder; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} + +export namespace ListSchedulesRequest { + export enum SortBy { + TimeCreated = "TIME_CREATED", + DisplayName = "DISPLAY_NAME" + } + + export enum SortOrder { + Asc = "ASC", + Desc = "DESC" + } +} diff --git a/lib/dataintegration/lib/request/list-task-runs-request.ts b/lib/dataintegration/lib/request/list-task-runs-request.ts index e17e00fecb..4eabf755d7 100644 --- a/lib/dataintegration/lib/request/list-task-runs-request.ts +++ b/lib/dataintegration/lib/request/list-task-runs-request.ts @@ -33,6 +33,10 @@ export interface ListTaskRunsRequest extends common.BaseRequest { * */ "opcRequestId"?: string; + /** + * Used to filter by the key of the object. + */ + "key"?: Array; /** * Used to filter by the project or the folder object. * @@ -66,6 +70,10 @@ export interface ListTaskRunsRequest extends common.BaseRequest { * Specifies the field to sort by. Accepts only one field. By default, when you sort by time fields, results are shown in descending order. All other fields default to ascending order. Sorting related parameters are ignored when parameter `query` is present (search operation and sorting order is by relevance score in descending order). */ "sortBy"?: ListTaskRunsRequest.SortBy; + /** + * This filter parameter can be used to filter by model specific queryable fields of the object

Examples:-
  • ?filter=status eq Failed returns all objects that have a status field with value Failed
+ */ + "filter"?: Array; } export namespace ListTaskRunsRequest { diff --git a/lib/dataintegration/lib/request/list-task-schedules-request.ts b/lib/dataintegration/lib/request/list-task-schedules-request.ts new file mode 100644 index 0000000000..60c89eff6b --- /dev/null +++ b/lib/dataintegration/lib/request/list-task-schedules-request.ts @@ -0,0 +1,84 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/ListTaskSchedules.ts.html |here} to see how to use ListTaskSchedulesRequest. + */ +export interface ListTaskSchedulesRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Used to filter by the key of the object. + */ + "key"?: Array; + /** + * Used to filter by the name of the object. + */ + "name"?: string; + /** + * Used to filter by the identifier of the object. + */ + "identifier"?: Array; + /** + * Used to filter by the object type of the object. It can be suffixed with an optional filter operator InSubtree. If this operator is not specified, then exact match is considered.

Examples:
  • ?type=DATA_LOADER_TASK&typeInSubtree=false returns all objects of type data loader task
  • ?type=DATA_LOADER_TASK returns all objects of type data loader task
  • ?type=DATA_LOADER_TASK&typeInSubtree=true returns all objects of type data loader task
+ */ + "type"?: Array; + /** + * For list pagination. The value for this parameter is the `opc-next-page` or the `opc-prev-page` response header from the previous `List` call. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + "page"?: string; + /** + * Sets the maximum number of results per page, or items to return in a paginated `List` call. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + "limit"?: number; + /** + * Specifies the field to sort by. Accepts only one field. By default, when you sort by time fields, results are shown in descending order. All other fields default to ascending order. Sorting related parameters are ignored when parameter `query` is present (search operation and sorting order is by relevance score in descending order). + */ + "sortBy"?: ListTaskSchedulesRequest.SortBy; + /** + * Specifies sort order to use, either `ASC` (ascending) or `DESC` (descending). + */ + "sortOrder"?: ListTaskSchedulesRequest.SortOrder; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; + /** + * This filter parameter can be used to filter task schedule by its state. + */ + "isEnabled"?: boolean; +} + +export namespace ListTaskSchedulesRequest { + export enum SortBy { + TimeCreated = "TIME_CREATED", + DisplayName = "DISPLAY_NAME" + } + + export enum SortOrder { + Asc = "ASC", + Desc = "DESC" + } +} diff --git a/lib/dataintegration/lib/request/list-workspaces-request.ts b/lib/dataintegration/lib/request/list-workspaces-request.ts index c502020b69..c9f37825c6 100644 --- a/lib/dataintegration/lib/request/list-workspaces-request.ts +++ b/lib/dataintegration/lib/request/list-workspaces-request.ts @@ -37,7 +37,7 @@ export interface ListWorkspacesRequest extends common.BaseRequest { /** * The lifecycle state of a resource. When specified, the operation only returns resources that match the given lifecycle state. When not specified, all lifecycle states are processed as a match. */ - "lifecycleState"?: ListWorkspacesRequest.LifecycleState; + "lifecycleState"?: string; /** * Specifies sort order to use, either `ASC` (ascending) or `DESC` (descending). */ @@ -56,18 +56,6 @@ export interface ListWorkspacesRequest extends common.BaseRequest { } export namespace ListWorkspacesRequest { - export enum LifecycleState { - Creating = "CREATING", - Active = "ACTIVE", - Inactive = "INACTIVE", - Updating = "UPDATING", - Deleting = "DELETING", - Deleted = "DELETED", - Stopping = "STOPPING", - Stopped = "STOPPED", - Failed = "FAILED" - } - export enum SortOrder { Asc = "ASC", Desc = "DESC" diff --git a/lib/dataintegration/lib/request/update-connection-request.ts b/lib/dataintegration/lib/request/update-connection-request.ts index 64df5a14b6..a962359d91 100644 --- a/lib/dataintegration/lib/request/update-connection-request.ts +++ b/lib/dataintegration/lib/request/update-connection-request.ts @@ -32,6 +32,8 @@ export interface UpdateConnectionRequest extends common.BaseRequest { "updateConnectionDetails": | model.UpdateConnectionFromJdbc | model.UpdateConnectionFromObjectStorage + | model.UpdateConnectionFromBICC + | model.UpdateConnectionFromAmazonS3 | model.UpdateConnectionFromAtp | model.UpdateConnectionFromOracle | model.UpdateConnectionFromAdwc diff --git a/lib/dataintegration/lib/request/update-data-asset-request.ts b/lib/dataintegration/lib/request/update-data-asset-request.ts index 5d3975e82a..6c53018f6c 100644 --- a/lib/dataintegration/lib/request/update-data-asset-request.ts +++ b/lib/dataintegration/lib/request/update-data-asset-request.ts @@ -34,6 +34,8 @@ export interface UpdateDataAssetRequest extends common.BaseRequest { | model.UpdateDataAssetFromAdwc | model.UpdateDataAssetFromJdbc | model.UpdateDataAssetFromObjectStorage + | model.UpdateDataAssetFromAmazonS3 + | model.UpdateDataAssetFromFusionApp | model.UpdateDataAssetFromMySQL | model.UpdateDataAssetFromOracle; /** diff --git a/lib/dataintegration/lib/request/update-schedule-request.ts b/lib/dataintegration/lib/request/update-schedule-request.ts new file mode 100644 index 0000000000..08111bf02a --- /dev/null +++ b/lib/dataintegration/lib/request/update-schedule-request.ts @@ -0,0 +1,51 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/UpdateSchedule.ts.html |here} to see how to use UpdateScheduleRequest. + */ +export interface UpdateScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * Schedule Key + */ + "scheduleKey": string; + /** + * Request body parameter for Schedule details + */ + "updateScheduleDetails": model.UpdateScheduleDetails; + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `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. + * When 'if-match' is provided and its value does not exactly match the 'etag' of the resource on the server, the request fails with the 412 response code. + * + */ + "ifMatch"?: string; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/dataintegration/lib/request/update-task-request.ts b/lib/dataintegration/lib/request/update-task-request.ts index 23e239e688..d57e8d2754 100644 --- a/lib/dataintegration/lib/request/update-task-request.ts +++ b/lib/dataintegration/lib/request/update-task-request.ts @@ -30,7 +30,10 @@ export interface UpdateTaskRequest extends common.BaseRequest { * The details needed to update a task. */ "updateTaskDetails": + | model.UpdateTaskFromRestTask | model.UpdateTaskFromPipelineTask + | model.UpdateTaskFromOCIDataflowTask + | model.UpdateTaskFromSQLTask | model.UpdateTaskFromDataLoaderTask | model.UpdateTaskFromIntegrationTask; /** diff --git a/lib/dataintegration/lib/request/update-task-schedule-request.ts b/lib/dataintegration/lib/request/update-task-schedule-request.ts new file mode 100644 index 0000000000..fac9cb9fc6 --- /dev/null +++ b/lib/dataintegration/lib/request/update-task-schedule-request.ts @@ -0,0 +1,51 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +/** + * @example Click {@link https://docs.cloud.oracle.com/en-us/iaas/tools/typescript-sdk-examples/latest/dataintegration/UpdateTaskSchedule.ts.html |here} to see how to use UpdateTaskScheduleRequest. + */ +export interface UpdateTaskScheduleRequest extends common.BaseRequest { + /** + * The workspace ID. + */ + "workspaceId": string; + /** + * The application key. + */ + "applicationKey": string; + /** + * TaskSchedule Key + */ + "taskScheduleKey": string; + /** + * Request body parameter for TaskSchedule details + */ + "updateTaskScheduleDetails": model.UpdateTaskScheduleDetails; + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `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. + * When 'if-match' is provided and its value does not exactly match the 'etag' of the resource on the server, the request fails with the 412 response code. + * + */ + "ifMatch"?: string; + /** + * Unique Oracle-assigned identifier for the request. If + * you need to contact Oracle about a particular request, + * please provide the request ID. + * + */ + "opcRequestId"?: string; +} diff --git a/lib/dataintegration/lib/response/create-schedule-response.ts b/lib/dataintegration/lib/response/create-schedule-response.ts new file mode 100644 index 0000000000..a262ebf623 --- /dev/null +++ b/lib/dataintegration/lib/response/create-schedule-response.ts @@ -0,0 +1,33 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface CreateScheduleResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * For optimistic concurrency control. See [ETags for Optimistic Concurrency Control](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#eleven). + * + */ + "etag": string; + /** + * The returned model.Schedule instance. + */ + "schedule": model.Schedule; +} diff --git a/lib/dataintegration/lib/response/create-task-schedule-response.ts b/lib/dataintegration/lib/response/create-task-schedule-response.ts new file mode 100644 index 0000000000..33b01432ae --- /dev/null +++ b/lib/dataintegration/lib/response/create-task-schedule-response.ts @@ -0,0 +1,33 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface CreateTaskScheduleResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * For optimistic concurrency control. See [ETags for Optimistic Concurrency Control](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#eleven). + * + */ + "etag": string; + /** + * The returned model.TaskSchedule instance. + */ + "taskSchedule": model.TaskSchedule; +} diff --git a/lib/dataintegration/lib/response/delete-schedule-response.ts b/lib/dataintegration/lib/response/delete-schedule-response.ts new file mode 100644 index 0000000000..d9a203c2e5 --- /dev/null +++ b/lib/dataintegration/lib/response/delete-schedule-response.ts @@ -0,0 +1,24 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface DeleteScheduleResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; +} diff --git a/lib/dataintegration/lib/response/delete-task-schedule-response.ts b/lib/dataintegration/lib/response/delete-task-schedule-response.ts new file mode 100644 index 0000000000..88874dfe51 --- /dev/null +++ b/lib/dataintegration/lib/response/delete-task-schedule-response.ts @@ -0,0 +1,24 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface DeleteTaskScheduleResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; +} diff --git a/lib/dataintegration/lib/response/get-schedule-response.ts b/lib/dataintegration/lib/response/get-schedule-response.ts new file mode 100644 index 0000000000..563cfa2103 --- /dev/null +++ b/lib/dataintegration/lib/response/get-schedule-response.ts @@ -0,0 +1,33 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface GetScheduleResponse { + /** + * For optimistic concurrency control. See [ETags for Optimistic Concurrency Control](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#eleven). + * + */ + "etag": string; + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * The returned model.Schedule instance. + */ + "schedule": model.Schedule; +} diff --git a/lib/dataintegration/lib/response/get-task-schedule-response.ts b/lib/dataintegration/lib/response/get-task-schedule-response.ts new file mode 100644 index 0000000000..fe50af8cb9 --- /dev/null +++ b/lib/dataintegration/lib/response/get-task-schedule-response.ts @@ -0,0 +1,33 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface GetTaskScheduleResponse { + /** + * For optimistic concurrency control. See [ETags for Optimistic Concurrency Control](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#eleven). + * + */ + "etag": string; + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * The returned model.TaskSchedule instance. + */ + "taskSchedule": model.TaskSchedule; +} diff --git a/lib/dataintegration/lib/response/index.ts b/lib/dataintegration/lib/response/index.ts index ad6ee88bb0..e78b6316cc 100644 --- a/lib/dataintegration/lib/response/index.ts +++ b/lib/dataintegration/lib/response/index.ts @@ -41,10 +41,14 @@ import * as CreatePipelineValidationResponse from "./create-pipeline-validation- export import CreatePipelineValidationResponse = CreatePipelineValidationResponse.CreatePipelineValidationResponse; import * as CreateProjectResponse from "./create-project-response"; export import CreateProjectResponse = CreateProjectResponse.CreateProjectResponse; +import * as CreateScheduleResponse from "./create-schedule-response"; +export import CreateScheduleResponse = CreateScheduleResponse.CreateScheduleResponse; import * as CreateTaskResponse from "./create-task-response"; export import CreateTaskResponse = CreateTaskResponse.CreateTaskResponse; import * as CreateTaskRunResponse from "./create-task-run-response"; export import CreateTaskRunResponse = CreateTaskRunResponse.CreateTaskRunResponse; +import * as CreateTaskScheduleResponse from "./create-task-schedule-response"; +export import CreateTaskScheduleResponse = CreateTaskScheduleResponse.CreateTaskScheduleResponse; import * as CreateTaskValidationResponse from "./create-task-validation-response"; export import CreateTaskValidationResponse = CreateTaskValidationResponse.CreateTaskValidationResponse; import * as CreateWorkspaceResponse from "./create-workspace-response"; @@ -75,10 +79,14 @@ import * as DeletePipelineValidationResponse from "./delete-pipeline-validation- export import DeletePipelineValidationResponse = DeletePipelineValidationResponse.DeletePipelineValidationResponse; import * as DeleteProjectResponse from "./delete-project-response"; export import DeleteProjectResponse = DeleteProjectResponse.DeleteProjectResponse; +import * as DeleteScheduleResponse from "./delete-schedule-response"; +export import DeleteScheduleResponse = DeleteScheduleResponse.DeleteScheduleResponse; import * as DeleteTaskResponse from "./delete-task-response"; export import DeleteTaskResponse = DeleteTaskResponse.DeleteTaskResponse; import * as DeleteTaskRunResponse from "./delete-task-run-response"; export import DeleteTaskRunResponse = DeleteTaskRunResponse.DeleteTaskRunResponse; +import * as DeleteTaskScheduleResponse from "./delete-task-schedule-response"; +export import DeleteTaskScheduleResponse = DeleteTaskScheduleResponse.DeleteTaskScheduleResponse; import * as DeleteTaskValidationResponse from "./delete-task-validation-response"; export import DeleteTaskValidationResponse = DeleteTaskValidationResponse.DeleteTaskValidationResponse; import * as DeleteWorkspaceResponse from "./delete-workspace-response"; @@ -119,12 +127,16 @@ import * as GetPublishedObjectResponse from "./get-published-object-response"; export import GetPublishedObjectResponse = GetPublishedObjectResponse.GetPublishedObjectResponse; import * as GetReferenceResponse from "./get-reference-response"; export import GetReferenceResponse = GetReferenceResponse.GetReferenceResponse; +import * as GetScheduleResponse from "./get-schedule-response"; +export import GetScheduleResponse = GetScheduleResponse.GetScheduleResponse; import * as GetSchemaResponse from "./get-schema-response"; export import GetSchemaResponse = GetSchemaResponse.GetSchemaResponse; import * as GetTaskResponse from "./get-task-response"; export import GetTaskResponse = GetTaskResponse.GetTaskResponse; import * as GetTaskRunResponse from "./get-task-run-response"; export import GetTaskRunResponse = GetTaskRunResponse.GetTaskRunResponse; +import * as GetTaskScheduleResponse from "./get-task-schedule-response"; +export import GetTaskScheduleResponse = GetTaskScheduleResponse.GetTaskScheduleResponse; import * as GetTaskValidationResponse from "./get-task-validation-response"; export import GetTaskValidationResponse = GetTaskValidationResponse.GetTaskValidationResponse; import * as GetWorkRequestResponse from "./get-work-request-response"; @@ -167,12 +179,16 @@ import * as ListPublishedObjectsResponse from "./list-published-objects-response export import ListPublishedObjectsResponse = ListPublishedObjectsResponse.ListPublishedObjectsResponse; import * as ListReferencesResponse from "./list-references-response"; export import ListReferencesResponse = ListReferencesResponse.ListReferencesResponse; +import * as ListSchedulesResponse from "./list-schedules-response"; +export import ListSchedulesResponse = ListSchedulesResponse.ListSchedulesResponse; import * as ListSchemasResponse from "./list-schemas-response"; export import ListSchemasResponse = ListSchemasResponse.ListSchemasResponse; import * as ListTaskRunLogsResponse from "./list-task-run-logs-response"; export import ListTaskRunLogsResponse = ListTaskRunLogsResponse.ListTaskRunLogsResponse; import * as ListTaskRunsResponse from "./list-task-runs-response"; export import ListTaskRunsResponse = ListTaskRunsResponse.ListTaskRunsResponse; +import * as ListTaskSchedulesResponse from "./list-task-schedules-response"; +export import ListTaskSchedulesResponse = ListTaskSchedulesResponse.ListTaskSchedulesResponse; import * as ListTaskValidationsResponse from "./list-task-validations-response"; export import ListTaskValidationsResponse = ListTaskValidationsResponse.ListTaskValidationsResponse; import * as ListTasksResponse from "./list-tasks-response"; @@ -207,9 +223,13 @@ import * as UpdateProjectResponse from "./update-project-response"; export import UpdateProjectResponse = UpdateProjectResponse.UpdateProjectResponse; import * as UpdateReferenceResponse from "./update-reference-response"; export import UpdateReferenceResponse = UpdateReferenceResponse.UpdateReferenceResponse; +import * as UpdateScheduleResponse from "./update-schedule-response"; +export import UpdateScheduleResponse = UpdateScheduleResponse.UpdateScheduleResponse; import * as UpdateTaskResponse from "./update-task-response"; export import UpdateTaskResponse = UpdateTaskResponse.UpdateTaskResponse; import * as UpdateTaskRunResponse from "./update-task-run-response"; export import UpdateTaskRunResponse = UpdateTaskRunResponse.UpdateTaskRunResponse; +import * as UpdateTaskScheduleResponse from "./update-task-schedule-response"; +export import UpdateTaskScheduleResponse = UpdateTaskScheduleResponse.UpdateTaskScheduleResponse; import * as UpdateWorkspaceResponse from "./update-workspace-response"; export import UpdateWorkspaceResponse = UpdateWorkspaceResponse.UpdateWorkspaceResponse; diff --git a/lib/dataintegration/lib/response/list-schedules-response.ts b/lib/dataintegration/lib/response/list-schedules-response.ts new file mode 100644 index 0000000000..e63134e69d --- /dev/null +++ b/lib/dataintegration/lib/response/list-schedules-response.ts @@ -0,0 +1,43 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface ListSchedulesResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * Retrieves the next page of results. When this header appears in the response, additional pages of results remain. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + */ + "opcNextPage": string; + /** + * Retrieves the previous page of results. When this header appears in the response, previous pages of results exist. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + */ + "opcPrevPage": string; + /** + * Total items in the entire list. + * + */ + "opcTotalItems": number; + /** + * The returned model.ScheduleSummaryCollection instance. + */ + "scheduleSummaryCollection": model.ScheduleSummaryCollection; +} diff --git a/lib/dataintegration/lib/response/list-task-schedules-response.ts b/lib/dataintegration/lib/response/list-task-schedules-response.ts new file mode 100644 index 0000000000..1d256db236 --- /dev/null +++ b/lib/dataintegration/lib/response/list-task-schedules-response.ts @@ -0,0 +1,43 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface ListTaskSchedulesResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * Retrieves the next page of results. When this header appears in the response, additional pages of results remain. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + */ + "opcNextPage": string; + /** + * Retrieves the previous page of results. When this header appears in the response, previous pages of results exist. See [List Pagination](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + */ + "opcPrevPage": string; + /** + * Total items in the entire list. + * + */ + "opcTotalItems": number; + /** + * The returned model.TaskScheduleSummaryCollection instance. + */ + "taskScheduleSummaryCollection": model.TaskScheduleSummaryCollection; +} diff --git a/lib/dataintegration/lib/response/update-schedule-response.ts b/lib/dataintegration/lib/response/update-schedule-response.ts new file mode 100644 index 0000000000..e83887bdda --- /dev/null +++ b/lib/dataintegration/lib/response/update-schedule-response.ts @@ -0,0 +1,33 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface UpdateScheduleResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * For optimistic concurrency control. See [ETags for Optimistic Concurrency Control](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#eleven). + * + */ + "etag": string; + /** + * The returned model.Schedule instance. + */ + "schedule": model.Schedule; +} diff --git a/lib/dataintegration/lib/response/update-task-schedule-response.ts b/lib/dataintegration/lib/response/update-task-schedule-response.ts new file mode 100644 index 0000000000..c05bb7d2cb --- /dev/null +++ b/lib/dataintegration/lib/response/update-task-schedule-response.ts @@ -0,0 +1,33 @@ +/** + * + * + * OpenAPI spec version: 20200430 + * + * + * NOTE: This class is auto generated by OracleSDKGenerator. + * Do not edit the class manually. + * + * Copyright (c) 2020, 2021, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ + +import * as model from "../model"; +import common = require("oci-common"); + +export interface UpdateTaskScheduleResponse { + /** + * Unique Oracle-assigned identifier for the request. If you need to contact + * Oracle about a particular request, please provide the request ID. + * + */ + "opcRequestId": string; + /** + * For optimistic concurrency control. See [ETags for Optimistic Concurrency Control](https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#eleven). + * + */ + "etag": string; + /** + * The returned model.TaskSchedule instance. + */ + "taskSchedule": model.TaskSchedule; +} diff --git a/lib/dataintegration/package.json b/lib/dataintegration/package.json index 64b1017b9c..deb74a1e3c 100644 --- a/lib/dataintegration/package.json +++ b/lib/dataintegration/package.json @@ -1,6 +1,6 @@ { "name": "oci-dataintegration", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Data Integration Service", "repository": { "type": "git", diff --git a/lib/datasafe/lib/client.ts b/lib/datasafe/lib/client.ts index 488192a72e..e63004c5f2 100644 --- a/lib/datasafe/lib/client.ts +++ b/lib/datasafe/lib/client.ts @@ -45,6 +45,10 @@ export class DataSafeClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/datasafe/package.json b/lib/datasafe/package.json index 8ede6213ef..3f138fc50d 100644 --- a/lib/datasafe/package.json +++ b/lib/datasafe/package.json @@ -1,6 +1,6 @@ { "name": "oci-datasafe", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Data Safe ", "repository": { "type": "git", diff --git a/lib/datascience/lib/client.ts b/lib/datascience/lib/client.ts index ddd9d9f198..4c92dc3306 100644 --- a/lib/datascience/lib/client.ts +++ b/lib/datascience/lib/client.ts @@ -46,6 +46,10 @@ export class DataScienceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/datascience/package.json b/lib/datascience/package.json index 7dcd5fb9bf..0e6a139d9f 100644 --- a/lib/datascience/package.json +++ b/lib/datascience/package.json @@ -1,6 +1,6 @@ { "name": "oci-datascience", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Data Science Service", "repository": { "type": "git", diff --git a/lib/devops/lib/client.ts b/lib/devops/lib/client.ts index 8e55dc5ed9..8602dba0c1 100644 --- a/lib/devops/lib/client.ts +++ b/lib/devops/lib/client.ts @@ -44,6 +44,10 @@ export class DevopsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/devops/package.json b/lib/devops/package.json index 4ba53c6840..7c89f30346 100644 --- a/lib/devops/package.json +++ b/lib/devops/package.json @@ -1,6 +1,6 @@ { "name": "oci-devops", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Devops Service", "repository": { "type": "git", diff --git a/lib/dns/lib/client.ts b/lib/dns/lib/client.ts index ec008a42eb..dde1f3bee0 100644 --- a/lib/dns/lib/client.ts +++ b/lib/dns/lib/client.ts @@ -52,6 +52,10 @@ export class DnsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/dns/package.json b/lib/dns/package.json index fcc50e5dbe..1f4f940278 100644 --- a/lib/dns/package.json +++ b/lib/dns/package.json @@ -1,6 +1,6 @@ { "name": "oci-dns", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for DNS", "repository": { "type": "git", diff --git a/lib/dts/lib/client.ts b/lib/dts/lib/client.ts index d401bf895e..bf8b93e174 100644 --- a/lib/dts/lib/client.ts +++ b/lib/dts/lib/client.ts @@ -51,6 +51,10 @@ export class ApplianceExportJobClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -579,6 +583,10 @@ export class ShippingVendorsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -721,6 +729,10 @@ export class TransferApplianceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1362,6 +1374,10 @@ export class TransferApplianceEntitlementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1669,6 +1685,10 @@ export class TransferDeviceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -2100,6 +2120,10 @@ export class TransferJobClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -2626,6 +2650,10 @@ export class TransferPackageClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/dts/package.json b/lib/dts/package.json index bf2794a2bb..af57f6abb6 100644 --- a/lib/dts/package.json +++ b/lib/dts/package.json @@ -1,6 +1,6 @@ { "name": "oci-dts", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Dts Service", "repository": { "type": "git", diff --git a/lib/email/lib/client.ts b/lib/email/lib/client.ts index 3f4bcd1f0d..2db1553833 100644 --- a/lib/email/lib/client.ts +++ b/lib/email/lib/client.ts @@ -51,6 +51,10 @@ export class EmailClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/email/package.json b/lib/email/package.json index 532a55f2ae..75ed9905df 100644 --- a/lib/email/package.json +++ b/lib/email/package.json @@ -1,6 +1,6 @@ { "name": "oci-email", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Email", "repository": { "type": "git", diff --git a/lib/events/lib/client.ts b/lib/events/lib/client.ts index 39c35a7d62..e5be3f7274 100644 --- a/lib/events/lib/client.ts +++ b/lib/events/lib/client.ts @@ -47,6 +47,10 @@ export class EventsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/events/package.json b/lib/events/package.json index 5b9c23a51d..b0405a69bb 100644 --- a/lib/events/package.json +++ b/lib/events/package.json @@ -1,6 +1,6 @@ { "name": "oci-events", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Events Service", "repository": { "type": "git", diff --git a/lib/filestorage/lib/client.ts b/lib/filestorage/lib/client.ts index f083d163db..1a08dac0d4 100644 --- a/lib/filestorage/lib/client.ts +++ b/lib/filestorage/lib/client.ts @@ -46,6 +46,10 @@ export class FileStorageClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/filestorage/package.json b/lib/filestorage/package.json index 7e196debb9..88b78e0fad 100644 --- a/lib/filestorage/package.json +++ b/lib/filestorage/package.json @@ -1,6 +1,6 @@ { "name": "oci-filestorage", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for File Storage", "repository": { "type": "git", diff --git a/lib/functions/lib/client.ts b/lib/functions/lib/client.ts index 0c04172086..711453f36a 100644 --- a/lib/functions/lib/client.ts +++ b/lib/functions/lib/client.ts @@ -45,6 +45,10 @@ export class FunctionsInvokeClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); } @@ -154,6 +158,10 @@ export class FunctionsManagementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/functions/package.json b/lib/functions/package.json index ba89b4c381..3609f3e28e 100644 --- a/lib/functions/package.json +++ b/lib/functions/package.json @@ -1,6 +1,6 @@ { "name": "oci-functions", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Functions", "repository": { "type": "git", diff --git a/lib/genericartifactscontent/lib/client.ts b/lib/genericartifactscontent/lib/client.ts index a300d7c5c9..77334160f7 100644 --- a/lib/genericartifactscontent/lib/client.ts +++ b/lib/genericartifactscontent/lib/client.ts @@ -45,6 +45,10 @@ export class GenericArtifactsContentClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/genericartifactscontent/package.json b/lib/genericartifactscontent/package.json index 66c506a18b..4204a308f8 100644 --- a/lib/genericartifactscontent/package.json +++ b/lib/genericartifactscontent/package.json @@ -1,6 +1,6 @@ { "name": "oci-genericartifactscontent", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Generic Artifacts Content Service", "repository": { "type": "git", diff --git a/lib/goldengate/lib/client.ts b/lib/goldengate/lib/client.ts index 52f6b5a920..c07e7d0831 100644 --- a/lib/goldengate/lib/client.ts +++ b/lib/goldengate/lib/client.ts @@ -46,6 +46,10 @@ export class GoldenGateClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/goldengate/package.json b/lib/goldengate/package.json index 764382b455..86b0dd2ea6 100644 --- a/lib/goldengate/package.json +++ b/lib/goldengate/package.json @@ -1,6 +1,6 @@ { "name": "oci-goldengate", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Golden Gate Service", "repository": { "type": "git", diff --git a/lib/healthchecks/lib/client.ts b/lib/healthchecks/lib/client.ts index d969f23e12..4183030bef 100644 --- a/lib/healthchecks/lib/client.ts +++ b/lib/healthchecks/lib/client.ts @@ -47,6 +47,10 @@ export class HealthChecksClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/healthchecks/package.json b/lib/healthchecks/package.json index beca6a435a..c1141d255d 100644 --- a/lib/healthchecks/package.json +++ b/lib/healthchecks/package.json @@ -1,6 +1,6 @@ { "name": "oci-healthchecks", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Healthchecks Service", "repository": { "type": "git", diff --git a/lib/identity/lib/client.ts b/lib/identity/lib/client.ts index 2a65f4a5a2..1804a17003 100644 --- a/lib/identity/lib/client.ts +++ b/lib/identity/lib/client.ts @@ -45,6 +45,10 @@ export class IdentityClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -7073,7 +7077,7 @@ Lists the Swift passwords for the specified user. The returned object contains t "lifecycleState": listUsersRequest.lifecycleState }; - let headerParams = { + let headerParams: common.Params = { "Content-Type": common.Constants.APPLICATION_JSON }; diff --git a/lib/identity/package.json b/lib/identity/package.json index 1174b37bdd..5c95dee387 100644 --- a/lib/identity/package.json +++ b/lib/identity/package.json @@ -1,6 +1,6 @@ { "name": "oci-identity", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Identity", "repository": { "type": "git", diff --git a/lib/integration/lib/client.ts b/lib/integration/lib/client.ts index 7e0656f98a..669b0f394d 100644 --- a/lib/integration/lib/client.ts +++ b/lib/integration/lib/client.ts @@ -45,6 +45,10 @@ export class IntegrationInstanceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/integration/package.json b/lib/integration/package.json index 0e256359e6..2d5cb60023 100644 --- a/lib/integration/package.json +++ b/lib/integration/package.json @@ -1,6 +1,6 @@ { "name": "oci-integration", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Integration service", "repository": { "type": "git", diff --git a/lib/jms/lib/client.ts b/lib/jms/lib/client.ts index 1d4da98fb5..b708556553 100644 --- a/lib/jms/lib/client.ts +++ b/lib/jms/lib/client.ts @@ -45,6 +45,10 @@ export class JavaManagementServiceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/jms/package.json b/lib/jms/package.json index e5c4a6cc99..b194135365 100644 --- a/lib/jms/package.json +++ b/lib/jms/package.json @@ -1,6 +1,6 @@ { "name": "oci-jms", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Jms Service", "repository": { "type": "git", diff --git a/lib/keymanagement/lib/client.ts b/lib/keymanagement/lib/client.ts index 046cd48266..b40bb8b2ca 100644 --- a/lib/keymanagement/lib/client.ts +++ b/lib/keymanagement/lib/client.ts @@ -47,6 +47,10 @@ export class KmsCryptoClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); } @@ -474,6 +478,10 @@ export class KmsManagementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); } @@ -2155,6 +2163,10 @@ export class KmsVaultClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/keymanagement/package.json b/lib/keymanagement/package.json index b43426b4ba..8335ae74e8 100644 --- a/lib/keymanagement/package.json +++ b/lib/keymanagement/package.json @@ -1,6 +1,6 @@ { "name": "oci-keymanagement", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Key Management", "repository": { "type": "git", diff --git a/lib/limits/lib/client.ts b/lib/limits/lib/client.ts index 9be56bb7f2..7d4d0b96bd 100644 --- a/lib/limits/lib/client.ts +++ b/lib/limits/lib/client.ts @@ -44,6 +44,10 @@ export class LimitsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -485,6 +489,10 @@ export class QuotasClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/limits/package.json b/lib/limits/package.json index 7bcbbaf577..3be04bf192 100644 --- a/lib/limits/package.json +++ b/lib/limits/package.json @@ -1,6 +1,6 @@ { "name": "oci-limits", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Limits Service", "repository": { "type": "git", diff --git a/lib/loadbalancer/lib/client.ts b/lib/loadbalancer/lib/client.ts index 40af103180..2aaefdb7f0 100644 --- a/lib/loadbalancer/lib/client.ts +++ b/lib/loadbalancer/lib/client.ts @@ -47,6 +47,10 @@ export class LoadBalancerClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/loadbalancer/package.json b/lib/loadbalancer/package.json index 190b419ba5..0a51f0e8c9 100644 --- a/lib/loadbalancer/package.json +++ b/lib/loadbalancer/package.json @@ -1,6 +1,6 @@ { "name": "oci-loadbalancer", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Load Balancer", "repository": { "type": "git", diff --git a/lib/loganalytics/lib/client.ts b/lib/loganalytics/lib/client.ts index 255bb1d793..3d34eca57c 100644 --- a/lib/loganalytics/lib/client.ts +++ b/lib/loganalytics/lib/client.ts @@ -46,6 +46,10 @@ export class LogAnalyticsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/loganalytics/package.json b/lib/loganalytics/package.json index 974ec2ddbb..884349b141 100644 --- a/lib/loganalytics/package.json +++ b/lib/loganalytics/package.json @@ -1,6 +1,6 @@ { "name": "oci-loganalytics", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Log Analytics Service", "repository": { "type": "git", diff --git a/lib/logging/lib/client.ts b/lib/logging/lib/client.ts index 102c12040d..84c2e43a23 100644 --- a/lib/logging/lib/client.ts +++ b/lib/logging/lib/client.ts @@ -45,6 +45,10 @@ export class LoggingManagementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/logging/package.json b/lib/logging/package.json index 3b8613afc3..968fb8e2f0 100644 --- a/lib/logging/package.json +++ b/lib/logging/package.json @@ -1,6 +1,6 @@ { "name": "oci-logging", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Logging Service", "repository": { "type": "git", diff --git a/lib/loggingingestion/lib/client.ts b/lib/loggingingestion/lib/client.ts index 4f2b811b7c..d6dfe9c1fe 100644 --- a/lib/loggingingestion/lib/client.ts +++ b/lib/loggingingestion/lib/client.ts @@ -43,6 +43,10 @@ export class LoggingClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/loggingingestion/package.json b/lib/loggingingestion/package.json index 0731b3a38d..6e23e36e9f 100644 --- a/lib/loggingingestion/package.json +++ b/lib/loggingingestion/package.json @@ -1,6 +1,6 @@ { "name": "oci-loggingingestion", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Loggingingestion Service", "repository": { "type": "git", diff --git a/lib/loggingsearch/lib/client.ts b/lib/loggingsearch/lib/client.ts index cb37b95d1b..d02045e139 100644 --- a/lib/loggingsearch/lib/client.ts +++ b/lib/loggingsearch/lib/client.ts @@ -42,6 +42,10 @@ export class LogSearchClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/loggingsearch/package.json b/lib/loggingsearch/package.json index b20576044b..583b790d35 100644 --- a/lib/loggingsearch/package.json +++ b/lib/loggingsearch/package.json @@ -1,6 +1,6 @@ { "name": "oci-loggingsearch", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Loggingsearch Service", "repository": { "type": "git", diff --git a/lib/managementagent/lib/client.ts b/lib/managementagent/lib/client.ts index 875597f611..43194b7717 100644 --- a/lib/managementagent/lib/client.ts +++ b/lib/managementagent/lib/client.ts @@ -46,6 +46,10 @@ export class ManagementAgentClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/managementagent/package.json b/lib/managementagent/package.json index f899ddd37a..f2a9ef21b7 100644 --- a/lib/managementagent/package.json +++ b/lib/managementagent/package.json @@ -1,6 +1,6 @@ { "name": "oci-managementagent", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Management Agent Service", "repository": { "type": "git", diff --git a/lib/managementdashboard/lib/client.ts b/lib/managementdashboard/lib/client.ts index 7441b0f61f..f120adc692 100644 --- a/lib/managementdashboard/lib/client.ts +++ b/lib/managementdashboard/lib/client.ts @@ -47,6 +47,10 @@ export class DashxApisClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/managementdashboard/package.json b/lib/managementdashboard/package.json index 8040742f39..da088963d6 100644 --- a/lib/managementdashboard/package.json +++ b/lib/managementdashboard/package.json @@ -1,6 +1,6 @@ { "name": "oci-managementdashboard", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Management Dashboard Service", "repository": { "type": "git", diff --git a/lib/marketplace/lib/client.ts b/lib/marketplace/lib/client.ts index 92c7754bf8..d78eea4f8f 100644 --- a/lib/marketplace/lib/client.ts +++ b/lib/marketplace/lib/client.ts @@ -44,6 +44,10 @@ export class AccountClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -248,6 +252,10 @@ export class MarketplaceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/marketplace/package.json b/lib/marketplace/package.json index 5d48685ed0..bcd8720cd6 100644 --- a/lib/marketplace/package.json +++ b/lib/marketplace/package.json @@ -1,6 +1,6 @@ { "name": "oci-marketplace", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Marketplace Service", "repository": { "type": "git", diff --git a/lib/monitoring/lib/client.ts b/lib/monitoring/lib/client.ts index fa6718effe..9d18e8117c 100644 --- a/lib/monitoring/lib/client.ts +++ b/lib/monitoring/lib/client.ts @@ -48,6 +48,10 @@ export class MonitoringClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/monitoring/package.json b/lib/monitoring/package.json index a0ab3b64ed..3222e575ab 100644 --- a/lib/monitoring/package.json +++ b/lib/monitoring/package.json @@ -1,6 +1,6 @@ { "name": "oci-monitoring", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Monitoring", "repository": { "type": "git", diff --git a/lib/mysql/lib/client.ts b/lib/mysql/lib/client.ts index 4d4788f2ae..9bf0a74df1 100644 --- a/lib/mysql/lib/client.ts +++ b/lib/mysql/lib/client.ts @@ -49,6 +49,10 @@ export class ChannelsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -657,6 +661,10 @@ export class DbBackupsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1125,6 +1133,10 @@ export class DbSystemClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -3001,6 +3013,10 @@ export class MysqlaasClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -3614,6 +3630,10 @@ export class WorkRequestsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/mysql/package.json b/lib/mysql/package.json index 79271f7566..903135a936 100644 --- a/lib/mysql/package.json +++ b/lib/mysql/package.json @@ -1,6 +1,6 @@ { "name": "oci-mysql", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Mysql ", "repository": { "type": "git", diff --git a/lib/networkloadbalancer/lib/client.ts b/lib/networkloadbalancer/lib/client.ts index 70c78da505..c7b283a3d0 100644 --- a/lib/networkloadbalancer/lib/client.ts +++ b/lib/networkloadbalancer/lib/client.ts @@ -45,6 +45,10 @@ export class NetworkLoadBalancerClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/networkloadbalancer/package.json b/lib/networkloadbalancer/package.json index 73c23fd5de..a254956f62 100644 --- a/lib/networkloadbalancer/package.json +++ b/lib/networkloadbalancer/package.json @@ -1,6 +1,6 @@ { "name": "oci-networkloadbalancer", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Network Load Balancer Service", "repository": { "type": "git", diff --git a/lib/nosql/lib/client.ts b/lib/nosql/lib/client.ts index 56bb8b4d38..c67f9cb5a9 100644 --- a/lib/nosql/lib/client.ts +++ b/lib/nosql/lib/client.ts @@ -48,6 +48,10 @@ export class NosqlClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/nosql/package.json b/lib/nosql/package.json index f9a074f53a..114373cf04 100644 --- a/lib/nosql/package.json +++ b/lib/nosql/package.json @@ -1,6 +1,6 @@ { "name": "oci-nosql", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Nosql Service", "repository": { "type": "git", diff --git a/lib/objectstorage/lib/client.ts b/lib/objectstorage/lib/client.ts index 3cabfb5632..274e6597ab 100644 --- a/lib/objectstorage/lib/client.ts +++ b/lib/objectstorage/lib/client.ts @@ -53,6 +53,10 @@ export class ObjectStorageClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/objectstorage/package.json b/lib/objectstorage/package.json index a75e4a0359..e6a6abccb3 100644 --- a/lib/objectstorage/package.json +++ b/lib/objectstorage/package.json @@ -1,6 +1,6 @@ { "name": "oci-objectstorage", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for ObjectStorage", "repository": { "type": "git", diff --git a/lib/oce/lib/client.ts b/lib/oce/lib/client.ts index 962f62e68e..bfe3e3f926 100644 --- a/lib/oce/lib/client.ts +++ b/lib/oce/lib/client.ts @@ -45,6 +45,10 @@ export class OceInstanceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/oce/package.json b/lib/oce/package.json index ef97e32472..d276be55a3 100644 --- a/lib/oce/package.json +++ b/lib/oce/package.json @@ -1,6 +1,6 @@ { "name": "oci-oce", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for OCE Service", "repository": { "type": "git", diff --git a/lib/ocvp/lib/client.ts b/lib/ocvp/lib/client.ts index 5096fdf38c..b305e43b52 100644 --- a/lib/ocvp/lib/client.ts +++ b/lib/ocvp/lib/client.ts @@ -47,6 +47,10 @@ export class EsxiHostClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -513,6 +517,10 @@ export class SddcClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1428,6 +1436,10 @@ export class WorkRequestClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/ocvp/package.json b/lib/ocvp/package.json index b392dd1e53..660da8fb3b 100644 --- a/lib/ocvp/package.json +++ b/lib/ocvp/package.json @@ -1,6 +1,6 @@ { "name": "oci-ocvp", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Ocvp Service", "repository": { "type": "git", diff --git a/lib/oda/lib/client.ts b/lib/oda/lib/client.ts index 048d48f367..8b03c3f7f6 100644 --- a/lib/oda/lib/client.ts +++ b/lib/oda/lib/client.ts @@ -46,6 +46,10 @@ export class OdaClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/oda/package.json b/lib/oda/package.json index c420438086..29df885879 100644 --- a/lib/oda/package.json +++ b/lib/oda/package.json @@ -1,6 +1,6 @@ { "name": "oci-oda", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Oda Service", "repository": { "type": "git", diff --git a/lib/ons/lib/client.ts b/lib/ons/lib/client.ts index a95f20f47e..98ac728279 100644 --- a/lib/ons/lib/client.ts +++ b/lib/ons/lib/client.ts @@ -46,6 +46,10 @@ export class NotificationControlPlaneClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -587,6 +591,10 @@ export class NotificationDataPlaneClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/ons/package.json b/lib/ons/package.json index 72467a5de2..e4fd465179 100644 --- a/lib/ons/package.json +++ b/lib/ons/package.json @@ -1,6 +1,6 @@ { "name": "oci-ons", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for ONS", "repository": { "type": "git", diff --git a/lib/operatoraccesscontrol/lib/client.ts b/lib/operatoraccesscontrol/lib/client.ts index f6d5504dc9..204f3ecca2 100644 --- a/lib/operatoraccesscontrol/lib/client.ts +++ b/lib/operatoraccesscontrol/lib/client.ts @@ -51,6 +51,10 @@ export class AccessRequestsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -565,6 +569,10 @@ export class OperatorActionsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -782,6 +790,10 @@ export class OperatorControlClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1299,6 +1311,10 @@ export class OperatorControlAssignmentClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/operatoraccesscontrol/package.json b/lib/operatoraccesscontrol/package.json index a9f5e1293a..31747e09d8 100644 --- a/lib/operatoraccesscontrol/package.json +++ b/lib/operatoraccesscontrol/package.json @@ -1,6 +1,6 @@ { "name": "oci-operatoraccesscontrol", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Operator Access Control Service", "repository": { "type": "git", diff --git a/lib/opsi/lib/client.ts b/lib/opsi/lib/client.ts index 2e05e0a4a9..ad8b0d2249 100644 --- a/lib/opsi/lib/client.ts +++ b/lib/opsi/lib/client.ts @@ -48,6 +48,10 @@ export class OperationsInsightsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/opsi/package.json b/lib/opsi/package.json index fbc6dd4824..3fe5a3a87a 100644 --- a/lib/opsi/package.json +++ b/lib/opsi/package.json @@ -1,6 +1,6 @@ { "name": "oci-opsi", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Opsi Service", "repository": { "type": "git", diff --git a/lib/optimizer/lib/client.ts b/lib/optimizer/lib/client.ts index 29b2273330..9c1443829a 100644 --- a/lib/optimizer/lib/client.ts +++ b/lib/optimizer/lib/client.ts @@ -44,6 +44,10 @@ export class OptimizerClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/optimizer/package.json b/lib/optimizer/package.json index d6189e5993..814dc126b9 100644 --- a/lib/optimizer/package.json +++ b/lib/optimizer/package.json @@ -1,6 +1,6 @@ { "name": "oci-optimizer", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Optimizer Service", "repository": { "type": "git", diff --git a/lib/osmanagement/lib/client.ts b/lib/osmanagement/lib/client.ts index 38fde1acd0..e82c0fdbbe 100644 --- a/lib/osmanagement/lib/client.ts +++ b/lib/osmanagement/lib/client.ts @@ -47,6 +47,10 @@ export class OsManagementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/osmanagement/package.json b/lib/osmanagement/package.json index c75b5476b8..a2de5b392a 100644 --- a/lib/osmanagement/package.json +++ b/lib/osmanagement/package.json @@ -1,6 +1,6 @@ { "name": "oci-osmanagement", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for OS Management", "repository": { "type": "git", diff --git a/lib/resourcemanager/lib/client.ts b/lib/resourcemanager/lib/client.ts index 866c973e9c..940f1f80bc 100644 --- a/lib/resourcemanager/lib/client.ts +++ b/lib/resourcemanager/lib/client.ts @@ -49,6 +49,10 @@ export class ResourceManagerClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/resourcemanager/package.json b/lib/resourcemanager/package.json index bd3d6af153..8a55c8b60f 100644 --- a/lib/resourcemanager/package.json +++ b/lib/resourcemanager/package.json @@ -1,6 +1,6 @@ { "name": "oci-resourcemanager", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Resource manager Service", "repository": { "type": "git", diff --git a/lib/resourcesearch/lib/client.ts b/lib/resourcesearch/lib/client.ts index 24ff47e783..96d34730b6 100644 --- a/lib/resourcesearch/lib/client.ts +++ b/lib/resourcesearch/lib/client.ts @@ -43,6 +43,10 @@ export class ResourceSearchClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/resourcesearch/package.json b/lib/resourcesearch/package.json index cfb6166eec..3f90a44da6 100644 --- a/lib/resourcesearch/package.json +++ b/lib/resourcesearch/package.json @@ -1,6 +1,6 @@ { "name": "oci-resourcesearch", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for resource research Service", "repository": { "type": "git", diff --git a/lib/rover/lib/client.ts b/lib/rover/lib/client.ts index 2fd95966c3..4ade3a28cf 100644 --- a/lib/rover/lib/client.ts +++ b/lib/rover/lib/client.ts @@ -46,6 +46,10 @@ export class RoverClusterClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -616,6 +620,10 @@ export class RoverEntitlementClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1131,6 +1139,10 @@ export class RoverNodeClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/rover/package.json b/lib/rover/package.json index fdb0f0dd2b..7125528072 100644 --- a/lib/rover/package.json +++ b/lib/rover/package.json @@ -1,6 +1,6 @@ { "name": "oci-rover", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Rover Service", "repository": { "type": "git", diff --git a/lib/sch/lib/client.ts b/lib/sch/lib/client.ts index 5155175913..fb611b86bd 100644 --- a/lib/sch/lib/client.ts +++ b/lib/sch/lib/client.ts @@ -48,6 +48,10 @@ export class ServiceConnectorClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/sch/package.json b/lib/sch/package.json index 550f6596c3..099620f84f 100644 --- a/lib/sch/package.json +++ b/lib/sch/package.json @@ -1,6 +1,6 @@ { "name": "oci-sch", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Sch Service", "repository": { "type": "git", diff --git a/lib/secrets/lib/client.ts b/lib/secrets/lib/client.ts index b2a33e7c39..4e5dfd5565 100644 --- a/lib/secrets/lib/client.ts +++ b/lib/secrets/lib/client.ts @@ -44,6 +44,10 @@ export class SecretsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/secrets/package.json b/lib/secrets/package.json index 8a5a3ab88b..7e211fdbe3 100644 --- a/lib/secrets/package.json +++ b/lib/secrets/package.json @@ -1,6 +1,6 @@ { "name": "oci-secrets", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Secrets Service", "repository": { "type": "git", diff --git a/lib/servicecatalog/lib/client.ts b/lib/servicecatalog/lib/client.ts index 5439ef1c82..f87322478d 100644 --- a/lib/servicecatalog/lib/client.ts +++ b/lib/servicecatalog/lib/client.ts @@ -45,6 +45,10 @@ export class ServiceCatalogClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/servicecatalog/package.json b/lib/servicecatalog/package.json index 855c84298c..b6c0135e2c 100644 --- a/lib/servicecatalog/package.json +++ b/lib/servicecatalog/package.json @@ -1,6 +1,6 @@ { "name": "oci-servicecatalog", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Service Catalog Service", "repository": { "type": "git", diff --git a/lib/streaming/lib/client.ts b/lib/streaming/lib/client.ts index 0ee7a1f561..6c3ba8b433 100644 --- a/lib/streaming/lib/client.ts +++ b/lib/streaming/lib/client.ts @@ -44,6 +44,10 @@ export class StreamClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); } @@ -611,6 +615,10 @@ export class StreamAdminClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/streaming/package.json b/lib/streaming/package.json index 894a6e145a..8384421e3a 100644 --- a/lib/streaming/package.json +++ b/lib/streaming/package.json @@ -1,6 +1,6 @@ { "name": "oci-streaming", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Streaming", "repository": { "type": "git", diff --git a/lib/tenantmanagercontrolplane/lib/client.ts b/lib/tenantmanagercontrolplane/lib/client.ts index ccae34681a..ed42223be2 100644 --- a/lib/tenantmanagercontrolplane/lib/client.ts +++ b/lib/tenantmanagercontrolplane/lib/client.ts @@ -50,6 +50,10 @@ export class DomainClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -494,6 +498,10 @@ export class DomainGovernanceClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -938,6 +946,10 @@ export class LinkClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1234,6 +1246,10 @@ export class OrdersClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1445,6 +1461,10 @@ export class RecipientInvitationClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -1890,6 +1910,10 @@ export class SenderInvitationClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -2345,6 +2369,10 @@ export class WorkRequestClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/tenantmanagercontrolplane/package.json b/lib/tenantmanagercontrolplane/package.json index d3fc01cb97..5a71af3651 100644 --- a/lib/tenantmanagercontrolplane/package.json +++ b/lib/tenantmanagercontrolplane/package.json @@ -1,6 +1,6 @@ { "name": "oci-tenantmanagercontrolplane", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Tenant Manager Control Plane Service", "repository": { "type": "git", diff --git a/lib/usageapi/lib/client.ts b/lib/usageapi/lib/client.ts index 63a78b30b6..3256d1c346 100644 --- a/lib/usageapi/lib/client.ts +++ b/lib/usageapi/lib/client.ts @@ -42,6 +42,10 @@ export class UsageapiClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/usageapi/package.json b/lib/usageapi/package.json index cc1ed21861..b22b076c65 100644 --- a/lib/usageapi/package.json +++ b/lib/usageapi/package.json @@ -1,6 +1,6 @@ { "name": "oci-usageapi", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Usage Api Service", "repository": { "type": "git", diff --git a/lib/vault/lib/client.ts b/lib/vault/lib/client.ts index 7b36feb1d3..439088f2a2 100644 --- a/lib/vault/lib/client.ts +++ b/lib/vault/lib/client.ts @@ -45,6 +45,10 @@ export class VaultsClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/vault/package.json b/lib/vault/package.json index 5a09ad270d..a294a38142 100644 --- a/lib/vault/package.json +++ b/lib/vault/package.json @@ -1,6 +1,6 @@ { "name": "oci-vault", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Vault Service", "repository": { "type": "git", diff --git a/lib/vulnerabilityscanning/lib/client.ts b/lib/vulnerabilityscanning/lib/client.ts index 39465af4b3..9f30562eac 100644 --- a/lib/vulnerabilityscanning/lib/client.ts +++ b/lib/vulnerabilityscanning/lib/client.ts @@ -44,6 +44,10 @@ export class VulnerabilityScanningClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/vulnerabilityscanning/package.json b/lib/vulnerabilityscanning/package.json index 8f8778aa8a..6918abab8d 100644 --- a/lib/vulnerabilityscanning/package.json +++ b/lib/vulnerabilityscanning/package.json @@ -1,6 +1,6 @@ { "name": "oci-vulnerabilityscanning", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for Vulnerability Scanning Service", "repository": { "type": "git", diff --git a/lib/waas/lib/client.ts b/lib/waas/lib/client.ts index bc477d6559..b5c120fc44 100644 --- a/lib/waas/lib/client.ts +++ b/lib/waas/lib/client.ts @@ -48,6 +48,10 @@ export class RedirectClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); @@ -575,6 +579,10 @@ export class WaasClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/waas/package.json b/lib/waas/package.json index bd1940a12e..d2ae471e9d 100644 --- a/lib/waas/package.json +++ b/lib/waas/package.json @@ -1,6 +1,6 @@ { "name": "oci-waas", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for WAAS", "repository": { "type": "git", diff --git a/lib/workrequests/lib/client.ts b/lib/workrequests/lib/client.ts index 91fbf813fa..55e598df27 100644 --- a/lib/workrequests/lib/client.ts +++ b/lib/workrequests/lib/client.ts @@ -51,6 +51,10 @@ export class WorkRequestClient { ? clientConfiguration.circuitBreaker!.circuit : null; } + // if circuit breaker is not created, check if circuit breaker system is enabled to use default circuit breaker + if (!this._circuitBreaker && common.utils.isCircuitBreakerSystemEnabled(clientConfiguration!)) { + this._circuitBreaker = new common.CircuitBreaker().circuit; + } this._httpClient = params.httpClient || new common.FetchHttpClient(requestSigner, this._circuitBreaker); diff --git a/lib/workrequests/package.json b/lib/workrequests/package.json index 60bea3ae59..13b70c1196 100644 --- a/lib/workrequests/package.json +++ b/lib/workrequests/package.json @@ -1,6 +1,6 @@ { "name": "oci-workrequests", - "version": "1.23.0", + "version": "2.0.0", "description": "OCI NodeJS client for WorkRequests", "repository": { "type": "git", diff --git a/package.json b/package.json index d8a65fe3f1..d98394127f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "oci-sdk", - "version": "1.23.0", + "version": "2.0.0", "author": { "name": "Oracle Cloud Infrastructure", "email": ""