diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index e0f3d7e0ac..7897934a00 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -3,6 +3,18 @@ Change Log
All notable changes to this project will be documented in this file.
The format is based on `Keep a Changelog `_.
+====================
+2.10.2 - 2020-01-28
+====================
+
+Added
+-----
+* Support for the Application Migration service
+* Support for the Data Flow service
+* Support for the Data Catalog service
+* Support for cross-shape Data Guard in the Database service
+* Support for offline data export in the Data Transfer service
+
====================
2.10.1 - 2020-01-21
====================
diff --git a/README-development.rst b/README-development.rst
index 6390bec5a9..4fc24e50b8 100644
--- a/README-development.rst
+++ b/README-development.rst
@@ -25,16 +25,16 @@ __ https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/sdkconfig.htm
Running Tests
=============
-The SDK uses `pytest` as its test framework. You can run tests against Python 2.7, Python 3.5 and Python 3.6 using the `tox` command. Note that this requires that you have those versions of Python installed,
+The SDK uses `pytest` as its test framework. You can run tests against Python 3.5 and Python 3.6 using the `tox` command. Note that this requires that you have those versions of Python installed,
otherwise you must pass `-e` or run tests directly:
.. code-block:: sh
- # This will run tests against all configured Pythons in tox.ini (currently 2.7, 3.5 and 3.6). You need to have those versions installed
+ # This will run tests against all configured Pythons in tox.ini (currently 3.5 and 3.6). You need to have those versions installed
tox
# This will run tests against a specific Python versions
- tox -e py27
+ tox -e py36
If you wish to run an individual test then you can run:
diff --git a/README.rst b/README.rst
index 065ab0d50a..479f0ea2de 100644
--- a/README.rst
+++ b/README.rst
@@ -5,7 +5,7 @@ Oracle Cloud Infrastructure Python SDK
About
=====
-This is the Python SDK for Oracle Cloud Infrastructure. Python 2.7+ and 3.5+ are supported.
+This is the Python SDK for Oracle Cloud Infrastructure. Python 3.5 and 3.6 are supported.
.. code-block:: pycon
diff --git a/docs/api/application_migration.rst b/docs/api/application_migration.rst
new file mode 100644
index 0000000000..8dbb33b411
--- /dev/null
+++ b/docs/api/application_migration.rst
@@ -0,0 +1,50 @@
+Application Migration
+=====================
+
+.. autosummary::
+ :toctree: application_migration/client
+ :nosignatures:
+ :template: autosummary/service_client.rst
+
+ oci.application_migration.ApplicationMigrationClient
+ oci.application_migration.ApplicationMigrationClientCompositeOperations
+
+--------
+ Models
+--------
+
+.. autosummary::
+ :toctree: application_migration/models
+ :nosignatures:
+ :template: autosummary/model_class.rst
+
+ oci.application_migration.models.AuthorizationDetails
+ oci.application_migration.models.ChangeCompartmentDetails
+ oci.application_migration.models.ConfigurationField
+ oci.application_migration.models.CreateMigrationDetails
+ oci.application_migration.models.CreateSourceDetails
+ oci.application_migration.models.DiscoveryDetails
+ oci.application_migration.models.IcsDiscoveryDetails
+ oci.application_migration.models.InternalAuthorizationDetails
+ oci.application_migration.models.InternalSourceDetails
+ oci.application_migration.models.JcsDiscoveryDetails
+ oci.application_migration.models.Migration
+ oci.application_migration.models.MigrationSummary
+ oci.application_migration.models.OacDiscoveryDetails
+ oci.application_migration.models.OcicAuthorizationDetails
+ oci.application_migration.models.OcicSourceDetails
+ oci.application_migration.models.OicDiscoveryDetails
+ oci.application_migration.models.PcsDiscoveryDetails
+ oci.application_migration.models.SoacsDiscoveryDetails
+ oci.application_migration.models.Source
+ oci.application_migration.models.SourceApplication
+ oci.application_migration.models.SourceApplicationSummary
+ oci.application_migration.models.SourceDetails
+ oci.application_migration.models.SourceSummary
+ oci.application_migration.models.UpdateMigrationDetails
+ oci.application_migration.models.UpdateSourceDetails
+ oci.application_migration.models.WorkRequest
+ oci.application_migration.models.WorkRequestError
+ oci.application_migration.models.WorkRequestLogEntry
+ oci.application_migration.models.WorkRequestResource
+ oci.application_migration.models.WorkRequestSummary
diff --git a/docs/api/application_migration/client/oci.application_migration.ApplicationMigrationClient.rst b/docs/api/application_migration/client/oci.application_migration.ApplicationMigrationClient.rst
new file mode 100644
index 0000000000..fdd012fa57
--- /dev/null
+++ b/docs/api/application_migration/client/oci.application_migration.ApplicationMigrationClient.rst
@@ -0,0 +1,8 @@
+ApplicationMigrationClient
+==========================
+
+.. currentmodule:: oci.application_migration
+
+.. autoclass:: ApplicationMigrationClient
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/application_migration/client/oci.application_migration.ApplicationMigrationClientCompositeOperations.rst b/docs/api/application_migration/client/oci.application_migration.ApplicationMigrationClientCompositeOperations.rst
new file mode 100644
index 0000000000..9c071b5d5a
--- /dev/null
+++ b/docs/api/application_migration/client/oci.application_migration.ApplicationMigrationClientCompositeOperations.rst
@@ -0,0 +1,8 @@
+ApplicationMigrationClientCompositeOperations
+=============================================
+
+.. currentmodule:: oci.application_migration
+
+.. autoclass:: ApplicationMigrationClientCompositeOperations
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.AuthorizationDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.AuthorizationDetails.rst
new file mode 100644
index 0000000000..ec13423e41
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.AuthorizationDetails.rst
@@ -0,0 +1,11 @@
+AuthorizationDetails
+====================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: AuthorizationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.ChangeCompartmentDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.ChangeCompartmentDetails.rst
new file mode 100644
index 0000000000..e3ddbeeacb
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.ChangeCompartmentDetails.rst
@@ -0,0 +1,11 @@
+ChangeCompartmentDetails
+========================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: ChangeCompartmentDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.ConfigurationField.rst b/docs/api/application_migration/models/oci.application_migration.models.ConfigurationField.rst
new file mode 100644
index 0000000000..4d92d1e76a
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.ConfigurationField.rst
@@ -0,0 +1,11 @@
+ConfigurationField
+==================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: ConfigurationField
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.CreateMigrationDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.CreateMigrationDetails.rst
new file mode 100644
index 0000000000..810a3dd147
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.CreateMigrationDetails.rst
@@ -0,0 +1,11 @@
+CreateMigrationDetails
+======================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: CreateMigrationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.CreateSourceDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.CreateSourceDetails.rst
new file mode 100644
index 0000000000..0683f87706
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.CreateSourceDetails.rst
@@ -0,0 +1,11 @@
+CreateSourceDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: CreateSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.DiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.DiscoveryDetails.rst
new file mode 100644
index 0000000000..f4384c2167
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.DiscoveryDetails.rst
@@ -0,0 +1,11 @@
+DiscoveryDetails
+================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: DiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.IcsDiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.IcsDiscoveryDetails.rst
new file mode 100644
index 0000000000..cc4a080bde
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.IcsDiscoveryDetails.rst
@@ -0,0 +1,11 @@
+IcsDiscoveryDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: IcsDiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.InternalAuthorizationDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.InternalAuthorizationDetails.rst
new file mode 100644
index 0000000000..2e9dd3344c
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.InternalAuthorizationDetails.rst
@@ -0,0 +1,11 @@
+InternalAuthorizationDetails
+============================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: InternalAuthorizationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.InternalSourceDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.InternalSourceDetails.rst
new file mode 100644
index 0000000000..23cbbb4340
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.InternalSourceDetails.rst
@@ -0,0 +1,11 @@
+InternalSourceDetails
+=====================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: InternalSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.JcsDiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.JcsDiscoveryDetails.rst
new file mode 100644
index 0000000000..1446197c52
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.JcsDiscoveryDetails.rst
@@ -0,0 +1,11 @@
+JcsDiscoveryDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: JcsDiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.Migration.rst b/docs/api/application_migration/models/oci.application_migration.models.Migration.rst
new file mode 100644
index 0000000000..df9e91f905
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.Migration.rst
@@ -0,0 +1,11 @@
+Migration
+=========
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: Migration
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.MigrationSummary.rst b/docs/api/application_migration/models/oci.application_migration.models.MigrationSummary.rst
new file mode 100644
index 0000000000..94f9d987fb
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.MigrationSummary.rst
@@ -0,0 +1,11 @@
+MigrationSummary
+================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: MigrationSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.OacDiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.OacDiscoveryDetails.rst
new file mode 100644
index 0000000000..f6605a01a3
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.OacDiscoveryDetails.rst
@@ -0,0 +1,11 @@
+OacDiscoveryDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: OacDiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.OcicAuthorizationDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.OcicAuthorizationDetails.rst
new file mode 100644
index 0000000000..05c9514029
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.OcicAuthorizationDetails.rst
@@ -0,0 +1,11 @@
+OcicAuthorizationDetails
+========================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: OcicAuthorizationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.OcicSourceDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.OcicSourceDetails.rst
new file mode 100644
index 0000000000..fc9d69dc7c
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.OcicSourceDetails.rst
@@ -0,0 +1,11 @@
+OcicSourceDetails
+=================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: OcicSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.OicDiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.OicDiscoveryDetails.rst
new file mode 100644
index 0000000000..2fa627563c
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.OicDiscoveryDetails.rst
@@ -0,0 +1,11 @@
+OicDiscoveryDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: OicDiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.PcsDiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.PcsDiscoveryDetails.rst
new file mode 100644
index 0000000000..53ec0cd6d6
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.PcsDiscoveryDetails.rst
@@ -0,0 +1,11 @@
+PcsDiscoveryDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: PcsDiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.SoacsDiscoveryDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.SoacsDiscoveryDetails.rst
new file mode 100644
index 0000000000..e252112921
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.SoacsDiscoveryDetails.rst
@@ -0,0 +1,11 @@
+SoacsDiscoveryDetails
+=====================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: SoacsDiscoveryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.Source.rst b/docs/api/application_migration/models/oci.application_migration.models.Source.rst
new file mode 100644
index 0000000000..5da87b71f0
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.Source.rst
@@ -0,0 +1,11 @@
+Source
+======
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: Source
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.SourceApplication.rst b/docs/api/application_migration/models/oci.application_migration.models.SourceApplication.rst
new file mode 100644
index 0000000000..b422c4ccdd
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.SourceApplication.rst
@@ -0,0 +1,11 @@
+SourceApplication
+=================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: SourceApplication
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.SourceApplicationSummary.rst b/docs/api/application_migration/models/oci.application_migration.models.SourceApplicationSummary.rst
new file mode 100644
index 0000000000..6ff22508fc
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.SourceApplicationSummary.rst
@@ -0,0 +1,11 @@
+SourceApplicationSummary
+========================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: SourceApplicationSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.SourceDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.SourceDetails.rst
new file mode 100644
index 0000000000..6261584a70
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.SourceDetails.rst
@@ -0,0 +1,11 @@
+SourceDetails
+=============
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: SourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.SourceSummary.rst b/docs/api/application_migration/models/oci.application_migration.models.SourceSummary.rst
new file mode 100644
index 0000000000..a96a4d0964
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.SourceSummary.rst
@@ -0,0 +1,11 @@
+SourceSummary
+=============
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: SourceSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.UpdateMigrationDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.UpdateMigrationDetails.rst
new file mode 100644
index 0000000000..021d0b9744
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.UpdateMigrationDetails.rst
@@ -0,0 +1,11 @@
+UpdateMigrationDetails
+======================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: UpdateMigrationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.UpdateSourceDetails.rst b/docs/api/application_migration/models/oci.application_migration.models.UpdateSourceDetails.rst
new file mode 100644
index 0000000000..4f0807b829
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.UpdateSourceDetails.rst
@@ -0,0 +1,11 @@
+UpdateSourceDetails
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: UpdateSourceDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.WorkRequest.rst b/docs/api/application_migration/models/oci.application_migration.models.WorkRequest.rst
new file mode 100644
index 0000000000..8a721c0557
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.WorkRequest.rst
@@ -0,0 +1,11 @@
+WorkRequest
+===========
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: WorkRequest
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.WorkRequestError.rst b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestError.rst
new file mode 100644
index 0000000000..d39a941444
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestError.rst
@@ -0,0 +1,11 @@
+WorkRequestError
+================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: WorkRequestError
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.WorkRequestLogEntry.rst b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestLogEntry.rst
new file mode 100644
index 0000000000..6ff65700f3
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestLogEntry.rst
@@ -0,0 +1,11 @@
+WorkRequestLogEntry
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: WorkRequestLogEntry
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.WorkRequestResource.rst b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestResource.rst
new file mode 100644
index 0000000000..78f507dfe4
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestResource.rst
@@ -0,0 +1,11 @@
+WorkRequestResource
+===================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: WorkRequestResource
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/application_migration/models/oci.application_migration.models.WorkRequestSummary.rst b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestSummary.rst
new file mode 100644
index 0000000000..dcf35bd5ac
--- /dev/null
+++ b/docs/api/application_migration/models/oci.application_migration.models.WorkRequestSummary.rst
@@ -0,0 +1,11 @@
+WorkRequestSummary
+==================
+
+.. currentmodule:: oci.application_migration.models
+
+.. autoclass:: WorkRequestSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog.rst b/docs/api/data_catalog.rst
new file mode 100644
index 0000000000..2e01a5a751
--- /dev/null
+++ b/docs/api/data_catalog.rst
@@ -0,0 +1,128 @@
+Data Catalog
+============
+
+.. autosummary::
+ :toctree: data_catalog/client
+ :nosignatures:
+ :template: autosummary/service_client.rst
+
+ oci.data_catalog.DataCatalogClient
+ oci.data_catalog.DataCatalogClientCompositeOperations
+
+--------
+ Models
+--------
+
+.. autosummary::
+ :toctree: data_catalog/models
+ :nosignatures:
+ :template: autosummary/model_class.rst
+
+ oci.data_catalog.models.Attribute
+ oci.data_catalog.models.AttributeCollection
+ oci.data_catalog.models.AttributeSummary
+ oci.data_catalog.models.AttributeTag
+ oci.data_catalog.models.AttributeTagCollection
+ oci.data_catalog.models.AttributeTagSummary
+ oci.data_catalog.models.BasePermissionsSummary
+ oci.data_catalog.models.BaseTag
+ oci.data_catalog.models.BaseTagSummary
+ oci.data_catalog.models.Catalog
+ oci.data_catalog.models.CatalogPermissionsSummary
+ oci.data_catalog.models.CatalogSummary
+ oci.data_catalog.models.ChangeCatalogCompartmentDetails
+ oci.data_catalog.models.Connection
+ oci.data_catalog.models.ConnectionAliasSummary
+ oci.data_catalog.models.ConnectionCollection
+ oci.data_catalog.models.ConnectionSummary
+ oci.data_catalog.models.CreateAttributeDetails
+ oci.data_catalog.models.CreateCatalogDetails
+ oci.data_catalog.models.CreateConnectionDetails
+ oci.data_catalog.models.CreateDataAssetDetails
+ oci.data_catalog.models.CreateEntityDetails
+ oci.data_catalog.models.CreateFolderDetails
+ oci.data_catalog.models.CreateGlossaryDetails
+ oci.data_catalog.models.CreateJobDefinitionDetails
+ oci.data_catalog.models.CreateJobDetails
+ oci.data_catalog.models.CreateJobExecutionDetails
+ oci.data_catalog.models.CreateTagDetails
+ oci.data_catalog.models.CreateTermDetails
+ oci.data_catalog.models.CreateTermRelationshipDetails
+ oci.data_catalog.models.DataAsset
+ oci.data_catalog.models.DataAssetCollection
+ oci.data_catalog.models.DataAssetPermissionsSummary
+ oci.data_catalog.models.DataAssetSummary
+ oci.data_catalog.models.DataAssetTag
+ oci.data_catalog.models.DataAssetTagCollection
+ oci.data_catalog.models.DataAssetTagSummary
+ oci.data_catalog.models.Entity
+ oci.data_catalog.models.EntityCollection
+ oci.data_catalog.models.EntitySummary
+ oci.data_catalog.models.EntityTag
+ oci.data_catalog.models.EntityTagCollection
+ oci.data_catalog.models.EntityTagSummary
+ oci.data_catalog.models.Folder
+ oci.data_catalog.models.FolderCollection
+ oci.data_catalog.models.FolderSummary
+ oci.data_catalog.models.FolderTag
+ oci.data_catalog.models.FolderTagCollection
+ oci.data_catalog.models.FolderTagSummary
+ oci.data_catalog.models.Glossary
+ oci.data_catalog.models.GlossaryCollection
+ oci.data_catalog.models.GlossaryPermissionsSummary
+ oci.data_catalog.models.GlossarySummary
+ oci.data_catalog.models.GlossaryTreeElement
+ oci.data_catalog.models.ImportConnectionDetails
+ oci.data_catalog.models.ImportGlossaryDetails
+ oci.data_catalog.models.Job
+ oci.data_catalog.models.JobCollection
+ oci.data_catalog.models.JobDefinition
+ oci.data_catalog.models.JobDefinitionCollection
+ oci.data_catalog.models.JobDefinitionPermissionsSummary
+ oci.data_catalog.models.JobDefinitionScope
+ oci.data_catalog.models.JobDefinitionSummary
+ oci.data_catalog.models.JobExecution
+ oci.data_catalog.models.JobExecutionCollection
+ oci.data_catalog.models.JobExecutionSummary
+ oci.data_catalog.models.JobLog
+ oci.data_catalog.models.JobLogCollection
+ oci.data_catalog.models.JobLogSummary
+ oci.data_catalog.models.JobMetric
+ oci.data_catalog.models.JobMetricCollection
+ oci.data_catalog.models.JobMetricSummary
+ oci.data_catalog.models.JobSummary
+ oci.data_catalog.models.ParseConnectionDetails
+ oci.data_catalog.models.PropertyDefinition
+ oci.data_catalog.models.SearchCriteria
+ oci.data_catalog.models.SearchResult
+ oci.data_catalog.models.SearchResultCollection
+ oci.data_catalog.models.SearchTagSummary
+ oci.data_catalog.models.SearchTermSummary
+ oci.data_catalog.models.Term
+ oci.data_catalog.models.TermAssociatedObject
+ oci.data_catalog.models.TermCollection
+ oci.data_catalog.models.TermRelationship
+ oci.data_catalog.models.TermRelationshipCollection
+ oci.data_catalog.models.TermRelationshipSummary
+ oci.data_catalog.models.TermSummary
+ oci.data_catalog.models.Type
+ oci.data_catalog.models.TypeCollection
+ oci.data_catalog.models.TypeSummary
+ oci.data_catalog.models.UpdateAttributeDetails
+ oci.data_catalog.models.UpdateCatalogDetails
+ oci.data_catalog.models.UpdateConnectionDetails
+ oci.data_catalog.models.UpdateDataAssetDetails
+ oci.data_catalog.models.UpdateEntityDetails
+ oci.data_catalog.models.UpdateFolderDetails
+ oci.data_catalog.models.UpdateGlossaryDetails
+ oci.data_catalog.models.UpdateJobDefinitionDetails
+ oci.data_catalog.models.UpdateJobDetails
+ oci.data_catalog.models.UpdateTermDetails
+ oci.data_catalog.models.UpdateTermRelationshipDetails
+ oci.data_catalog.models.UploadCredentialsDetails
+ oci.data_catalog.models.ValidateConnectionDetails
+ oci.data_catalog.models.ValidateConnectionResult
+ oci.data_catalog.models.WorkRequest
+ oci.data_catalog.models.WorkRequestError
+ oci.data_catalog.models.WorkRequestLog
+ oci.data_catalog.models.WorkRequestResource
diff --git a/docs/api/data_catalog/client/oci.data_catalog.DataCatalogClient.rst b/docs/api/data_catalog/client/oci.data_catalog.DataCatalogClient.rst
new file mode 100644
index 0000000000..fdcf4aad6b
--- /dev/null
+++ b/docs/api/data_catalog/client/oci.data_catalog.DataCatalogClient.rst
@@ -0,0 +1,8 @@
+DataCatalogClient
+=================
+
+.. currentmodule:: oci.data_catalog
+
+.. autoclass:: DataCatalogClient
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/client/oci.data_catalog.DataCatalogClientCompositeOperations.rst b/docs/api/data_catalog/client/oci.data_catalog.DataCatalogClientCompositeOperations.rst
new file mode 100644
index 0000000000..b768a56e25
--- /dev/null
+++ b/docs/api/data_catalog/client/oci.data_catalog.DataCatalogClientCompositeOperations.rst
@@ -0,0 +1,8 @@
+DataCatalogClientCompositeOperations
+====================================
+
+.. currentmodule:: oci.data_catalog
+
+.. autoclass:: DataCatalogClientCompositeOperations
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Attribute.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Attribute.rst
new file mode 100644
index 0000000000..b42546dd69
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Attribute.rst
@@ -0,0 +1,11 @@
+Attribute
+=========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Attribute
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.AttributeCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeCollection.rst
new file mode 100644
index 0000000000..4545b4f9cf
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeCollection.rst
@@ -0,0 +1,11 @@
+AttributeCollection
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: AttributeCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.AttributeSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeSummary.rst
new file mode 100644
index 0000000000..fae1f94bcc
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeSummary.rst
@@ -0,0 +1,11 @@
+AttributeSummary
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: AttributeSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTag.rst b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTag.rst
new file mode 100644
index 0000000000..ea6e2ccda3
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTag.rst
@@ -0,0 +1,11 @@
+AttributeTag
+============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: AttributeTag
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTagCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTagCollection.rst
new file mode 100644
index 0000000000..007e1e1eb6
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTagCollection.rst
@@ -0,0 +1,11 @@
+AttributeTagCollection
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: AttributeTagCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTagSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTagSummary.rst
new file mode 100644
index 0000000000..4b3ea58d25
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.AttributeTagSummary.rst
@@ -0,0 +1,11 @@
+AttributeTagSummary
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: AttributeTagSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.BasePermissionsSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.BasePermissionsSummary.rst
new file mode 100644
index 0000000000..c7b2989536
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.BasePermissionsSummary.rst
@@ -0,0 +1,11 @@
+BasePermissionsSummary
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: BasePermissionsSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.BaseTag.rst b/docs/api/data_catalog/models/oci.data_catalog.models.BaseTag.rst
new file mode 100644
index 0000000000..c0a48b6d59
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.BaseTag.rst
@@ -0,0 +1,11 @@
+BaseTag
+=======
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: BaseTag
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.BaseTagSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.BaseTagSummary.rst
new file mode 100644
index 0000000000..4d97cb4d69
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.BaseTagSummary.rst
@@ -0,0 +1,11 @@
+BaseTagSummary
+==============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: BaseTagSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Catalog.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Catalog.rst
new file mode 100644
index 0000000000..d4873e1f5b
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Catalog.rst
@@ -0,0 +1,11 @@
+Catalog
+=======
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Catalog
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CatalogPermissionsSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CatalogPermissionsSummary.rst
new file mode 100644
index 0000000000..35a149d4df
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CatalogPermissionsSummary.rst
@@ -0,0 +1,11 @@
+CatalogPermissionsSummary
+=========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CatalogPermissionsSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CatalogSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CatalogSummary.rst
new file mode 100644
index 0000000000..ce9a10602d
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CatalogSummary.rst
@@ -0,0 +1,11 @@
+CatalogSummary
+==============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CatalogSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ChangeCatalogCompartmentDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ChangeCatalogCompartmentDetails.rst
new file mode 100644
index 0000000000..07fdf1d86f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ChangeCatalogCompartmentDetails.rst
@@ -0,0 +1,11 @@
+ChangeCatalogCompartmentDetails
+===============================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ChangeCatalogCompartmentDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Connection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Connection.rst
new file mode 100644
index 0000000000..45dd421e79
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Connection.rst
@@ -0,0 +1,11 @@
+Connection
+==========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Connection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionAliasSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionAliasSummary.rst
new file mode 100644
index 0000000000..dc4f6916cc
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionAliasSummary.rst
@@ -0,0 +1,11 @@
+ConnectionAliasSummary
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ConnectionAliasSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionCollection.rst
new file mode 100644
index 0000000000..2260cf1351
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionCollection.rst
@@ -0,0 +1,11 @@
+ConnectionCollection
+====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ConnectionCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionSummary.rst
new file mode 100644
index 0000000000..0bafc99b00
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ConnectionSummary.rst
@@ -0,0 +1,11 @@
+ConnectionSummary
+=================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ConnectionSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateAttributeDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateAttributeDetails.rst
new file mode 100644
index 0000000000..45b8c8bc48
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateAttributeDetails.rst
@@ -0,0 +1,11 @@
+CreateAttributeDetails
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateAttributeDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateCatalogDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateCatalogDetails.rst
new file mode 100644
index 0000000000..1492795c07
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateCatalogDetails.rst
@@ -0,0 +1,11 @@
+CreateCatalogDetails
+====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateCatalogDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateConnectionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateConnectionDetails.rst
new file mode 100644
index 0000000000..1a7abd08ee
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateConnectionDetails.rst
@@ -0,0 +1,11 @@
+CreateConnectionDetails
+=======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateConnectionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateDataAssetDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateDataAssetDetails.rst
new file mode 100644
index 0000000000..93db4da72d
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateDataAssetDetails.rst
@@ -0,0 +1,11 @@
+CreateDataAssetDetails
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateDataAssetDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateEntityDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateEntityDetails.rst
new file mode 100644
index 0000000000..047d382155
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateEntityDetails.rst
@@ -0,0 +1,11 @@
+CreateEntityDetails
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateEntityDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateFolderDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateFolderDetails.rst
new file mode 100644
index 0000000000..7af690e3bd
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateFolderDetails.rst
@@ -0,0 +1,11 @@
+CreateFolderDetails
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateFolderDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateGlossaryDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateGlossaryDetails.rst
new file mode 100644
index 0000000000..b847279af0
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateGlossaryDetails.rst
@@ -0,0 +1,11 @@
+CreateGlossaryDetails
+=====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateGlossaryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobDefinitionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobDefinitionDetails.rst
new file mode 100644
index 0000000000..23c396179c
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobDefinitionDetails.rst
@@ -0,0 +1,11 @@
+CreateJobDefinitionDetails
+==========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateJobDefinitionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobDetails.rst
new file mode 100644
index 0000000000..79ea17e203
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobDetails.rst
@@ -0,0 +1,11 @@
+CreateJobDetails
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateJobDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobExecutionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobExecutionDetails.rst
new file mode 100644
index 0000000000..0fbcd60271
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateJobExecutionDetails.rst
@@ -0,0 +1,11 @@
+CreateJobExecutionDetails
+=========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateJobExecutionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateTagDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateTagDetails.rst
new file mode 100644
index 0000000000..8ae2b91c71
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateTagDetails.rst
@@ -0,0 +1,11 @@
+CreateTagDetails
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateTagDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateTermDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateTermDetails.rst
new file mode 100644
index 0000000000..6fa914ff9b
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateTermDetails.rst
@@ -0,0 +1,11 @@
+CreateTermDetails
+=================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateTermDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.CreateTermRelationshipDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.CreateTermRelationshipDetails.rst
new file mode 100644
index 0000000000..4be81f0923
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.CreateTermRelationshipDetails.rst
@@ -0,0 +1,11 @@
+CreateTermRelationshipDetails
+=============================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: CreateTermRelationshipDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAsset.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAsset.rst
new file mode 100644
index 0000000000..1e71197cec
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAsset.rst
@@ -0,0 +1,11 @@
+DataAsset
+=========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAsset
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetCollection.rst
new file mode 100644
index 0000000000..1c418a816e
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetCollection.rst
@@ -0,0 +1,11 @@
+DataAssetCollection
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAssetCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetPermissionsSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetPermissionsSummary.rst
new file mode 100644
index 0000000000..c7dedc0578
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetPermissionsSummary.rst
@@ -0,0 +1,11 @@
+DataAssetPermissionsSummary
+===========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAssetPermissionsSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetSummary.rst
new file mode 100644
index 0000000000..e6e7e99a69
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetSummary.rst
@@ -0,0 +1,11 @@
+DataAssetSummary
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAssetSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTag.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTag.rst
new file mode 100644
index 0000000000..cc06d67ed2
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTag.rst
@@ -0,0 +1,11 @@
+DataAssetTag
+============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAssetTag
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTagCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTagCollection.rst
new file mode 100644
index 0000000000..7683545dff
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTagCollection.rst
@@ -0,0 +1,11 @@
+DataAssetTagCollection
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAssetTagCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTagSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTagSummary.rst
new file mode 100644
index 0000000000..248c920198
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.DataAssetTagSummary.rst
@@ -0,0 +1,11 @@
+DataAssetTagSummary
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: DataAssetTagSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Entity.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Entity.rst
new file mode 100644
index 0000000000..57361dbda4
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Entity.rst
@@ -0,0 +1,11 @@
+Entity
+======
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Entity
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.EntityCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.EntityCollection.rst
new file mode 100644
index 0000000000..0c16926803
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.EntityCollection.rst
@@ -0,0 +1,11 @@
+EntityCollection
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: EntityCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.EntitySummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.EntitySummary.rst
new file mode 100644
index 0000000000..3958f1a404
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.EntitySummary.rst
@@ -0,0 +1,11 @@
+EntitySummary
+=============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: EntitySummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.EntityTag.rst b/docs/api/data_catalog/models/oci.data_catalog.models.EntityTag.rst
new file mode 100644
index 0000000000..b04cfd76dc
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.EntityTag.rst
@@ -0,0 +1,11 @@
+EntityTag
+=========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: EntityTag
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.EntityTagCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.EntityTagCollection.rst
new file mode 100644
index 0000000000..4b1e546cf5
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.EntityTagCollection.rst
@@ -0,0 +1,11 @@
+EntityTagCollection
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: EntityTagCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.EntityTagSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.EntityTagSummary.rst
new file mode 100644
index 0000000000..cae9cf937b
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.EntityTagSummary.rst
@@ -0,0 +1,11 @@
+EntityTagSummary
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: EntityTagSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Folder.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Folder.rst
new file mode 100644
index 0000000000..d11b7fdc2f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Folder.rst
@@ -0,0 +1,11 @@
+Folder
+======
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Folder
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.FolderCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.FolderCollection.rst
new file mode 100644
index 0000000000..f1d7e9dc9d
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.FolderCollection.rst
@@ -0,0 +1,11 @@
+FolderCollection
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: FolderCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.FolderSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.FolderSummary.rst
new file mode 100644
index 0000000000..fede2e77e8
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.FolderSummary.rst
@@ -0,0 +1,11 @@
+FolderSummary
+=============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: FolderSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.FolderTag.rst b/docs/api/data_catalog/models/oci.data_catalog.models.FolderTag.rst
new file mode 100644
index 0000000000..7f0efb4748
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.FolderTag.rst
@@ -0,0 +1,11 @@
+FolderTag
+=========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: FolderTag
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.FolderTagCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.FolderTagCollection.rst
new file mode 100644
index 0000000000..fa60beb74f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.FolderTagCollection.rst
@@ -0,0 +1,11 @@
+FolderTagCollection
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: FolderTagCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.FolderTagSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.FolderTagSummary.rst
new file mode 100644
index 0000000000..6b773b9adc
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.FolderTagSummary.rst
@@ -0,0 +1,11 @@
+FolderTagSummary
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: FolderTagSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Glossary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Glossary.rst
new file mode 100644
index 0000000000..cf429a1037
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Glossary.rst
@@ -0,0 +1,11 @@
+Glossary
+========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Glossary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryCollection.rst
new file mode 100644
index 0000000000..e758fbb1fe
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryCollection.rst
@@ -0,0 +1,11 @@
+GlossaryCollection
+==================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: GlossaryCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryPermissionsSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryPermissionsSummary.rst
new file mode 100644
index 0000000000..b9cb4219ce
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryPermissionsSummary.rst
@@ -0,0 +1,11 @@
+GlossaryPermissionsSummary
+==========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: GlossaryPermissionsSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.GlossarySummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.GlossarySummary.rst
new file mode 100644
index 0000000000..45f3f3e34e
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.GlossarySummary.rst
@@ -0,0 +1,11 @@
+GlossarySummary
+===============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: GlossarySummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryTreeElement.rst b/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryTreeElement.rst
new file mode 100644
index 0000000000..35223fcea8
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.GlossaryTreeElement.rst
@@ -0,0 +1,11 @@
+GlossaryTreeElement
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: GlossaryTreeElement
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ImportConnectionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ImportConnectionDetails.rst
new file mode 100644
index 0000000000..4834618478
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ImportConnectionDetails.rst
@@ -0,0 +1,11 @@
+ImportConnectionDetails
+=======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ImportConnectionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ImportGlossaryDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ImportGlossaryDetails.rst
new file mode 100644
index 0000000000..8ef1113828
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ImportGlossaryDetails.rst
@@ -0,0 +1,11 @@
+ImportGlossaryDetails
+=====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ImportGlossaryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Job.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Job.rst
new file mode 100644
index 0000000000..5db9a4ac0d
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Job.rst
@@ -0,0 +1,11 @@
+Job
+===
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Job
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobCollection.rst
new file mode 100644
index 0000000000..bd9a6b3dfd
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobCollection.rst
@@ -0,0 +1,11 @@
+JobCollection
+=============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinition.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinition.rst
new file mode 100644
index 0000000000..e5e037c39c
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinition.rst
@@ -0,0 +1,11 @@
+JobDefinition
+=============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobDefinition
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionCollection.rst
new file mode 100644
index 0000000000..01017131e8
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionCollection.rst
@@ -0,0 +1,11 @@
+JobDefinitionCollection
+=======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobDefinitionCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionPermissionsSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionPermissionsSummary.rst
new file mode 100644
index 0000000000..4354e464a9
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionPermissionsSummary.rst
@@ -0,0 +1,11 @@
+JobDefinitionPermissionsSummary
+===============================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobDefinitionPermissionsSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionScope.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionScope.rst
new file mode 100644
index 0000000000..f253559a4c
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionScope.rst
@@ -0,0 +1,11 @@
+JobDefinitionScope
+==================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobDefinitionScope
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionSummary.rst
new file mode 100644
index 0000000000..e966b6637c
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobDefinitionSummary.rst
@@ -0,0 +1,11 @@
+JobDefinitionSummary
+====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobDefinitionSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobExecution.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobExecution.rst
new file mode 100644
index 0000000000..7e64e10618
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobExecution.rst
@@ -0,0 +1,11 @@
+JobExecution
+============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobExecution
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobExecutionCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobExecutionCollection.rst
new file mode 100644
index 0000000000..f527a1b0c7
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobExecutionCollection.rst
@@ -0,0 +1,11 @@
+JobExecutionCollection
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobExecutionCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobExecutionSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobExecutionSummary.rst
new file mode 100644
index 0000000000..ee106738a9
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobExecutionSummary.rst
@@ -0,0 +1,11 @@
+JobExecutionSummary
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobExecutionSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobLog.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobLog.rst
new file mode 100644
index 0000000000..2953131554
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobLog.rst
@@ -0,0 +1,11 @@
+JobLog
+======
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobLog
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobLogCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobLogCollection.rst
new file mode 100644
index 0000000000..6b195507c3
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobLogCollection.rst
@@ -0,0 +1,11 @@
+JobLogCollection
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobLogCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobLogSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobLogSummary.rst
new file mode 100644
index 0000000000..fecf440cdf
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobLogSummary.rst
@@ -0,0 +1,11 @@
+JobLogSummary
+=============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobLogSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobMetric.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobMetric.rst
new file mode 100644
index 0000000000..edfc431810
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobMetric.rst
@@ -0,0 +1,11 @@
+JobMetric
+=========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobMetric
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobMetricCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobMetricCollection.rst
new file mode 100644
index 0000000000..35caeec486
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobMetricCollection.rst
@@ -0,0 +1,11 @@
+JobMetricCollection
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobMetricCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobMetricSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobMetricSummary.rst
new file mode 100644
index 0000000000..7df50fa55d
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobMetricSummary.rst
@@ -0,0 +1,11 @@
+JobMetricSummary
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobMetricSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.JobSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.JobSummary.rst
new file mode 100644
index 0000000000..7de04dad5b
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.JobSummary.rst
@@ -0,0 +1,11 @@
+JobSummary
+==========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: JobSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ParseConnectionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ParseConnectionDetails.rst
new file mode 100644
index 0000000000..edc491ad6a
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ParseConnectionDetails.rst
@@ -0,0 +1,11 @@
+ParseConnectionDetails
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ParseConnectionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.PropertyDefinition.rst b/docs/api/data_catalog/models/oci.data_catalog.models.PropertyDefinition.rst
new file mode 100644
index 0000000000..3d5bdd7986
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.PropertyDefinition.rst
@@ -0,0 +1,11 @@
+PropertyDefinition
+==================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: PropertyDefinition
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.SearchCriteria.rst b/docs/api/data_catalog/models/oci.data_catalog.models.SearchCriteria.rst
new file mode 100644
index 0000000000..2d7801e2a8
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.SearchCriteria.rst
@@ -0,0 +1,11 @@
+SearchCriteria
+==============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: SearchCriteria
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.SearchResult.rst b/docs/api/data_catalog/models/oci.data_catalog.models.SearchResult.rst
new file mode 100644
index 0000000000..235edada44
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.SearchResult.rst
@@ -0,0 +1,11 @@
+SearchResult
+============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: SearchResult
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.SearchResultCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.SearchResultCollection.rst
new file mode 100644
index 0000000000..0d4104b118
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.SearchResultCollection.rst
@@ -0,0 +1,11 @@
+SearchResultCollection
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: SearchResultCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.SearchTagSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.SearchTagSummary.rst
new file mode 100644
index 0000000000..abd8f68a13
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.SearchTagSummary.rst
@@ -0,0 +1,11 @@
+SearchTagSummary
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: SearchTagSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.SearchTermSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.SearchTermSummary.rst
new file mode 100644
index 0000000000..0c42a0a929
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.SearchTermSummary.rst
@@ -0,0 +1,11 @@
+SearchTermSummary
+=================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: SearchTermSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Term.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Term.rst
new file mode 100644
index 0000000000..bfbab31d54
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Term.rst
@@ -0,0 +1,11 @@
+Term
+====
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Term
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TermAssociatedObject.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TermAssociatedObject.rst
new file mode 100644
index 0000000000..049add1efd
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TermAssociatedObject.rst
@@ -0,0 +1,11 @@
+TermAssociatedObject
+====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TermAssociatedObject
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TermCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TermCollection.rst
new file mode 100644
index 0000000000..c63882753f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TermCollection.rst
@@ -0,0 +1,11 @@
+TermCollection
+==============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TermCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationship.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationship.rst
new file mode 100644
index 0000000000..5012f0da7c
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationship.rst
@@ -0,0 +1,11 @@
+TermRelationship
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TermRelationship
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationshipCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationshipCollection.rst
new file mode 100644
index 0000000000..64a56f1b2e
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationshipCollection.rst
@@ -0,0 +1,11 @@
+TermRelationshipCollection
+==========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TermRelationshipCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationshipSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationshipSummary.rst
new file mode 100644
index 0000000000..48a7e6aaf6
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TermRelationshipSummary.rst
@@ -0,0 +1,11 @@
+TermRelationshipSummary
+=======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TermRelationshipSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TermSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TermSummary.rst
new file mode 100644
index 0000000000..daf7a97e24
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TermSummary.rst
@@ -0,0 +1,11 @@
+TermSummary
+===========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TermSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.Type.rst b/docs/api/data_catalog/models/oci.data_catalog.models.Type.rst
new file mode 100644
index 0000000000..849562a105
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.Type.rst
@@ -0,0 +1,11 @@
+Type
+====
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: Type
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TypeCollection.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TypeCollection.rst
new file mode 100644
index 0000000000..8593b18fca
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TypeCollection.rst
@@ -0,0 +1,11 @@
+TypeCollection
+==============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TypeCollection
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.TypeSummary.rst b/docs/api/data_catalog/models/oci.data_catalog.models.TypeSummary.rst
new file mode 100644
index 0000000000..8375c2573b
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.TypeSummary.rst
@@ -0,0 +1,11 @@
+TypeSummary
+===========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: TypeSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateAttributeDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateAttributeDetails.rst
new file mode 100644
index 0000000000..2f5675902f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateAttributeDetails.rst
@@ -0,0 +1,11 @@
+UpdateAttributeDetails
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateAttributeDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateCatalogDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateCatalogDetails.rst
new file mode 100644
index 0000000000..abae567fdc
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateCatalogDetails.rst
@@ -0,0 +1,11 @@
+UpdateCatalogDetails
+====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateCatalogDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateConnectionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateConnectionDetails.rst
new file mode 100644
index 0000000000..2d3f1763c7
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateConnectionDetails.rst
@@ -0,0 +1,11 @@
+UpdateConnectionDetails
+=======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateConnectionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateDataAssetDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateDataAssetDetails.rst
new file mode 100644
index 0000000000..3c4904fe25
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateDataAssetDetails.rst
@@ -0,0 +1,11 @@
+UpdateDataAssetDetails
+======================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateDataAssetDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateEntityDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateEntityDetails.rst
new file mode 100644
index 0000000000..2009670a2d
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateEntityDetails.rst
@@ -0,0 +1,11 @@
+UpdateEntityDetails
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateEntityDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateFolderDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateFolderDetails.rst
new file mode 100644
index 0000000000..4af9253248
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateFolderDetails.rst
@@ -0,0 +1,11 @@
+UpdateFolderDetails
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateFolderDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateGlossaryDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateGlossaryDetails.rst
new file mode 100644
index 0000000000..34bf3eeed0
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateGlossaryDetails.rst
@@ -0,0 +1,11 @@
+UpdateGlossaryDetails
+=====================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateGlossaryDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateJobDefinitionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateJobDefinitionDetails.rst
new file mode 100644
index 0000000000..b9a8ecb8cb
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateJobDefinitionDetails.rst
@@ -0,0 +1,11 @@
+UpdateJobDefinitionDetails
+==========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateJobDefinitionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateJobDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateJobDetails.rst
new file mode 100644
index 0000000000..7572e0d28f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateJobDetails.rst
@@ -0,0 +1,11 @@
+UpdateJobDetails
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateJobDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateTermDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateTermDetails.rst
new file mode 100644
index 0000000000..a3f2a4730f
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateTermDetails.rst
@@ -0,0 +1,11 @@
+UpdateTermDetails
+=================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateTermDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UpdateTermRelationshipDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateTermRelationshipDetails.rst
new file mode 100644
index 0000000000..9e0782d781
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UpdateTermRelationshipDetails.rst
@@ -0,0 +1,11 @@
+UpdateTermRelationshipDetails
+=============================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UpdateTermRelationshipDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.UploadCredentialsDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.UploadCredentialsDetails.rst
new file mode 100644
index 0000000000..a0b4a4d870
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.UploadCredentialsDetails.rst
@@ -0,0 +1,11 @@
+UploadCredentialsDetails
+========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: UploadCredentialsDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ValidateConnectionDetails.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ValidateConnectionDetails.rst
new file mode 100644
index 0000000000..ae6d70e281
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ValidateConnectionDetails.rst
@@ -0,0 +1,11 @@
+ValidateConnectionDetails
+=========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ValidateConnectionDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.ValidateConnectionResult.rst b/docs/api/data_catalog/models/oci.data_catalog.models.ValidateConnectionResult.rst
new file mode 100644
index 0000000000..5fea0cae36
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.ValidateConnectionResult.rst
@@ -0,0 +1,11 @@
+ValidateConnectionResult
+========================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: ValidateConnectionResult
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequest.rst b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequest.rst
new file mode 100644
index 0000000000..fc7ce50815
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequest.rst
@@ -0,0 +1,11 @@
+WorkRequest
+===========
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: WorkRequest
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestError.rst b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestError.rst
new file mode 100644
index 0000000000..4f137868b1
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestError.rst
@@ -0,0 +1,11 @@
+WorkRequestError
+================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: WorkRequestError
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestLog.rst b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestLog.rst
new file mode 100644
index 0000000000..1fc6e75349
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestLog.rst
@@ -0,0 +1,11 @@
+WorkRequestLog
+==============
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: WorkRequestLog
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestResource.rst b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestResource.rst
new file mode 100644
index 0000000000..b7cb754708
--- /dev/null
+++ b/docs/api/data_catalog/models/oci.data_catalog.models.WorkRequestResource.rst
@@ -0,0 +1,11 @@
+WorkRequestResource
+===================
+
+.. currentmodule:: oci.data_catalog.models
+
+.. autoclass:: WorkRequestResource
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow.rst b/docs/api/data_flow.rst
new file mode 100644
index 0000000000..398b0c73b6
--- /dev/null
+++ b/docs/api/data_flow.rst
@@ -0,0 +1,30 @@
+Data Flow
+=========
+
+.. autosummary::
+ :toctree: data_flow/client
+ :nosignatures:
+ :template: autosummary/service_client.rst
+
+ oci.data_flow.DataFlowClient
+ oci.data_flow.DataFlowClientCompositeOperations
+
+--------
+ Models
+--------
+
+.. autosummary::
+ :toctree: data_flow/models
+ :nosignatures:
+ :template: autosummary/model_class.rst
+
+ oci.data_flow.models.Application
+ oci.data_flow.models.ApplicationParameter
+ oci.data_flow.models.ApplicationSummary
+ oci.data_flow.models.CreateApplicationDetails
+ oci.data_flow.models.CreateRunDetails
+ oci.data_flow.models.Run
+ oci.data_flow.models.RunLogSummary
+ oci.data_flow.models.RunSummary
+ oci.data_flow.models.UpdateApplicationDetails
+ oci.data_flow.models.UpdateRunDetails
diff --git a/docs/api/data_flow/client/oci.data_flow.DataFlowClient.rst b/docs/api/data_flow/client/oci.data_flow.DataFlowClient.rst
new file mode 100644
index 0000000000..b9238243ca
--- /dev/null
+++ b/docs/api/data_flow/client/oci.data_flow.DataFlowClient.rst
@@ -0,0 +1,8 @@
+DataFlowClient
+==============
+
+.. currentmodule:: oci.data_flow
+
+.. autoclass:: DataFlowClient
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/data_flow/client/oci.data_flow.DataFlowClientCompositeOperations.rst b/docs/api/data_flow/client/oci.data_flow.DataFlowClientCompositeOperations.rst
new file mode 100644
index 0000000000..1ee772e404
--- /dev/null
+++ b/docs/api/data_flow/client/oci.data_flow.DataFlowClientCompositeOperations.rst
@@ -0,0 +1,8 @@
+DataFlowClientCompositeOperations
+=================================
+
+.. currentmodule:: oci.data_flow
+
+.. autoclass:: DataFlowClientCompositeOperations
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.Application.rst b/docs/api/data_flow/models/oci.data_flow.models.Application.rst
new file mode 100644
index 0000000000..dd731a30d2
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.Application.rst
@@ -0,0 +1,11 @@
+Application
+===========
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: Application
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.ApplicationParameter.rst b/docs/api/data_flow/models/oci.data_flow.models.ApplicationParameter.rst
new file mode 100644
index 0000000000..af887c0317
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.ApplicationParameter.rst
@@ -0,0 +1,11 @@
+ApplicationParameter
+====================
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: ApplicationParameter
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.ApplicationSummary.rst b/docs/api/data_flow/models/oci.data_flow.models.ApplicationSummary.rst
new file mode 100644
index 0000000000..382e41297f
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.ApplicationSummary.rst
@@ -0,0 +1,11 @@
+ApplicationSummary
+==================
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: ApplicationSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.CreateApplicationDetails.rst b/docs/api/data_flow/models/oci.data_flow.models.CreateApplicationDetails.rst
new file mode 100644
index 0000000000..04916e8109
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.CreateApplicationDetails.rst
@@ -0,0 +1,11 @@
+CreateApplicationDetails
+========================
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: CreateApplicationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.CreateRunDetails.rst b/docs/api/data_flow/models/oci.data_flow.models.CreateRunDetails.rst
new file mode 100644
index 0000000000..249b413c01
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.CreateRunDetails.rst
@@ -0,0 +1,11 @@
+CreateRunDetails
+================
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: CreateRunDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.Run.rst b/docs/api/data_flow/models/oci.data_flow.models.Run.rst
new file mode 100644
index 0000000000..fd4055b9f3
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.Run.rst
@@ -0,0 +1,11 @@
+Run
+===
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: Run
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.RunLogSummary.rst b/docs/api/data_flow/models/oci.data_flow.models.RunLogSummary.rst
new file mode 100644
index 0000000000..a3bfed3694
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.RunLogSummary.rst
@@ -0,0 +1,11 @@
+RunLogSummary
+=============
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: RunLogSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.RunSummary.rst b/docs/api/data_flow/models/oci.data_flow.models.RunSummary.rst
new file mode 100644
index 0000000000..4dbebfbd7b
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.RunSummary.rst
@@ -0,0 +1,11 @@
+RunSummary
+==========
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: RunSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.UpdateApplicationDetails.rst b/docs/api/data_flow/models/oci.data_flow.models.UpdateApplicationDetails.rst
new file mode 100644
index 0000000000..c60d6cadc9
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.UpdateApplicationDetails.rst
@@ -0,0 +1,11 @@
+UpdateApplicationDetails
+========================
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: UpdateApplicationDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/data_flow/models/oci.data_flow.models.UpdateRunDetails.rst b/docs/api/data_flow/models/oci.data_flow.models.UpdateRunDetails.rst
new file mode 100644
index 0000000000..49293353c9
--- /dev/null
+++ b/docs/api/data_flow/models/oci.data_flow.models.UpdateRunDetails.rst
@@ -0,0 +1,11 @@
+UpdateRunDetails
+================
+
+.. currentmodule:: oci.data_flow.models
+
+.. autoclass:: UpdateRunDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/dts.rst b/docs/api/dts.rst
index fde74b67bc..c9c87aa298 100644
--- a/docs/api/dts.rst
+++ b/docs/api/dts.rst
@@ -6,12 +6,14 @@ Dts
:nosignatures:
:template: autosummary/service_client.rst
+ oci.dts.ApplianceExportJobClient
oci.dts.ShippingVendorsClient
oci.dts.TransferApplianceClient
oci.dts.TransferApplianceEntitlementClient
oci.dts.TransferDeviceClient
oci.dts.TransferJobClient
oci.dts.TransferPackageClient
+ oci.dts.ApplianceExportJobClientCompositeOperations
oci.dts.ShippingVendorsClientCompositeOperations
oci.dts.TransferApplianceClientCompositeOperations
oci.dts.TransferApplianceEntitlementClientCompositeOperations
@@ -28,8 +30,12 @@ Dts
:nosignatures:
:template: autosummary/model_class.rst
+ oci.dts.models.ApplianceExportJob
+ oci.dts.models.ApplianceExportJobSummary
oci.dts.models.AttachDevicesDetails
+ oci.dts.models.ChangeApplianceExportJobCompartmentDetails
oci.dts.models.ChangeTransferJobCompartmentDetails
+ oci.dts.models.CreateApplianceExportJobDetails
oci.dts.models.CreateTransferApplianceDetails
oci.dts.models.CreateTransferApplianceEntitlementDetails
oci.dts.models.CreateTransferDeviceDetails
@@ -55,6 +61,7 @@ Dts
oci.dts.models.TransferJobSummary
oci.dts.models.TransferPackage
oci.dts.models.TransferPackageSummary
+ oci.dts.models.UpdateApplianceExportJobDetails
oci.dts.models.UpdateTransferApplianceDetails
oci.dts.models.UpdateTransferDeviceDetails
oci.dts.models.UpdateTransferJobDetails
diff --git a/docs/api/dts/client/oci.dts.ApplianceExportJobClient.rst b/docs/api/dts/client/oci.dts.ApplianceExportJobClient.rst
new file mode 100644
index 0000000000..f5eaaae61d
--- /dev/null
+++ b/docs/api/dts/client/oci.dts.ApplianceExportJobClient.rst
@@ -0,0 +1,8 @@
+ApplianceExportJobClient
+========================
+
+.. currentmodule:: oci.dts
+
+.. autoclass:: ApplianceExportJobClient
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/dts/client/oci.dts.ApplianceExportJobClientCompositeOperations.rst b/docs/api/dts/client/oci.dts.ApplianceExportJobClientCompositeOperations.rst
new file mode 100644
index 0000000000..7e6e6251de
--- /dev/null
+++ b/docs/api/dts/client/oci.dts.ApplianceExportJobClientCompositeOperations.rst
@@ -0,0 +1,8 @@
+ApplianceExportJobClientCompositeOperations
+===========================================
+
+.. currentmodule:: oci.dts
+
+.. autoclass:: ApplianceExportJobClientCompositeOperations
+ :special-members: __init__
+ :members:
\ No newline at end of file
diff --git a/docs/api/dts/models/oci.dts.models.ApplianceExportJob.rst b/docs/api/dts/models/oci.dts.models.ApplianceExportJob.rst
new file mode 100644
index 0000000000..2b1389abde
--- /dev/null
+++ b/docs/api/dts/models/oci.dts.models.ApplianceExportJob.rst
@@ -0,0 +1,11 @@
+ApplianceExportJob
+==================
+
+.. currentmodule:: oci.dts.models
+
+.. autoclass:: ApplianceExportJob
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/dts/models/oci.dts.models.ApplianceExportJobSummary.rst b/docs/api/dts/models/oci.dts.models.ApplianceExportJobSummary.rst
new file mode 100644
index 0000000000..6f8d18d891
--- /dev/null
+++ b/docs/api/dts/models/oci.dts.models.ApplianceExportJobSummary.rst
@@ -0,0 +1,11 @@
+ApplianceExportJobSummary
+=========================
+
+.. currentmodule:: oci.dts.models
+
+.. autoclass:: ApplianceExportJobSummary
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/dts/models/oci.dts.models.ChangeApplianceExportJobCompartmentDetails.rst b/docs/api/dts/models/oci.dts.models.ChangeApplianceExportJobCompartmentDetails.rst
new file mode 100644
index 0000000000..191d1bb29c
--- /dev/null
+++ b/docs/api/dts/models/oci.dts.models.ChangeApplianceExportJobCompartmentDetails.rst
@@ -0,0 +1,11 @@
+ChangeApplianceExportJobCompartmentDetails
+==========================================
+
+.. currentmodule:: oci.dts.models
+
+.. autoclass:: ChangeApplianceExportJobCompartmentDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/dts/models/oci.dts.models.CreateApplianceExportJobDetails.rst b/docs/api/dts/models/oci.dts.models.CreateApplianceExportJobDetails.rst
new file mode 100644
index 0000000000..044216bd62
--- /dev/null
+++ b/docs/api/dts/models/oci.dts.models.CreateApplianceExportJobDetails.rst
@@ -0,0 +1,11 @@
+CreateApplianceExportJobDetails
+===============================
+
+.. currentmodule:: oci.dts.models
+
+.. autoclass:: CreateApplianceExportJobDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/dts/models/oci.dts.models.UpdateApplianceExportJobDetails.rst b/docs/api/dts/models/oci.dts.models.UpdateApplianceExportJobDetails.rst
new file mode 100644
index 0000000000..213e0ac134
--- /dev/null
+++ b/docs/api/dts/models/oci.dts.models.UpdateApplianceExportJobDetails.rst
@@ -0,0 +1,11 @@
+UpdateApplianceExportJobDetails
+===============================
+
+.. currentmodule:: oci.dts.models
+
+.. autoclass:: UpdateApplianceExportJobDetails
+ :show-inheritance:
+ :special-members: __init__
+ :members:
+ :undoc-members:
+ :inherited-members:
\ No newline at end of file
diff --git a/docs/api/landing.rst b/docs/api/landing.rst
index 93560acb56..1297110a04 100644
--- a/docs/api/landing.rst
+++ b/docs/api/landing.rst
@@ -8,6 +8,7 @@ API Reference
* :doc:`Deployment `
* :doc:`Gateway `
* :doc:`Work Requests `
+* :doc:`Application Migration `
* :doc:`Audit `
* :doc:`Auto Scaling `
* :doc:`Budget `
@@ -16,8 +17,11 @@ API Reference
* :doc:`Compute `
* :doc:`Compute Management `
* :doc:`Virtual Network `
+* :doc:`Data Catalog `
+* :doc:`Data Flow `
* :doc:`Database `
* :doc:`DNS `
+* :doc:`Appliance Export Job `
* :doc:`Shipping Vendors `
* :doc:`Transfer Appliance `
* :doc:`Transfer Appliance Entitlement `
@@ -74,11 +78,14 @@ API Reference
analytics
announcements_service
apigateway
+ application_migration
audit
autoscaling
budget
container_engine
core
+ data_catalog
+ data_flow
database
dns
dts
diff --git a/docs/deprecation-notice.rst b/docs/deprecation-notice.rst
index 7eb6cfc467..5483e31e65 100644
--- a/docs/deprecation-notice.rst
+++ b/docs/deprecation-notice.rst
@@ -2,6 +2,10 @@
Deprecation Notice
~~~~~~~~~~~~~~~~~~
+.. warning::
+ Python 2.x has reached the end of its life on January 1st, 2020. If you still use Python 2.x, please upgrade your Python version -- Python 2.x is no longer maintained, nor supported by the OCI Python SDK.
+
+ Community support for Python 2.x has ended on January 1st, 2020. Oracle OCI Python SDK depends on community supported packages and therefore has also ended support for Python 2.x. Bug fixes and enhancements do not take Python 2.x compatibility into consideration.
.. warning::
This domain is deprecated and will no longer be maintained starting March 2018.
diff --git a/docs/index.rst b/docs/index.rst
index 8a8fa5de76..8d52d752b5 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -12,7 +12,7 @@
Oracle Cloud Infrastructure Python SDK - |OciSdkVersion|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-This is the public Python SDK for Oracle Cloud Infrastructure. Python 2.7+ and 3.5+ are supported.
+This is the public Python SDK for Oracle Cloud Infrastructure. Python 3.5 and 3.6 are supported.
.. code-block:: pycon
diff --git a/docs/installation.rst b/docs/installation.rst
index ab44ff3ff9..7df5c58088 100644
--- a/docs/installation.rst
+++ b/docs/installation.rst
@@ -20,7 +20,7 @@ This topic describes how to install, configure, and use the Oracle Cloud Infrast
The Python SDK requires:
-* Python version 2.7.5 or 3.5 or later
+* Python version 3.5 or 3.6
* `OpenSSL`_ version 1.0.1 or later. The Python SDK uses the `Cryptography.io`_ library which requires `OpenSSL`_. For details on all Cryptography.io prerequisites, see `Cryptography.io Installation`_.
In addition, all Oracle Cloud Infrastructure SDKs require:
diff --git a/examples/showoci/CHANGELOG.rst b/examples/showoci/CHANGELOG.rst
index e75bfbe50a..1765cccea6 100755
--- a/examples/showoci/CHANGELOG.rst
+++ b/examples/showoci/CHANGELOG.rst
@@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file.
The format is based on `Keep a Changelog `_.
+=====================
+20.01.29 - 2020-01-29
+=====================
+* Fix call to list_databases due to OCI change the parameters requirement
+* Fix bug listing autonomous databases if no VCN exist
+
+=====================
+20.01.15 - 2020-01-15
+=====================
+* Added recursive compartment with -cpr
+* Added -ic to fetch compartments flag if only compartments required
+
=====================
20.01.14 - 2020-01-14
=====================
diff --git a/examples/showoci/README.md b/examples/showoci/README.md
index 1075bf6b32..fb206a9877 100755
--- a/examples/showoci/README.md
+++ b/examples/showoci/README.md
@@ -176,52 +176,57 @@ Execute
```
$ ./showoci.py
-usage: showoci.py [-h] [-a] [-ani] [-an] [-b] [-n] [-i] [-c] [-cn] [-o] [-l]
- [-d] [-f] [-e] [-m] [-s] [-rm] [-so] [-paas] [-edge] [-lq]
- [-mc] [-nr] [-ip] [-t PROFILE] [-p PROXY] [-rg REGION]
- [-cp COMPART] [-tenantid TENANTID] [-cpath COMPARTPATH]
- [-cf CONFIG] [-csv CSV] [-jf JOUTFILE] [-js]
- [-sjf SJOUTFILE] [-cachef SERVICEFILE] [-caches] [--version]
+usage: showoci.py [-h] [-a] [-ani] [-an] [-b] [-n] [-i] [-ic] [-c] [-cn] [-o]
+ [-l] [-d] [-f] [-e] [-m] [-s] [-rm] [-so] [-paas] [-edge]
+ [-lq] [-mc] [-nr] [-ip] [-t PROFILE] [-p PROXY] [-rg REGION]
+ [-cp COMPART] [-cpr COMPART_RECURSIVE] [-cpath COMPARTPATH]
+ [-tenantid TENANTID] [-cf CONFIG] [-csv CSV] [-jf JOUTFILE]
+ [-js] [-sjf SJOUTFILE] [-cachef SERVICEFILE] [-caches]
+ [--version]
optional arguments:
- -h, --help show this help message and exit
- -a Print All Resources
- -ani Print All Resources but identity
- -an Print Announcements
- -b Print Budgets
- -n Print Network
- -i Print Identity
- -c Print Compute
- -cn Print Containers
- -o Print Object Storage
- -l Print Load Balancer
- -d Print Database
- -f Print File Storage
- -e Print EMail
- -m Print Monitoring and Notifications
- -s Print Streams
- -rm Print Resource management
- -so Print Summary Only
- -paas Print Oracle Paas Native - OIC OAC ODA
- -edge Print Edge Services (Healthcheck)
- -lq Print Limits and Quotas
- -mc exclude ManagedCompartmentForPaaS
- -nr Not include root compartment
- -ip Use Instance Principals for Authentication
- -t PROFILE Config file section to use (tenancy profile)
- -p PROXY Set Proxy (i.e. www-proxy-server.com:80)
- -rg REGION Filter by Region
- -cp COMPART Filter by Compartment Name or OCID
- -tenantid TENANTID Override confile file tenancy_id
- -cpath COMPARTPATH Filter by Compartment path ,(i.e. -cpath "Adi / Sub"
- -cf CONFIG Config File
- -csv CSV Output to CSV files, Input as file header
- -jf JOUTFILE Output to file (JSON format)
- -js Output to screen (JSON format)
- -sjf SJOUTFILE Output to screen (nice format) and JSON File
- -cachef SERVICEFILE Output Cache to file (JSON format)
- -caches Output Cache to screen (JSON format)
- --version show program's version number and exit
+ -h, --help show this help message and exit
+ -a Print All Resources
+ -ani Print All Resources but identity
+ -an Print Announcements
+ -b Print Budgets
+ -n Print Network
+ -i Print Identity
+ -ic Print Identity Compartments only
+ -c Print Compute
+ -cn Print Containers
+ -o Print Object Storage
+ -l Print Load Balancer
+ -d Print Database
+ -f Print File Storage
+ -e Print EMail
+ -m Print Monitoring and Notifications
+ -s Print Streams
+ -rm Print Resource management
+ -so Print Summary Only
+ -paas Print Oracle Paas Native - OIC OAC ODA
+ -edge Print Edge Services (Healthcheck)
+ -lq Print Limits and Quotas
+ -mc exclude ManagedCompartmentForPaaS
+ -nr Not include root compartment
+ -ip Use Instance Principals for Authentication
+ -t PROFILE Config file section to use (tenancy profile)
+ -p PROXY Set Proxy (i.e. www-proxy-server.com:80)
+ -rg REGION Filter by Region
+ -cp COMPART Filter by Compartment Name or OCID
+ -cpr COMPART_RECURSIVE
+ Filter by Compartment Name or OCID include sub
+ compartments
+ -cpath COMPARTPATH Filter by Compartment path ,(i.e. -cpath "Adi / Sub"
+ -tenantid TENANTID Override confile file tenancy_id
+ -cf CONFIG Config File
+ -csv CSV Output to CSV files, Input as file header
+ -jf JOUTFILE Output to file (JSON format)
+ -js Output to screen (JSON format)
+ -sjf SJOUTFILE Output to screen (nice format) and JSON File
+ -cachef SERVICEFILE Output Cache to file (JSON format)
+ -caches Output Cache to screen (JSON format)
+ --version show program's version number and exit
```
diff --git a/examples/showoci/showoci.py b/examples/showoci/showoci.py
index 4d20e720ea..48a68daa65 100755
--- a/examples/showoci/showoci.py
+++ b/examples/showoci/showoci.py
@@ -62,7 +62,7 @@
import argparse
import datetime
-version = "20.1.14"
+version = "20.1.29"
##########################################################################
# execute_extract
@@ -222,6 +222,7 @@ def set_parser_arguments():
parser.add_argument('-b', action='store_true', default=False, dest='budgets', help='Print Budgets')
parser.add_argument('-n', action='store_true', default=False, dest='network', help='Print Network')
parser.add_argument('-i', action='store_true', default=False, dest='identity', help='Print Identity')
+ parser.add_argument('-ic', action='store_true', default=False, dest='identity_compartments', help='Print Identity Compartments only')
parser.add_argument('-c', action='store_true', default=False, dest='compute', help='Print Compute')
parser.add_argument('-cn', action='store_true', default=False, dest='container', help='Print Containers')
parser.add_argument('-o', action='store_true', default=False, dest='object', help='Print Object Storage')
@@ -243,8 +244,9 @@ def set_parser_arguments():
parser.add_argument('-p', default="", dest='proxy', help='Set Proxy (i.e. www-proxy-server.com:80) ')
parser.add_argument('-rg', default="", dest='region', help='Filter by Region')
parser.add_argument('-cp', default="", dest='compart', help='Filter by Compartment Name or OCID')
- parser.add_argument('-tenantid', default="", dest='tenantid', help='Override confile file tenancy_id')
+ parser.add_argument('-cpr', default="", dest='compart_recursive', help='Filter by Compartment Name or OCID include sub compartments')
parser.add_argument('-cpath', default="", dest='compartpath', help='Filter by Compartment path ,(i.e. -cpath "Adi / Sub"')
+ parser.add_argument('-tenantid', default="", dest='tenantid', help='Override confile file tenancy_id')
parser.add_argument('-cf', type=argparse.FileType('r'), dest='config', help="Config File")
parser.add_argument('-csv', default="", dest='csv', help="Output to CSV files, Input as file header")
parser.add_argument('-jf', type=argparse.FileType('w'), dest='joutfile', help="Output to file (JSON format)")
@@ -260,7 +262,7 @@ def set_parser_arguments():
parser.print_help()
return None
- if not (result.all or result.allnoiam or result.network or result.identity or
+ if not (result.all or result.allnoiam or result.network or result.identity or result.identity_compartments or
result.compute or result.object or
result.load or result.database or result.file or result.email or result.orm or result.container or
result.streams or result.budgets or result.monitoring or result.edge or result.announcement or result.limits or result.paas_native):
@@ -357,6 +359,9 @@ def set_service_extract_flags(cmd):
if cmd.compart:
prm.filter_by_compartment = str(cmd.compart)
+ if cmd.compart_recursive:
+ prm.filter_by_compartment_recursive = str(cmd.compart_recursive)
+
if cmd.compartpath:
prm.filter_by_compartment_path = str(cmd.compartpath)
diff --git a/examples/showoci/showoci_service.py b/examples/showoci/showoci_service.py
index 743908291a..d682450b08 100755
--- a/examples/showoci/showoci_service.py
+++ b/examples/showoci/showoci_service.py
@@ -29,6 +29,7 @@
class ShowOCIFlags(object):
# Read Flags
read_identity = False
+ read_identity_compartments = False
read_network = False
read_compute = False
read_database = False
@@ -54,6 +55,7 @@ class ShowOCIFlags(object):
# filter flags
filter_by_region = ""
filter_by_compartment = ""
+ filter_by_compartment_recursive = ""
filter_by_compartment_path = ""
filter_by_tenancy_id = ""
@@ -109,7 +111,7 @@ def is_load_basic_network(self):
# class ShowOCIService
##########################################################################
class ShowOCIService(object):
- oci_compatible_version = "2.8.0"
+ oci_compatible_version = "2.10.0"
##########################################################################
# Global Constants
@@ -666,6 +668,9 @@ def __load_data_main(self):
if self.flags.filter_by_compartment_path:
print("Filtered by Compartment Path = " + self.flags.filter_by_compartment_path)
+ if self.flags.filter_by_compartment_recursive:
+ print("Filtered by Compartment Recursive = " + self.flags.filter_by_compartment_recursive)
+
print("")
# load identity
@@ -728,7 +733,7 @@ def __load_oci_region_data(self, region_name):
self.__load_core_compute_main()
# database
- if self.flags.read_database and self.is_vcn_exist_for_region:
+ if self.flags.read_database:
if self.check_if_service_available(region_name, self.C_DATABASE):
self.__load_database_main()
@@ -929,7 +934,7 @@ def build_compartments_nested(identity_client, cid, path):
sorted_compartments = sorted(compartments, key=lambda k: k['path'])
# if not filtered by compartment return
- if not (self.flags.filter_by_compartment or self.flags.filter_by_compartment_path):
+ if not (self.flags.filter_by_compartment or self.flags.filter_by_compartment_path or self.flags.filter_by_compartment_recursive):
self.data[self.C_IDENTITY][self.C_IDENTITY_COMPARTMENTS] = sorted_compartments
self.__load_print_cnt(len(compartments), start_time)
return
@@ -946,6 +951,11 @@ def build_compartments_nested(identity_client, cid, path):
if self.flags.filter_by_compartment_path:
for x in sorted_compartments:
if self.flags.filter_by_compartment_path == x['path']:
+ filtered_compart.append(x) # if filter by path compartment, then reduce list and return new list
+
+ if self.flags.filter_by_compartment_recursive:
+ for x in sorted_compartments:
+ if self.flags.filter_by_compartment_recursive in x['path']:
filtered_compart.append(x)
# add to data
@@ -5426,7 +5436,7 @@ def __load_database_dbsystems_dbhomes_databases(self, database_client, db_home_i
dbs = oci.pagination.list_call_get_all_results(
database_client.list_databases,
compartment['id'],
- db_home_id,
+ db_home_id=db_home_id,
sort_by="DBNAME"
).data
diff --git a/src/oci/__init__.py b/src/oci/__init__.py
index 6055581b0e..1e12b82f90 100644
--- a/src/oci/__init__.py
+++ b/src/oci/__init__.py
@@ -1,7 +1,7 @@
# coding: utf-8
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
-from . import analytics, announcements_service, apigateway, audit, autoscaling, budget, container_engine, core, database, dns, dts, email, events, file_storage, functions, healthchecks, identity, integration, key_management, limits, load_balancer, marketplace, monitoring, object_storage, oce, oda, ons, os_management, resource_manager, resource_search, streaming, waas, work_requests
+from . import analytics, announcements_service, apigateway, application_migration, audit, autoscaling, budget, container_engine, core, data_catalog, data_flow, database, dns, dts, email, events, file_storage, functions, healthchecks, identity, integration, key_management, limits, load_balancer, marketplace, monitoring, object_storage, oce, oda, ons, os_management, resource_manager, resource_search, streaming, waas, work_requests
from . import auth, config, constants, decorators, exceptions, regions, pagination, retry, fips
from .base_client import BaseClient
from .request import Request
@@ -14,5 +14,5 @@
__all__ = [
"BaseClient", "Error", "Request", "Response", "Signer", "config", "constants", "decorators", "exceptions", "regions", "wait_until", "pagination", "auth", "retry", "fips",
- "analytics", "announcements_service", "apigateway", "audit", "autoscaling", "budget", "container_engine", "core", "database", "dns", "dts", "email", "events", "file_storage", "functions", "healthchecks", "identity", "integration", "key_management", "limits", "load_balancer", "marketplace", "monitoring", "object_storage", "oce", "oda", "ons", "os_management", "resource_manager", "resource_search", "streaming", "waas", "work_requests"
+ "analytics", "announcements_service", "apigateway", "application_migration", "audit", "autoscaling", "budget", "container_engine", "core", "data_catalog", "data_flow", "database", "dns", "dts", "email", "events", "file_storage", "functions", "healthchecks", "identity", "integration", "key_management", "limits", "load_balancer", "marketplace", "monitoring", "object_storage", "oce", "oda", "ons", "os_management", "resource_manager", "resource_search", "streaming", "waas", "work_requests"
]
diff --git a/src/oci/application_migration/__init__.py b/src/oci/application_migration/__init__.py
new file mode 100644
index 0000000000..aa88503ed9
--- /dev/null
+++ b/src/oci/application_migration/__init__.py
@@ -0,0 +1,11 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+
+from .application_migration_client import ApplicationMigrationClient
+from .application_migration_client_composite_operations import ApplicationMigrationClientCompositeOperations
+from . import models
+
+__all__ = ["ApplicationMigrationClient", "ApplicationMigrationClientCompositeOperations", "models"]
diff --git a/src/oci/application_migration/application_migration_client.py b/src/oci/application_migration/application_migration_client.py
new file mode 100644
index 0000000000..0077aafd97
--- /dev/null
+++ b/src/oci/application_migration/application_migration_client.py
@@ -0,0 +1,1838 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from oci._vendor import requests # noqa: F401
+from oci._vendor import six
+
+from oci import retry # noqa: F401
+from oci.base_client import BaseClient
+from oci.config import get_config_value_or_default, validate_config
+from oci.signer import Signer
+from oci.util import Sentinel
+from .models import application_migration_type_mapping
+missing = Sentinel("Missing")
+
+
+class ApplicationMigrationClient(object):
+ """
+ API for the Application Migration service. Use this API to migrate applications from Oracle Cloud Infrastructure - Classic to Oracle Cloud Infrastructure.
+ """
+
+ def __init__(self, config, **kwargs):
+ """
+ Creates a new service client
+
+ :param dict config:
+ Configuration keys and values as per `SDK and Tool Configuration `__.
+ The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
+ the dict using :py:meth:`~oci.config.validate_config`
+
+ :param str service_endpoint: (optional)
+ The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
+ not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
+ need to specify a service endpoint.
+
+ :param timeout: (optional)
+ The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
+ as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
+ a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
+ :type timeout: float or tuple(float, float)
+
+ :param signer: (optional)
+ The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
+ provided in the config parameter.
+
+ One use case for this parameter is for `Instance Principals authentication `__
+ by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
+ :type signer: :py:class:`~oci.signer.AbstractBaseSigner`
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
+ Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
+ Any value provided at the operation level will override whatever is specified at the client level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+ """
+ validate_config(config, signer=kwargs.get('signer'))
+ if 'signer' in kwargs:
+ signer = kwargs['signer']
+ else:
+ signer = Signer(
+ tenancy=config["tenancy"],
+ user=config["user"],
+ fingerprint=config["fingerprint"],
+ private_key_file_location=config.get("key_file"),
+ pass_phrase=get_config_value_or_default(config, "pass_phrase"),
+ private_key_content=config.get("key_content")
+ )
+
+ base_client_init_kwargs = {
+ 'regional_client': True,
+ 'service_endpoint': kwargs.get('service_endpoint'),
+ 'timeout': kwargs.get('timeout'),
+ 'base_path': '/20191031',
+ 'service_endpoint_template': 'https://applicationmigration.{region}.oci.{secondLevelDomain}',
+ 'skip_deserialization': kwargs.get('skip_deserialization', False)
+ }
+ self.base_client = BaseClient("application_migration", config, signer, application_migration_type_mapping, **base_client_init_kwargs)
+ self.retry_strategy = kwargs.get('retry_strategy')
+
+ def cancel_work_request(self, work_request_id, **kwargs):
+ """
+ Cancel a work request
+ Cancels the specified work request
+
+
+ :param str work_request_id: (required)
+ The OCID of the work request.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "cancel_work_request got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def change_migration_compartment(self, migration_id, change_migration_compartment_details, **kwargs):
+ """
+ Moves a Migration into a different compartment. When provided, If-Match is checked against ETag values of the Migration.
+ Moves a Migration into a different compartment.
+
+
+ :param str migration_id: (required)
+ The application OCID
+
+ :param ChangeCompartmentDetails change_migration_compartment_details: (required)
+ The updated compartment details
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
+ server error without risk of retrying the same action. Retry tokens expire after
+ 24 hours, but can be invalidated before then due to conflicting operations. For example,
+ if a resource has been deleted and purged from the system, then a retry of the original
+ creation request may be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations/{migrationId}/actions/changeCompartment"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "change_migration_compartment got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "migrationId": migration_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_migration_compartment_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_migration_compartment_details)
+
+ def change_source_compartment(self, source_id, change_source_compartment_details, **kwargs):
+ """
+ Moves a Source into a different compartment. When provided, If-Match is checked against ETag values of the Source.
+ Moves a Source into a different compartment.
+
+
+ :param str source_id: (required)
+ The source OCID
+
+ :param ChangeCompartmentDetails change_source_compartment_details: (required)
+ The updated compartment details
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
+ server error without risk of retrying the same action. Retry tokens expire after
+ 24 hours, but can be invalidated before then due to conflicting operations. For example,
+ if a resource has been deleted and purged from the system, then a retry of the original
+ creation request may be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources/{sourceId}/actions/changeCompartment"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "change_source_compartment got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "sourceId": source_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_source_compartment_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_source_compartment_details)
+
+ def create_migration(self, create_migration_details, **kwargs):
+ """
+ Creates an application migration
+ Creates an application migration in the specified compartment.
+ Specify the compartment using the compartment ID.
+
+
+ :param CreateMigrationDetails create_migration_details: (required)
+ The properties for creating a migration.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
+ server error without risk of retrying the same action. Retry tokens expire after
+ 24 hours, but can be invalidated before then due to conflicting operations. For example,
+ if a resource has been deleted and purged from the system, then a retry of the original
+ creation request may be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.application_migration.models.Migration`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_migration got unknown kwargs: {!r}".format(extra_kwargs))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_migration_details,
+ response_type="Migration")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_migration_details,
+ response_type="Migration")
+
+ def create_source(self, create_source_details, **kwargs):
+ """
+ Creates a migration source
+ Creates a migration source in the specified compartment.
+ Specify the compartment using the compartment ID.
+
+
+ :param CreateSourceDetails create_source_details: (required)
+ The properties for creating a source.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
+ server error without risk of retrying the same action. Retry tokens expire after
+ 24 hours, but can be invalidated before then due to conflicting operations. For example,
+ if a resource has been deleted and purged from the system, then a retry of the original
+ creation request may be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.application_migration.models.Source`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_source got unknown kwargs: {!r}".format(extra_kwargs))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_source_details,
+ response_type="Source")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_source_details,
+ response_type="Source")
+
+ def delete_migration(self, migration_id, **kwargs):
+ """
+ Deletes an application migration
+ Deletes the specified Application object.
+
+
+ :param str migration_id: (required)
+ The application OCID
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations/{migrationId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_migration got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "migrationId": migration_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_source(self, source_id, **kwargs):
+ """
+ Deletes a source
+ Deletes the specified Source object.
+
+
+ :param str source_id: (required)
+ The source OCID
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources/{sourceId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_source got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "sourceId": source_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def get_migration(self, migration_id, **kwargs):
+ """
+ Gets an application migration by ID.
+ Gets an application migration using the ID.
+
+
+ :param str migration_id: (required)
+ The application OCID
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.application_migration.models.Migration`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations/{migrationId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_migration got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "migrationId": migration_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Migration")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Migration")
+
+ def get_source(self, source_id, **kwargs):
+ """
+ Gets a migration source by ID.
+ Gets a migration source using the source ID.
+
+
+ :param str source_id: (required)
+ The source OCID
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.application_migration.models.Source`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources/{sourceId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_source got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "sourceId": source_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Source")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Source")
+
+ def get_work_request(self, work_request_id, **kwargs):
+ """
+ Gets the details of a work request.
+ Gets the details of a work request.
+
+
+ :param str work_request_id: (required)
+ The OCID of the work request.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.application_migration.models.WorkRequest`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_work_request got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="WorkRequest")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="WorkRequest")
+
+ def list_migrations(self, compartment_id, **kwargs):
+ """
+ Returns a list of migrations
+ Returns a list of migrations in a given compartment.
+
+
+ :param str compartment_id: (required)
+ The compartment OCID on which to filter.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str id: (optional)
+ The OCID on which to query for an application.
+
+ :param int limit: (optional)
+ The number of items returned in a paginated `List` call. For information about pagination, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header from the preceding `List` call.
+ For information about pagination, see `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str sort_order: (optional)
+ The sort order, either `ASC` (ascending) or `DESC` (descending).
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str sort_by: (optional)
+ Specifies the field on which to sort.
+ By default, `TIMECREATED` is ordered descending.
+ By default, `DISPLAYNAME` is ordered ascending. Note that you can sort only on one field.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str display_name: (optional)
+ Display name on which to query.
+
+ :param str lifecycle_state: (optional)
+ The lifecycle state on which to filter.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.application_migration.models.MigrationSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "id",
+ "limit",
+ "page",
+ "sort_order",
+ "sort_by",
+ "display_name",
+ "lifecycle_state"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_migrations got unknown kwargs: {!r}".format(extra_kwargs))
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "id": kwargs.get("id", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[MigrationSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[MigrationSummary]")
+
+ def list_source_applications(self, source_id, compartment_id, **kwargs):
+ """
+ Returns a list of applications for a source in a given compartment.
+ Returns a list of applications running in the source environment. This list is generated dynamically by interrogating the source and changes as applications are started or stopped in that environment.
+
+
+ :param str source_id: (required)
+ The source OCID
+
+ :param str compartment_id: (required)
+ The compartment OCID on which to filter.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param int limit: (optional)
+ The number of items returned in a paginated `List` call. For information about pagination, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header from the preceding `List` call.
+ For information about pagination, see `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str sort_order: (optional)
+ The sort order, either `ASC` (ascending) or `DESC` (descending).
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str sort_by: (optional)
+ Specifies the field on which to sort.
+ By default, `TIMECREATED` is ordered descending.
+ By default, `DISPLAYNAME` is ordered ascending. Note that you can sort only on one field.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str display_name: (optional)
+ Resource name on which to query.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.application_migration.models.SourceApplicationSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources/{sourceId}/applications"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "limit",
+ "page",
+ "sort_order",
+ "sort_by",
+ "display_name"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_source_applications got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "sourceId": source_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ query_params = {
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "compartmentId": compartment_id,
+ "displayName": kwargs.get("display_name", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[SourceApplicationSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[SourceApplicationSummary]")
+
+ def list_sources(self, compartment_id, **kwargs):
+ """
+ Returns a list of migration sources
+ Returns a list of migration sources in a specified compartment.
+
+
+ :param str compartment_id: (required)
+ The compartment OCID on which to filter.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str id: (optional)
+ The OCID on which to query for a source.
+
+ :param int limit: (optional)
+ The number of items returned in a paginated `List` call. For information about pagination, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header from the preceding `List` call.
+ For information about pagination, see `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str sort_order: (optional)
+ The sort order, either `ASC` (ascending) or `DESC` (descending).
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str sort_by: (optional)
+ Specifies the field on which to sort.
+ By default, `TIMECREATED` is ordered descending.
+ By default, `DISPLAYNAME` is ordered ascending. Note that you can sort only on one field.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str display_name: (optional)
+ Display name on which to query.
+
+ :param str lifecycle_state: (optional)
+ The lifecycle state on which to filter.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.application_migration.models.SourceSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "id",
+ "limit",
+ "page",
+ "sort_order",
+ "sort_by",
+ "display_name",
+ "lifecycle_state"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_sources got unknown kwargs: {!r}".format(extra_kwargs))
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "id": kwargs.get("id", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[SourceSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[SourceSummary]")
+
+ def list_work_request_errors(self, work_request_id, **kwargs):
+ """
+ Lists work request errors
+ Gets the errors for a work request.
+
+
+ :param str work_request_id: (required)
+ The OCID of the work request.
+
+ :param int limit: (optional)
+ The number of items returned in a paginated `List` call. For information about pagination, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header from the preceding `List` call.
+ For information about pagination, see `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str sort_order: (optional)
+ The sort order, either `ASC` (ascending) or `DESC` (descending).
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.application_migration.models.WorkRequestError`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}/errors"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "limit",
+ "page",
+ "sort_order",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_work_request_errors got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortOrder": kwargs.get("sort_order", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestError]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestError]")
+
+ def list_work_request_logs(self, work_request_id, **kwargs):
+ """
+ Lists work request logs
+ Gets the logs for a work request.
+
+
+ :param str work_request_id: (required)
+ The OCID of the work request.
+
+ :param int limit: (optional)
+ The number of items returned in a paginated `List` call. For information about pagination, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header from the preceding `List` call.
+ For information about pagination, see `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str sort_order: (optional)
+ The sort order, either `ASC` (ascending) or `DESC` (descending).
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.application_migration.models.WorkRequestLogEntry`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}/logs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "limit",
+ "page",
+ "sort_order",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_work_request_logs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortOrder": kwargs.get("sort_order", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestLogEntry]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestLogEntry]")
+
+ def list_work_requests(self, compartment_id, **kwargs):
+ """
+ Lists work requests in a compartment or for a resource.
+ Lists the work requests in a compartment or for a specified resource.
+
+
+ :param str compartment_id: (required)
+ The compartment OCID on which to filter.
+
+ :param str resource_id: (optional)
+ The OCID of the resource.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param int limit: (optional)
+ The number of items returned in a paginated `List` call. For information about pagination, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ The value of the `opc-next-page` response header from the preceding `List` call.
+ For information about pagination, see `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.application_migration.models.WorkRequestSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "resource_id",
+ "opc_request_id",
+ "limit",
+ "page"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_work_requests got unknown kwargs: {!r}".format(extra_kwargs))
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "resourceId": kwargs.get("resource_id", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestSummary]")
+
+ def migrate_application(self, migration_id, **kwargs):
+ """
+ Migrates a PaaS application running in a Source environment to OCI.\n
+ Validates target configuration and migrates a PaaS application running in a Source environment into the customers Oracle Cloud Infrastructure tenancy. This an optional action and only required if automatic start of migration was not selected when creating the migration.
+
+
+ :param str migration_id: (required)
+ The application OCID
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations/{migrationId}/actions/migrate"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "migrate_application got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "migrationId": migration_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def update_migration(self, migration_id, update_migration_details, **kwargs):
+ """
+ Update the configuration for an application migration.
+ Update the configuration for an application migration.
+
+
+ :param str migration_id: (required)
+ The application OCID
+
+ :param UpdateMigrationDetails update_migration_details: (required)
+ Updated configuration for the migration.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
+ server error without risk of retrying the same action. Retry tokens expire after
+ 24 hours, but can be invalidated before then due to conflicting operations. For example,
+ if a resource has been deleted and purged from the system, then a retry of the original
+ creation request may be rejected.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/migrations/{migrationId}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_migration got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "migrationId": migration_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_migration_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_migration_details)
+
+ def update_source(self, source_id, update_source_details, **kwargs):
+ """
+ Update source details
+ Update source details.
+
+
+ :param str source_id: (required)
+ The source OCID
+
+ :param UpdateSourceDetails update_source_details: (required)
+ Updated configuration for the source.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
+ particular request, please provide the request ID.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/sources/{sourceId}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_source got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "sourceId": source_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_source_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_source_details)
diff --git a/src/oci/application_migration/application_migration_client_composite_operations.py b/src/oci/application_migration/application_migration_client_composite_operations.py
new file mode 100644
index 0000000000..105780d710
--- /dev/null
+++ b/src/oci/application_migration/application_migration_client_composite_operations.py
@@ -0,0 +1,23 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+import oci # noqa: F401
+from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
+
+
+class ApplicationMigrationClientCompositeOperations(object):
+ """
+ This class provides a wrapper around :py:class:`~oci.application_migration.ApplicationMigrationClient` and offers convenience methods
+ for operations that would otherwise need to be chained together. For example, instead of performing an action
+ on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource
+ to enter a given state, you can call a single method in this class to accomplish the same functionality
+ """
+
+ def __init__(self, client, **kwargs):
+ """
+ Creates a new ApplicationMigrationClientCompositeOperations object
+
+ :param ApplicationMigrationClient client:
+ The service client which will be wrapped by this object
+ """
+ self.client = client
diff --git a/src/oci/application_migration/models/__init__.py b/src/oci/application_migration/models/__init__.py
new file mode 100644
index 0000000000..ef880b1b9c
--- /dev/null
+++ b/src/oci/application_migration/models/__init__.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from .authorization_details import AuthorizationDetails
+from .change_compartment_details import ChangeCompartmentDetails
+from .configuration_field import ConfigurationField
+from .create_migration_details import CreateMigrationDetails
+from .create_source_details import CreateSourceDetails
+from .discovery_details import DiscoveryDetails
+from .ics_discovery_details import IcsDiscoveryDetails
+from .internal_authorization_details import InternalAuthorizationDetails
+from .internal_source_details import InternalSourceDetails
+from .jcs_discovery_details import JcsDiscoveryDetails
+from .migration import Migration
+from .migration_summary import MigrationSummary
+from .oac_discovery_details import OacDiscoveryDetails
+from .ocic_authorization_details import OcicAuthorizationDetails
+from .ocic_source_details import OcicSourceDetails
+from .oic_discovery_details import OicDiscoveryDetails
+from .pcs_discovery_details import PcsDiscoveryDetails
+from .soacs_discovery_details import SoacsDiscoveryDetails
+from .source import Source
+from .source_application import SourceApplication
+from .source_application_summary import SourceApplicationSummary
+from .source_details import SourceDetails
+from .source_summary import SourceSummary
+from .update_migration_details import UpdateMigrationDetails
+from .update_source_details import UpdateSourceDetails
+from .work_request import WorkRequest
+from .work_request_error import WorkRequestError
+from .work_request_log_entry import WorkRequestLogEntry
+from .work_request_resource import WorkRequestResource
+from .work_request_summary import WorkRequestSummary
+
+# Maps type names to classes for application_migration services.
+application_migration_type_mapping = {
+ "AuthorizationDetails": AuthorizationDetails,
+ "ChangeCompartmentDetails": ChangeCompartmentDetails,
+ "ConfigurationField": ConfigurationField,
+ "CreateMigrationDetails": CreateMigrationDetails,
+ "CreateSourceDetails": CreateSourceDetails,
+ "DiscoveryDetails": DiscoveryDetails,
+ "IcsDiscoveryDetails": IcsDiscoveryDetails,
+ "InternalAuthorizationDetails": InternalAuthorizationDetails,
+ "InternalSourceDetails": InternalSourceDetails,
+ "JcsDiscoveryDetails": JcsDiscoveryDetails,
+ "Migration": Migration,
+ "MigrationSummary": MigrationSummary,
+ "OacDiscoveryDetails": OacDiscoveryDetails,
+ "OcicAuthorizationDetails": OcicAuthorizationDetails,
+ "OcicSourceDetails": OcicSourceDetails,
+ "OicDiscoveryDetails": OicDiscoveryDetails,
+ "PcsDiscoveryDetails": PcsDiscoveryDetails,
+ "SoacsDiscoveryDetails": SoacsDiscoveryDetails,
+ "Source": Source,
+ "SourceApplication": SourceApplication,
+ "SourceApplicationSummary": SourceApplicationSummary,
+ "SourceDetails": SourceDetails,
+ "SourceSummary": SourceSummary,
+ "UpdateMigrationDetails": UpdateMigrationDetails,
+ "UpdateSourceDetails": UpdateSourceDetails,
+ "WorkRequest": WorkRequest,
+ "WorkRequestError": WorkRequestError,
+ "WorkRequestLogEntry": WorkRequestLogEntry,
+ "WorkRequestResource": WorkRequestResource,
+ "WorkRequestSummary": WorkRequestSummary
+}
diff --git a/src/oci/application_migration/models/authorization_details.py b/src/oci/application_migration/models/authorization_details.py
new file mode 100644
index 0000000000..bb335444fc
--- /dev/null
+++ b/src/oci/application_migration/models/authorization_details.py
@@ -0,0 +1,107 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AuthorizationDetails(object):
+ """
+ Base model for different source authorization methods
+ """
+
+ #: A constant which can be used with the type property of a AuthorizationDetails.
+ #: This constant has a value of "OCIC"
+ TYPE_OCIC = "OCIC"
+
+ #: A constant which can be used with the type property of a AuthorizationDetails.
+ #: This constant has a value of "INTERNAL_COMPUTE"
+ TYPE_INTERNAL_COMPUTE = "INTERNAL_COMPUTE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AuthorizationDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input
+ to a service operations then you should favor using a subclass over the base class:
+
+ * :class:`~oci.application_migration.models.InternalAuthorizationDetails`
+ * :class:`~oci.application_migration.models.OcicAuthorizationDetails`
+
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this AuthorizationDetails.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE"
+ :type type: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type'
+ }
+
+ self._type = None
+
+ @staticmethod
+ def get_subtype(object_dictionary):
+ """
+ Given the hash representation of a subtype of this class,
+ use the info in the hash to return the class of the subtype.
+ """
+ type = object_dictionary['type']
+
+ if type == 'INTERNAL_COMPUTE':
+ return 'InternalAuthorizationDetails'
+
+ if type == 'OCIC':
+ return 'OcicAuthorizationDetails'
+ else:
+ return 'AuthorizationDetails'
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this AuthorizationDetails.
+ The type of source environment
+
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE"
+
+
+ :return: The type of this AuthorizationDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this AuthorizationDetails.
+ The type of source environment
+
+
+ :param type: The type of this AuthorizationDetails.
+ :type: str
+ """
+ allowed_values = ["OCIC", "INTERNAL_COMPUTE"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ raise ValueError(
+ "Invalid value for `type`, must be None or one of {0}"
+ .format(allowed_values)
+ )
+ self._type = type
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/change_compartment_details.py b/src/oci/application_migration/models/change_compartment_details.py
new file mode 100644
index 0000000000..29e7bd814d
--- /dev/null
+++ b/src/oci/application_migration/models/change_compartment_details.py
@@ -0,0 +1,75 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ChangeCompartmentDetails(object):
+ """
+ Provides the updated compartment OCID
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ChangeCompartmentDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ChangeCompartmentDetails.
+ :type compartment_id: str
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId'
+ }
+
+ self._compartment_id = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ChangeCompartmentDetails.
+ The `OCID`__ of the compartment
+ into which the resource should be moved.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The compartment_id of this ChangeCompartmentDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ChangeCompartmentDetails.
+ The `OCID`__ of the compartment
+ into which the resource should be moved.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param compartment_id: The compartment_id of this ChangeCompartmentDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/configuration_field.py b/src/oci/application_migration/models/configuration_field.py
new file mode 100644
index 0000000000..2fe84a5232
--- /dev/null
+++ b/src/oci/application_migration/models/configuration_field.py
@@ -0,0 +1,255 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ConfigurationField(object):
+ """
+ Information required to migrate an application. Populated by the service as the source application is introspected
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ConfigurationField object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this ConfigurationField.
+ :type name: str
+
+ :param group:
+ The value to assign to the group property of this ConfigurationField.
+ :type group: str
+
+ :param type:
+ The value to assign to the type property of this ConfigurationField.
+ :type type: str
+
+ :param value:
+ The value to assign to the value property of this ConfigurationField.
+ :type value: str
+
+ :param description:
+ The value to assign to the description property of this ConfigurationField.
+ :type description: str
+
+ :param is_required:
+ The value to assign to the is_required property of this ConfigurationField.
+ :type is_required: bool
+
+ :param is_mutable:
+ The value to assign to the is_mutable property of this ConfigurationField.
+ :type is_mutable: bool
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'group': 'str',
+ 'type': 'str',
+ 'value': 'str',
+ 'description': 'str',
+ 'is_required': 'bool',
+ 'is_mutable': 'bool'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'group': 'group',
+ 'type': 'type',
+ 'value': 'value',
+ 'description': 'description',
+ 'is_required': 'isRequired',
+ 'is_mutable': 'isMutable'
+ }
+
+ self._name = None
+ self._group = None
+ self._type = None
+ self._value = None
+ self._description = None
+ self._is_required = None
+ self._is_mutable = None
+
+ @property
+ def name(self):
+ """
+ Gets the name of this ConfigurationField.
+ The name of the configuration field
+
+
+ :return: The name of this ConfigurationField.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this ConfigurationField.
+ The name of the configuration field
+
+
+ :param name: The name of this ConfigurationField.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def group(self):
+ """
+ Gets the group of this ConfigurationField.
+ The name of the group to which this field belongs, if any.
+
+
+ :return: The group of this ConfigurationField.
+ :rtype: str
+ """
+ return self._group
+
+ @group.setter
+ def group(self, group):
+ """
+ Sets the group of this ConfigurationField.
+ The name of the group to which this field belongs, if any.
+
+
+ :param group: The group of this ConfigurationField.
+ :type: str
+ """
+ self._group = group
+
+ @property
+ def type(self):
+ """
+ Gets the type of this ConfigurationField.
+ The configuration field type
+
+
+ :return: The type of this ConfigurationField.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this ConfigurationField.
+ The configuration field type
+
+
+ :param type: The type of this ConfigurationField.
+ :type: str
+ """
+ self._type = type
+
+ @property
+ def value(self):
+ """
+ Gets the value of this ConfigurationField.
+ The value of the field
+
+
+ :return: The value of this ConfigurationField.
+ :rtype: str
+ """
+ return self._value
+
+ @value.setter
+ def value(self, value):
+ """
+ Sets the value of this ConfigurationField.
+ The value of the field
+
+
+ :param value: The value of this ConfigurationField.
+ :type: str
+ """
+ self._value = value
+
+ @property
+ def description(self):
+ """
+ Gets the description of this ConfigurationField.
+ Help text to guide the customer in setting the configuration value
+
+
+ :return: The description of this ConfigurationField.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this ConfigurationField.
+ Help text to guide the customer in setting the configuration value
+
+
+ :param description: The description of this ConfigurationField.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def is_required(self):
+ """
+ Gets the is_required of this ConfigurationField.
+ Indicates whether or not the field is required (defaults to true)
+
+
+ :return: The is_required of this ConfigurationField.
+ :rtype: bool
+ """
+ return self._is_required
+
+ @is_required.setter
+ def is_required(self, is_required):
+ """
+ Sets the is_required of this ConfigurationField.
+ Indicates whether or not the field is required (defaults to true)
+
+
+ :param is_required: The is_required of this ConfigurationField.
+ :type: bool
+ """
+ self._is_required = is_required
+
+ @property
+ def is_mutable(self):
+ """
+ Gets the is_mutable of this ConfigurationField.
+ Indicates whether or not the field may be modified (defaults to true)
+
+
+ :return: The is_mutable of this ConfigurationField.
+ :rtype: bool
+ """
+ return self._is_mutable
+
+ @is_mutable.setter
+ def is_mutable(self, is_mutable):
+ """
+ Sets the is_mutable of this ConfigurationField.
+ Indicates whether or not the field may be modified (defaults to true)
+
+
+ :param is_mutable: The is_mutable of this ConfigurationField.
+ :type: bool
+ """
+ self._is_mutable = is_mutable
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/create_migration_details.py b/src/oci/application_migration/models/create_migration_details.py
new file mode 100644
index 0000000000..e4ff4c8e23
--- /dev/null
+++ b/src/oci/application_migration/models/create_migration_details.py
@@ -0,0 +1,348 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateMigrationDetails(object):
+ """
+ An application being migrated from a source environment to OCI.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateMigrationDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateMigrationDetails.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateMigrationDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateMigrationDetails.
+ :type description: str
+
+ :param source_id:
+ The value to assign to the source_id property of this CreateMigrationDetails.
+ :type source_id: str
+
+ :param application_name:
+ The value to assign to the application_name property of this CreateMigrationDetails.
+ :type application_name: str
+
+ :param discovery_details:
+ The value to assign to the discovery_details property of this CreateMigrationDetails.
+ :type discovery_details: DiscoveryDetails
+
+ :param service_config:
+ The value to assign to the service_config property of this CreateMigrationDetails.
+ :type service_config: dict(str, ConfigurationField)
+
+ :param application_config:
+ The value to assign to the application_config property of this CreateMigrationDetails.
+ :type application_config: dict(str, ConfigurationField)
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateMigrationDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateMigrationDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'source_id': 'str',
+ 'application_name': 'str',
+ 'discovery_details': 'DiscoveryDetails',
+ 'service_config': 'dict(str, ConfigurationField)',
+ 'application_config': 'dict(str, ConfigurationField)',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'source_id': 'sourceId',
+ 'application_name': 'applicationName',
+ 'discovery_details': 'discoveryDetails',
+ 'service_config': 'serviceConfig',
+ 'application_config': 'applicationConfig',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._compartment_id = None
+ self._display_name = None
+ self._description = None
+ self._source_id = None
+ self._application_name = None
+ self._discovery_details = None
+ self._service_config = None
+ self._application_config = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateMigrationDetails.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :return: The compartment_id of this CreateMigrationDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateMigrationDetails.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :param compartment_id: The compartment_id of this CreateMigrationDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this CreateMigrationDetails.
+ Human-readable name of the application.
+
+
+ :return: The display_name of this CreateMigrationDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateMigrationDetails.
+ Human-readable name of the application.
+
+
+ :param display_name: The display_name of this CreateMigrationDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateMigrationDetails.
+ Description of the application.
+
+
+ :return: The description of this CreateMigrationDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateMigrationDetails.
+ Description of the application.
+
+
+ :param description: The description of this CreateMigrationDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def source_id(self):
+ """
+ **[Required]** Gets the source_id of this CreateMigrationDetails.
+ Unique identifier (OCID) of the application source.
+
+
+ :return: The source_id of this CreateMigrationDetails.
+ :rtype: str
+ """
+ return self._source_id
+
+ @source_id.setter
+ def source_id(self, source_id):
+ """
+ Sets the source_id of this CreateMigrationDetails.
+ Unique identifier (OCID) of the application source.
+
+
+ :param source_id: The source_id of this CreateMigrationDetails.
+ :type: str
+ """
+ self._source_id = source_id
+
+ @property
+ def application_name(self):
+ """
+ **[Required]** Gets the application_name of this CreateMigrationDetails.
+ Name of the application being migrated from the source.
+
+
+ :return: The application_name of this CreateMigrationDetails.
+ :rtype: str
+ """
+ return self._application_name
+
+ @application_name.setter
+ def application_name(self, application_name):
+ """
+ Sets the application_name of this CreateMigrationDetails.
+ Name of the application being migrated from the source.
+
+
+ :param application_name: The application_name of this CreateMigrationDetails.
+ :type: str
+ """
+ self._application_name = application_name
+
+ @property
+ def discovery_details(self):
+ """
+ **[Required]** Gets the discovery_details of this CreateMigrationDetails.
+
+ :return: The discovery_details of this CreateMigrationDetails.
+ :rtype: DiscoveryDetails
+ """
+ return self._discovery_details
+
+ @discovery_details.setter
+ def discovery_details(self, discovery_details):
+ """
+ Sets the discovery_details of this CreateMigrationDetails.
+
+ :param discovery_details: The discovery_details of this CreateMigrationDetails.
+ :type: DiscoveryDetails
+ """
+ self._discovery_details = discovery_details
+
+ @property
+ def service_config(self):
+ """
+ Gets the service_config of this CreateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :return: The service_config of this CreateMigrationDetails.
+ :rtype: dict(str, ConfigurationField)
+ """
+ return self._service_config
+
+ @service_config.setter
+ def service_config(self, service_config):
+ """
+ Sets the service_config of this CreateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :param service_config: The service_config of this CreateMigrationDetails.
+ :type: dict(str, ConfigurationField)
+ """
+ self._service_config = service_config
+
+ @property
+ def application_config(self):
+ """
+ Gets the application_config of this CreateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :return: The application_config of this CreateMigrationDetails.
+ :rtype: dict(str, ConfigurationField)
+ """
+ return self._application_config
+
+ @application_config.setter
+ def application_config(self, application_config):
+ """
+ Sets the application_config of this CreateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :param application_config: The application_config of this CreateMigrationDetails.
+ :type: dict(str, ConfigurationField)
+ """
+ self._application_config = application_config
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateMigrationDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this CreateMigrationDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateMigrationDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this CreateMigrationDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateMigrationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this CreateMigrationDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CreateMigrationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this CreateMigrationDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/create_source_details.py b/src/oci/application_migration/models/create_source_details.py
new file mode 100644
index 0000000000..effa666ea3
--- /dev/null
+++ b/src/oci/application_migration/models/create_source_details.py
@@ -0,0 +1,252 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateSourceDetails(object):
+ """
+ The Source object. Sources represent external locations from which
+ applications may be imported into an OCI tenancy.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateSourceDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateSourceDetails.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateSourceDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateSourceDetails.
+ :type description: str
+
+ :param source_details:
+ The value to assign to the source_details property of this CreateSourceDetails.
+ :type source_details: SourceDetails
+
+ :param authorization_details:
+ The value to assign to the authorization_details property of this CreateSourceDetails.
+ :type authorization_details: AuthorizationDetails
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateSourceDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateSourceDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'source_details': 'SourceDetails',
+ 'authorization_details': 'AuthorizationDetails',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'source_details': 'sourceDetails',
+ 'authorization_details': 'authorizationDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._compartment_id = None
+ self._display_name = None
+ self._description = None
+ self._source_details = None
+ self._authorization_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateSourceDetails.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :return: The compartment_id of this CreateSourceDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateSourceDetails.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :param compartment_id: The compartment_id of this CreateSourceDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this CreateSourceDetails.
+ Human-readable name of the source.
+
+
+ :return: The display_name of this CreateSourceDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateSourceDetails.
+ Human-readable name of the source.
+
+
+ :param display_name: The display_name of this CreateSourceDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateSourceDetails.
+ Description of the source.
+
+
+ :return: The description of this CreateSourceDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateSourceDetails.
+ Description of the source.
+
+
+ :param description: The description of this CreateSourceDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def source_details(self):
+ """
+ **[Required]** Gets the source_details of this CreateSourceDetails.
+
+ :return: The source_details of this CreateSourceDetails.
+ :rtype: SourceDetails
+ """
+ return self._source_details
+
+ @source_details.setter
+ def source_details(self, source_details):
+ """
+ Sets the source_details of this CreateSourceDetails.
+
+ :param source_details: The source_details of this CreateSourceDetails.
+ :type: SourceDetails
+ """
+ self._source_details = source_details
+
+ @property
+ def authorization_details(self):
+ """
+ Gets the authorization_details of this CreateSourceDetails.
+
+ :return: The authorization_details of this CreateSourceDetails.
+ :rtype: AuthorizationDetails
+ """
+ return self._authorization_details
+
+ @authorization_details.setter
+ def authorization_details(self, authorization_details):
+ """
+ Sets the authorization_details of this CreateSourceDetails.
+
+ :param authorization_details: The authorization_details of this CreateSourceDetails.
+ :type: AuthorizationDetails
+ """
+ self._authorization_details = authorization_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateSourceDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this CreateSourceDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateSourceDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this CreateSourceDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateSourceDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this CreateSourceDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CreateSourceDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this CreateSourceDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/discovery_details.py b/src/oci/application_migration/models/discovery_details.py
new file mode 100644
index 0000000000..75a4679fdf
--- /dev/null
+++ b/src/oci/application_migration/models/discovery_details.py
@@ -0,0 +1,139 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DiscoveryDetails(object):
+ """
+ Base model for different application discovery requirements
+ """
+
+ #: A constant which can be used with the type property of a DiscoveryDetails.
+ #: This constant has a value of "JCS"
+ TYPE_JCS = "JCS"
+
+ #: A constant which can be used with the type property of a DiscoveryDetails.
+ #: This constant has a value of "SOACS"
+ TYPE_SOACS = "SOACS"
+
+ #: A constant which can be used with the type property of a DiscoveryDetails.
+ #: This constant has a value of "OIC"
+ TYPE_OIC = "OIC"
+
+ #: A constant which can be used with the type property of a DiscoveryDetails.
+ #: This constant has a value of "OAC"
+ TYPE_OAC = "OAC"
+
+ #: A constant which can be used with the type property of a DiscoveryDetails.
+ #: This constant has a value of "ICS"
+ TYPE_ICS = "ICS"
+
+ #: A constant which can be used with the type property of a DiscoveryDetails.
+ #: This constant has a value of "PCS"
+ TYPE_PCS = "PCS"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DiscoveryDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input
+ to a service operations then you should favor using a subclass over the base class:
+
+ * :class:`~oci.application_migration.models.OicDiscoveryDetails`
+ * :class:`~oci.application_migration.models.PcsDiscoveryDetails`
+ * :class:`~oci.application_migration.models.IcsDiscoveryDetails`
+ * :class:`~oci.application_migration.models.OacDiscoveryDetails`
+ * :class:`~oci.application_migration.models.JcsDiscoveryDetails`
+ * :class:`~oci.application_migration.models.SoacsDiscoveryDetails`
+
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this DiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type'
+ }
+
+ self._type = None
+
+ @staticmethod
+ def get_subtype(object_dictionary):
+ """
+ Given the hash representation of a subtype of this class,
+ use the info in the hash to return the class of the subtype.
+ """
+ type = object_dictionary['type']
+
+ if type == 'OIC':
+ return 'OicDiscoveryDetails'
+
+ if type == 'PCS':
+ return 'PcsDiscoveryDetails'
+
+ if type == 'ICS':
+ return 'IcsDiscoveryDetails'
+
+ if type == 'OAC':
+ return 'OacDiscoveryDetails'
+
+ if type == 'JCS':
+ return 'JcsDiscoveryDetails'
+
+ if type == 'SOACS':
+ return 'SoacsDiscoveryDetails'
+ else:
+ return 'DiscoveryDetails'
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this DiscoveryDetails.
+ The type of migration
+
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+
+
+ :return: The type of this DiscoveryDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this DiscoveryDetails.
+ The type of migration
+
+
+ :param type: The type of this DiscoveryDetails.
+ :type: str
+ """
+ allowed_values = ["JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ raise ValueError(
+ "Invalid value for `type`, must be None or one of {0}"
+ .format(allowed_values)
+ )
+ self._type = type
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/ics_discovery_details.py b/src/oci/application_migration/models/ics_discovery_details.py
new file mode 100644
index 0000000000..3a1f42ca5c
--- /dev/null
+++ b/src/oci/application_migration/models/ics_discovery_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .discovery_details import DiscoveryDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class IcsDiscoveryDetails(DiscoveryDetails):
+ """
+ Specifies the credentials to access the source ICS instance
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new IcsDiscoveryDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.IcsDiscoveryDetails.type` attribute
+ of this class is ``ICS`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this IcsDiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param service_instance_user:
+ The value to assign to the service_instance_user property of this IcsDiscoveryDetails.
+ :type service_instance_user: str
+
+ :param service_instance_password:
+ The value to assign to the service_instance_password property of this IcsDiscoveryDetails.
+ :type service_instance_password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'service_instance_user': 'str',
+ 'service_instance_password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'service_instance_user': 'serviceInstanceUser',
+ 'service_instance_password': 'serviceInstancePassword'
+ }
+
+ self._type = None
+ self._service_instance_user = None
+ self._service_instance_password = None
+ self._type = 'ICS'
+
+ @property
+ def service_instance_user(self):
+ """
+ **[Required]** Gets the service_instance_user of this IcsDiscoveryDetails.
+ The ICS instance admin user
+
+
+ :return: The service_instance_user of this IcsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_user
+
+ @service_instance_user.setter
+ def service_instance_user(self, service_instance_user):
+ """
+ Sets the service_instance_user of this IcsDiscoveryDetails.
+ The ICS instance admin user
+
+
+ :param service_instance_user: The service_instance_user of this IcsDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_user = service_instance_user
+
+ @property
+ def service_instance_password(self):
+ """
+ **[Required]** Gets the service_instance_password of this IcsDiscoveryDetails.
+ The ICS instance admin password
+
+
+ :return: The service_instance_password of this IcsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_password
+
+ @service_instance_password.setter
+ def service_instance_password(self, service_instance_password):
+ """
+ Sets the service_instance_password of this IcsDiscoveryDetails.
+ The ICS instance admin password
+
+
+ :param service_instance_password: The service_instance_password of this IcsDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_password = service_instance_password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/internal_authorization_details.py b/src/oci/application_migration/models/internal_authorization_details.py
new file mode 100644
index 0000000000..1b5d47e741
--- /dev/null
+++ b/src/oci/application_migration/models/internal_authorization_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .authorization_details import AuthorizationDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class InternalAuthorizationDetails(AuthorizationDetails):
+ """
+ Specifies the credentials to access the source Oracle Cloud Infrastructure - Classic environment.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new InternalAuthorizationDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.InternalAuthorizationDetails.type` attribute
+ of this class is ``INTERNAL_COMPUTE`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this InternalAuthorizationDetails.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE"
+ :type type: str
+
+ :param username:
+ The value to assign to the username property of this InternalAuthorizationDetails.
+ :type username: str
+
+ :param password:
+ The value to assign to the password property of this InternalAuthorizationDetails.
+ :type password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'username': 'str',
+ 'password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'username': 'username',
+ 'password': 'password'
+ }
+
+ self._type = None
+ self._username = None
+ self._password = None
+ self._type = 'INTERNAL_COMPUTE'
+
+ @property
+ def username(self):
+ """
+ **[Required]** Gets the username of this InternalAuthorizationDetails.
+ User with Compute Operations role in Oracle Cloud Infrastructure - Classic.
+
+
+ :return: The username of this InternalAuthorizationDetails.
+ :rtype: str
+ """
+ return self._username
+
+ @username.setter
+ def username(self, username):
+ """
+ Sets the username of this InternalAuthorizationDetails.
+ User with Compute Operations role in Oracle Cloud Infrastructure - Classic.
+
+
+ :param username: The username of this InternalAuthorizationDetails.
+ :type: str
+ """
+ self._username = username
+
+ @property
+ def password(self):
+ """
+ **[Required]** Gets the password of this InternalAuthorizationDetails.
+ Password for this user.
+
+
+ :return: The password of this InternalAuthorizationDetails.
+ :rtype: str
+ """
+ return self._password
+
+ @password.setter
+ def password(self, password):
+ """
+ Sets the password of this InternalAuthorizationDetails.
+ Password for this user.
+
+
+ :param password: The password of this InternalAuthorizationDetails.
+ :type: str
+ """
+ self._password = password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/internal_source_details.py b/src/oci/application_migration/models/internal_source_details.py
new file mode 100644
index 0000000000..01bf39acb0
--- /dev/null
+++ b/src/oci/application_migration/models/internal_source_details.py
@@ -0,0 +1,79 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .source_details import SourceDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class InternalSourceDetails(SourceDetails):
+ """
+ Specifies configuration specific to the source environment.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new InternalSourceDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.InternalSourceDetails.type` attribute
+ of this class is ``INTERNAL_COMPUTE`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this InternalSourceDetails.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE"
+ :type type: str
+
+ :param account_name:
+ The value to assign to the account_name property of this InternalSourceDetails.
+ :type account_name: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'account_name': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'account_name': 'accountName'
+ }
+
+ self._type = None
+ self._account_name = None
+ self._type = 'INTERNAL_COMPUTE'
+
+ @property
+ def account_name(self):
+ """
+ **[Required]** Gets the account_name of this InternalSourceDetails.
+ The tradition cloud account name
+
+
+ :return: The account_name of this InternalSourceDetails.
+ :rtype: str
+ """
+ return self._account_name
+
+ @account_name.setter
+ def account_name(self, account_name):
+ """
+ Sets the account_name of this InternalSourceDetails.
+ The tradition cloud account name
+
+
+ :param account_name: The account_name of this InternalSourceDetails.
+ :type: str
+ """
+ self._account_name = account_name
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/jcs_discovery_details.py b/src/oci/application_migration/models/jcs_discovery_details.py
new file mode 100644
index 0000000000..3d6fb6e19f
--- /dev/null
+++ b/src/oci/application_migration/models/jcs_discovery_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .discovery_details import DiscoveryDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JcsDiscoveryDetails(DiscoveryDetails):
+ """
+ Specifies the credentials to access the source JCS instance
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JcsDiscoveryDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.JcsDiscoveryDetails.type` attribute
+ of this class is ``JCS`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this JcsDiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param weblogic_user:
+ The value to assign to the weblogic_user property of this JcsDiscoveryDetails.
+ :type weblogic_user: str
+
+ :param weblogic_password:
+ The value to assign to the weblogic_password property of this JcsDiscoveryDetails.
+ :type weblogic_password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'weblogic_user': 'str',
+ 'weblogic_password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'weblogic_user': 'weblogicUser',
+ 'weblogic_password': 'weblogicPassword'
+ }
+
+ self._type = None
+ self._weblogic_user = None
+ self._weblogic_password = None
+ self._type = 'JCS'
+
+ @property
+ def weblogic_user(self):
+ """
+ **[Required]** Gets the weblogic_user of this JcsDiscoveryDetails.
+ The JCS instance weblogic admin user
+
+
+ :return: The weblogic_user of this JcsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._weblogic_user
+
+ @weblogic_user.setter
+ def weblogic_user(self, weblogic_user):
+ """
+ Sets the weblogic_user of this JcsDiscoveryDetails.
+ The JCS instance weblogic admin user
+
+
+ :param weblogic_user: The weblogic_user of this JcsDiscoveryDetails.
+ :type: str
+ """
+ self._weblogic_user = weblogic_user
+
+ @property
+ def weblogic_password(self):
+ """
+ **[Required]** Gets the weblogic_password of this JcsDiscoveryDetails.
+ The JCS instance weblogic admin password
+
+
+ :return: The weblogic_password of this JcsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._weblogic_password
+
+ @weblogic_password.setter
+ def weblogic_password(self, weblogic_password):
+ """
+ Sets the weblogic_password of this JcsDiscoveryDetails.
+ The JCS instance weblogic admin password
+
+
+ :param weblogic_password: The weblogic_password of this JcsDiscoveryDetails.
+ :type: str
+ """
+ self._weblogic_password = weblogic_password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/migration.py b/src/oci/application_migration/models/migration.py
new file mode 100644
index 0000000000..de6f555287
--- /dev/null
+++ b/src/oci/application_migration/models/migration.py
@@ -0,0 +1,539 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Migration(object):
+ """
+ An application being migrated from a source environment to OCI.
+ """
+
+ #: A constant which can be used with the application_type property of a Migration.
+ #: This constant has a value of "JCS"
+ APPLICATION_TYPE_JCS = "JCS"
+
+ #: A constant which can be used with the application_type property of a Migration.
+ #: This constant has a value of "SOACS"
+ APPLICATION_TYPE_SOACS = "SOACS"
+
+ #: A constant which can be used with the application_type property of a Migration.
+ #: This constant has a value of "OIC"
+ APPLICATION_TYPE_OIC = "OIC"
+
+ #: A constant which can be used with the application_type property of a Migration.
+ #: This constant has a value of "OAC"
+ APPLICATION_TYPE_OAC = "OAC"
+
+ #: A constant which can be used with the application_type property of a Migration.
+ #: This constant has a value of "ICS"
+ APPLICATION_TYPE_ICS = "ICS"
+
+ #: A constant which can be used with the application_type property of a Migration.
+ #: This constant has a value of "PCS"
+ APPLICATION_TYPE_PCS = "PCS"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Migration object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this Migration.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this Migration.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Migration.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Migration.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Migration.
+ :type time_created: datetime
+
+ :param source_id:
+ The value to assign to the source_id property of this Migration.
+ :type source_id: str
+
+ :param application_name:
+ The value to assign to the application_name property of this Migration.
+ :type application_name: str
+
+ :param application_type:
+ The value to assign to the application_type property of this Migration.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type application_type: str
+
+ :param service_config:
+ The value to assign to the service_config property of this Migration.
+ :type service_config: dict(str, ConfigurationField)
+
+ :param application_config:
+ The value to assign to the application_config property of this Migration.
+ :type application_config: dict(str, ConfigurationField)
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Migration.
+ :type lifecycle_state: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this Migration.
+ :type lifecycle_details: str
+
+ :param migration_state:
+ The value to assign to the migration_state property of this Migration.
+ :type migration_state: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this Migration.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this Migration.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'source_id': 'str',
+ 'application_name': 'str',
+ 'application_type': 'str',
+ 'service_config': 'dict(str, ConfigurationField)',
+ 'application_config': 'dict(str, ConfigurationField)',
+ 'lifecycle_state': 'str',
+ 'lifecycle_details': 'str',
+ 'migration_state': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'source_id': 'sourceId',
+ 'application_name': 'applicationName',
+ 'application_type': 'applicationType',
+ 'service_config': 'serviceConfig',
+ 'application_config': 'applicationConfig',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'migration_state': 'migrationState',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._display_name = None
+ self._description = None
+ self._time_created = None
+ self._source_id = None
+ self._application_name = None
+ self._application_type = None
+ self._service_config = None
+ self._application_config = None
+ self._lifecycle_state = None
+ self._lifecycle_details = None
+ self._migration_state = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ Gets the id of this Migration.
+ Unique identifier (OCID) for the application
+
+
+ :return: The id of this Migration.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this Migration.
+ Unique identifier (OCID) for the application
+
+
+ :param id: The id of this Migration.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ Gets the compartment_id of this Migration.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :return: The compartment_id of this Migration.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this Migration.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :param compartment_id: The compartment_id of this Migration.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Migration.
+ Human-readable name of the migration.
+
+
+ :return: The display_name of this Migration.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Migration.
+ Human-readable name of the migration.
+
+
+ :param display_name: The display_name of this Migration.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Migration.
+ Description of the migration.
+
+
+ :return: The description of this Migration.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Migration.
+ Description of the migration.
+
+
+ :param description: The description of this Migration.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Migration.
+ The date and time at which the migration was created.
+
+
+ :return: The time_created of this Migration.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Migration.
+ The date and time at which the migration was created.
+
+
+ :param time_created: The time_created of this Migration.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def source_id(self):
+ """
+ Gets the source_id of this Migration.
+ Unique identifier (OCID) of the application source.
+
+
+ :return: The source_id of this Migration.
+ :rtype: str
+ """
+ return self._source_id
+
+ @source_id.setter
+ def source_id(self, source_id):
+ """
+ Sets the source_id of this Migration.
+ Unique identifier (OCID) of the application source.
+
+
+ :param source_id: The source_id of this Migration.
+ :type: str
+ """
+ self._source_id = source_id
+
+ @property
+ def application_name(self):
+ """
+ Gets the application_name of this Migration.
+ Name of the application being migrated from the source.
+
+
+ :return: The application_name of this Migration.
+ :rtype: str
+ """
+ return self._application_name
+
+ @application_name.setter
+ def application_name(self, application_name):
+ """
+ Sets the application_name of this Migration.
+ Name of the application being migrated from the source.
+
+
+ :param application_name: The application_name of this Migration.
+ :type: str
+ """
+ self._application_name = application_name
+
+ @property
+ def application_type(self):
+ """
+ Gets the application_type of this Migration.
+ The type of application being migrated.
+
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The application_type of this Migration.
+ :rtype: str
+ """
+ return self._application_type
+
+ @application_type.setter
+ def application_type(self, application_type):
+ """
+ Sets the application_type of this Migration.
+ The type of application being migrated.
+
+
+ :param application_type: The application_type of this Migration.
+ :type: str
+ """
+ allowed_values = ["JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"]
+ if not value_allowed_none_or_none_sentinel(application_type, allowed_values):
+ application_type = 'UNKNOWN_ENUM_VALUE'
+ self._application_type = application_type
+
+ @property
+ def service_config(self):
+ """
+ Gets the service_config of this Migration.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :return: The service_config of this Migration.
+ :rtype: dict(str, ConfigurationField)
+ """
+ return self._service_config
+
+ @service_config.setter
+ def service_config(self, service_config):
+ """
+ Sets the service_config of this Migration.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :param service_config: The service_config of this Migration.
+ :type: dict(str, ConfigurationField)
+ """
+ self._service_config = service_config
+
+ @property
+ def application_config(self):
+ """
+ Gets the application_config of this Migration.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :return: The application_config of this Migration.
+ :rtype: dict(str, ConfigurationField)
+ """
+ return self._application_config
+
+ @application_config.setter
+ def application_config(self, application_config):
+ """
+ Sets the application_config of this Migration.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :param application_config: The application_config of this Migration.
+ :type: dict(str, ConfigurationField)
+ """
+ self._application_config = application_config
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Migration.
+ The current state of the Migration
+
+
+ :return: The lifecycle_state of this Migration.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Migration.
+ The current state of the Migration
+
+
+ :param lifecycle_state: The lifecycle_state of this Migration.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this Migration.
+ Details about the current lifecycle state
+
+
+ :return: The lifecycle_details of this Migration.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this Migration.
+ Details about the current lifecycle state
+
+
+ :param lifecycle_details: The lifecycle_details of this Migration.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def migration_state(self):
+ """
+ Gets the migration_state of this Migration.
+ The current state of the overall Migration process
+
+
+ :return: The migration_state of this Migration.
+ :rtype: str
+ """
+ return self._migration_state
+
+ @migration_state.setter
+ def migration_state(self, migration_state):
+ """
+ Sets the migration_state of this Migration.
+ The current state of the overall Migration process
+
+
+ :param migration_state: The migration_state of this Migration.
+ :type: str
+ """
+ self._migration_state = migration_state
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this Migration.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this Migration.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this Migration.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this Migration.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this Migration.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this Migration.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this Migration.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this Migration.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/migration_summary.py b/src/oci/application_migration/models/migration_summary.py
new file mode 100644
index 0000000000..e5fe8109e8
--- /dev/null
+++ b/src/oci/application_migration/models/migration_summary.py
@@ -0,0 +1,477 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class MigrationSummary(object):
+ """
+ An application being migrated from a source environment to OCI.
+ """
+
+ #: A constant which can be used with the application_type property of a MigrationSummary.
+ #: This constant has a value of "JCS"
+ APPLICATION_TYPE_JCS = "JCS"
+
+ #: A constant which can be used with the application_type property of a MigrationSummary.
+ #: This constant has a value of "SOACS"
+ APPLICATION_TYPE_SOACS = "SOACS"
+
+ #: A constant which can be used with the application_type property of a MigrationSummary.
+ #: This constant has a value of "OIC"
+ APPLICATION_TYPE_OIC = "OIC"
+
+ #: A constant which can be used with the application_type property of a MigrationSummary.
+ #: This constant has a value of "OAC"
+ APPLICATION_TYPE_OAC = "OAC"
+
+ #: A constant which can be used with the application_type property of a MigrationSummary.
+ #: This constant has a value of "ICS"
+ APPLICATION_TYPE_ICS = "ICS"
+
+ #: A constant which can be used with the application_type property of a MigrationSummary.
+ #: This constant has a value of "PCS"
+ APPLICATION_TYPE_PCS = "PCS"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new MigrationSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this MigrationSummary.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this MigrationSummary.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this MigrationSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this MigrationSummary.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this MigrationSummary.
+ :type time_created: datetime
+
+ :param source_id:
+ The value to assign to the source_id property of this MigrationSummary.
+ :type source_id: str
+
+ :param application_name:
+ The value to assign to the application_name property of this MigrationSummary.
+ :type application_name: str
+
+ :param application_type:
+ The value to assign to the application_type property of this MigrationSummary.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type application_type: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this MigrationSummary.
+ :type lifecycle_state: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this MigrationSummary.
+ :type lifecycle_details: str
+
+ :param migration_state:
+ The value to assign to the migration_state property of this MigrationSummary.
+ :type migration_state: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this MigrationSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this MigrationSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'source_id': 'str',
+ 'application_name': 'str',
+ 'application_type': 'str',
+ 'lifecycle_state': 'str',
+ 'lifecycle_details': 'str',
+ 'migration_state': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'source_id': 'sourceId',
+ 'application_name': 'applicationName',
+ 'application_type': 'applicationType',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'migration_state': 'migrationState',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._display_name = None
+ self._description = None
+ self._time_created = None
+ self._source_id = None
+ self._application_name = None
+ self._application_type = None
+ self._lifecycle_state = None
+ self._lifecycle_details = None
+ self._migration_state = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ Gets the id of this MigrationSummary.
+ Unique identifier (OCID) for the application
+
+
+ :return: The id of this MigrationSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this MigrationSummary.
+ Unique identifier (OCID) for the application
+
+
+ :param id: The id of this MigrationSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ Gets the compartment_id of this MigrationSummary.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :return: The compartment_id of this MigrationSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this MigrationSummary.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :param compartment_id: The compartment_id of this MigrationSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this MigrationSummary.
+ Human-readable name of the migration.
+
+
+ :return: The display_name of this MigrationSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this MigrationSummary.
+ Human-readable name of the migration.
+
+
+ :param display_name: The display_name of this MigrationSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this MigrationSummary.
+ Description of the migration.
+
+
+ :return: The description of this MigrationSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this MigrationSummary.
+ Description of the migration.
+
+
+ :param description: The description of this MigrationSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this MigrationSummary.
+ The date and time at which the migration was created.
+
+
+ :return: The time_created of this MigrationSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this MigrationSummary.
+ The date and time at which the migration was created.
+
+
+ :param time_created: The time_created of this MigrationSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def source_id(self):
+ """
+ Gets the source_id of this MigrationSummary.
+ Unique identifier (OCID) of the source.
+
+
+ :return: The source_id of this MigrationSummary.
+ :rtype: str
+ """
+ return self._source_id
+
+ @source_id.setter
+ def source_id(self, source_id):
+ """
+ Sets the source_id of this MigrationSummary.
+ Unique identifier (OCID) of the source.
+
+
+ :param source_id: The source_id of this MigrationSummary.
+ :type: str
+ """
+ self._source_id = source_id
+
+ @property
+ def application_name(self):
+ """
+ Gets the application_name of this MigrationSummary.
+ Name of the application being migrated from the source.
+
+
+ :return: The application_name of this MigrationSummary.
+ :rtype: str
+ """
+ return self._application_name
+
+ @application_name.setter
+ def application_name(self, application_name):
+ """
+ Sets the application_name of this MigrationSummary.
+ Name of the application being migrated from the source.
+
+
+ :param application_name: The application_name of this MigrationSummary.
+ :type: str
+ """
+ self._application_name = application_name
+
+ @property
+ def application_type(self):
+ """
+ Gets the application_type of this MigrationSummary.
+ The type of application being migrated.
+
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The application_type of this MigrationSummary.
+ :rtype: str
+ """
+ return self._application_type
+
+ @application_type.setter
+ def application_type(self, application_type):
+ """
+ Sets the application_type of this MigrationSummary.
+ The type of application being migrated.
+
+
+ :param application_type: The application_type of this MigrationSummary.
+ :type: str
+ """
+ allowed_values = ["JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"]
+ if not value_allowed_none_or_none_sentinel(application_type, allowed_values):
+ application_type = 'UNKNOWN_ENUM_VALUE'
+ self._application_type = application_type
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this MigrationSummary.
+ The current state of the Migration
+
+
+ :return: The lifecycle_state of this MigrationSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this MigrationSummary.
+ The current state of the Migration
+
+
+ :param lifecycle_state: The lifecycle_state of this MigrationSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this MigrationSummary.
+ Details about the current lifecycle state
+
+
+ :return: The lifecycle_details of this MigrationSummary.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this MigrationSummary.
+ Details about the current lifecycle state
+
+
+ :param lifecycle_details: The lifecycle_details of this MigrationSummary.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def migration_state(self):
+ """
+ Gets the migration_state of this MigrationSummary.
+ The current state of the overall Migration process
+
+
+ :return: The migration_state of this MigrationSummary.
+ :rtype: str
+ """
+ return self._migration_state
+
+ @migration_state.setter
+ def migration_state(self, migration_state):
+ """
+ Sets the migration_state of this MigrationSummary.
+ The current state of the overall Migration process
+
+
+ :param migration_state: The migration_state of this MigrationSummary.
+ :type: str
+ """
+ self._migration_state = migration_state
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this MigrationSummary.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this MigrationSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this MigrationSummary.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this MigrationSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this MigrationSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this MigrationSummary.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this MigrationSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this MigrationSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/oac_discovery_details.py b/src/oci/application_migration/models/oac_discovery_details.py
new file mode 100644
index 0000000000..1211a78b5f
--- /dev/null
+++ b/src/oci/application_migration/models/oac_discovery_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .discovery_details import DiscoveryDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class OacDiscoveryDetails(DiscoveryDetails):
+ """
+ Specifies the credentials to access the source OAC instance
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new OacDiscoveryDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.OacDiscoveryDetails.type` attribute
+ of this class is ``OAC`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this OacDiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param service_instance_user:
+ The value to assign to the service_instance_user property of this OacDiscoveryDetails.
+ :type service_instance_user: str
+
+ :param service_instance_password:
+ The value to assign to the service_instance_password property of this OacDiscoveryDetails.
+ :type service_instance_password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'service_instance_user': 'str',
+ 'service_instance_password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'service_instance_user': 'serviceInstanceUser',
+ 'service_instance_password': 'serviceInstancePassword'
+ }
+
+ self._type = None
+ self._service_instance_user = None
+ self._service_instance_password = None
+ self._type = 'OAC'
+
+ @property
+ def service_instance_user(self):
+ """
+ **[Required]** Gets the service_instance_user of this OacDiscoveryDetails.
+ The OAC instance admin user
+
+
+ :return: The service_instance_user of this OacDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_user
+
+ @service_instance_user.setter
+ def service_instance_user(self, service_instance_user):
+ """
+ Sets the service_instance_user of this OacDiscoveryDetails.
+ The OAC instance admin user
+
+
+ :param service_instance_user: The service_instance_user of this OacDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_user = service_instance_user
+
+ @property
+ def service_instance_password(self):
+ """
+ **[Required]** Gets the service_instance_password of this OacDiscoveryDetails.
+ The OAC instance admin password
+
+
+ :return: The service_instance_password of this OacDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_password
+
+ @service_instance_password.setter
+ def service_instance_password(self, service_instance_password):
+ """
+ Sets the service_instance_password of this OacDiscoveryDetails.
+ The OAC instance admin password
+
+
+ :param service_instance_password: The service_instance_password of this OacDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_password = service_instance_password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/ocic_authorization_details.py b/src/oci/application_migration/models/ocic_authorization_details.py
new file mode 100644
index 0000000000..684508a30d
--- /dev/null
+++ b/src/oci/application_migration/models/ocic_authorization_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .authorization_details import AuthorizationDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class OcicAuthorizationDetails(AuthorizationDetails):
+ """
+ Specifies the credentials to access the source Oracle Cloud Infrastructure - Classic environment.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new OcicAuthorizationDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.OcicAuthorizationDetails.type` attribute
+ of this class is ``OCIC`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this OcicAuthorizationDetails.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE"
+ :type type: str
+
+ :param username:
+ The value to assign to the username property of this OcicAuthorizationDetails.
+ :type username: str
+
+ :param password:
+ The value to assign to the password property of this OcicAuthorizationDetails.
+ :type password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'username': 'str',
+ 'password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'username': 'username',
+ 'password': 'password'
+ }
+
+ self._type = None
+ self._username = None
+ self._password = None
+ self._type = 'OCIC'
+
+ @property
+ def username(self):
+ """
+ **[Required]** Gets the username of this OcicAuthorizationDetails.
+ User with Compute Operations role in Oracle Cloud Infrastructure - Classic.
+
+
+ :return: The username of this OcicAuthorizationDetails.
+ :rtype: str
+ """
+ return self._username
+
+ @username.setter
+ def username(self, username):
+ """
+ Sets the username of this OcicAuthorizationDetails.
+ User with Compute Operations role in Oracle Cloud Infrastructure - Classic.
+
+
+ :param username: The username of this OcicAuthorizationDetails.
+ :type: str
+ """
+ self._username = username
+
+ @property
+ def password(self):
+ """
+ **[Required]** Gets the password of this OcicAuthorizationDetails.
+ Password for this user.
+
+
+ :return: The password of this OcicAuthorizationDetails.
+ :rtype: str
+ """
+ return self._password
+
+ @password.setter
+ def password(self, password):
+ """
+ Sets the password of this OcicAuthorizationDetails.
+ Password for this user.
+
+
+ :param password: The password of this OcicAuthorizationDetails.
+ :type: str
+ """
+ self._password = password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/ocic_source_details.py b/src/oci/application_migration/models/ocic_source_details.py
new file mode 100644
index 0000000000..c9fb682d3d
--- /dev/null
+++ b/src/oci/application_migration/models/ocic_source_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .source_details import SourceDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class OcicSourceDetails(SourceDetails):
+ """
+ Specifies configuration specific to the source environment.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new OcicSourceDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.OcicSourceDetails.type` attribute
+ of this class is ``OCIC`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this OcicSourceDetails.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE"
+ :type type: str
+
+ :param region:
+ The value to assign to the region property of this OcicSourceDetails.
+ :type region: str
+
+ :param compute_account:
+ The value to assign to the compute_account property of this OcicSourceDetails.
+ :type compute_account: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'region': 'str',
+ 'compute_account': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'region': 'region',
+ 'compute_account': 'computeAccount'
+ }
+
+ self._type = None
+ self._region = None
+ self._compute_account = None
+ self._type = 'OCIC'
+
+ @property
+ def region(self):
+ """
+ **[Required]** Gets the region of this OcicSourceDetails.
+ The Oracle Cloud Infrastructure - Classic region name (e.g. us2-z11 or uscom-central-1)
+
+
+ :return: The region of this OcicSourceDetails.
+ :rtype: str
+ """
+ return self._region
+
+ @region.setter
+ def region(self, region):
+ """
+ Sets the region of this OcicSourceDetails.
+ The Oracle Cloud Infrastructure - Classic region name (e.g. us2-z11 or uscom-central-1)
+
+
+ :param region: The region of this OcicSourceDetails.
+ :type: str
+ """
+ self._region = region
+
+ @property
+ def compute_account(self):
+ """
+ **[Required]** Gets the compute_account of this OcicSourceDetails.
+ The compute account id
+
+
+ :return: The compute_account of this OcicSourceDetails.
+ :rtype: str
+ """
+ return self._compute_account
+
+ @compute_account.setter
+ def compute_account(self, compute_account):
+ """
+ Sets the compute_account of this OcicSourceDetails.
+ The compute account id
+
+
+ :param compute_account: The compute_account of this OcicSourceDetails.
+ :type: str
+ """
+ self._compute_account = compute_account
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/oic_discovery_details.py b/src/oci/application_migration/models/oic_discovery_details.py
new file mode 100644
index 0000000000..3f16b33e50
--- /dev/null
+++ b/src/oci/application_migration/models/oic_discovery_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .discovery_details import DiscoveryDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class OicDiscoveryDetails(DiscoveryDetails):
+ """
+ Specifies the credentials to access the source OIC instance
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new OicDiscoveryDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.OicDiscoveryDetails.type` attribute
+ of this class is ``OIC`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this OicDiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param service_instance_user:
+ The value to assign to the service_instance_user property of this OicDiscoveryDetails.
+ :type service_instance_user: str
+
+ :param service_instance_password:
+ The value to assign to the service_instance_password property of this OicDiscoveryDetails.
+ :type service_instance_password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'service_instance_user': 'str',
+ 'service_instance_password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'service_instance_user': 'serviceInstanceUser',
+ 'service_instance_password': 'serviceInstancePassword'
+ }
+
+ self._type = None
+ self._service_instance_user = None
+ self._service_instance_password = None
+ self._type = 'OIC'
+
+ @property
+ def service_instance_user(self):
+ """
+ **[Required]** Gets the service_instance_user of this OicDiscoveryDetails.
+ The OIC instance admin user
+
+
+ :return: The service_instance_user of this OicDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_user
+
+ @service_instance_user.setter
+ def service_instance_user(self, service_instance_user):
+ """
+ Sets the service_instance_user of this OicDiscoveryDetails.
+ The OIC instance admin user
+
+
+ :param service_instance_user: The service_instance_user of this OicDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_user = service_instance_user
+
+ @property
+ def service_instance_password(self):
+ """
+ **[Required]** Gets the service_instance_password of this OicDiscoveryDetails.
+ The OIC instance admin password
+
+
+ :return: The service_instance_password of this OicDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_password
+
+ @service_instance_password.setter
+ def service_instance_password(self, service_instance_password):
+ """
+ Sets the service_instance_password of this OicDiscoveryDetails.
+ The OIC instance admin password
+
+
+ :param service_instance_password: The service_instance_password of this OicDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_password = service_instance_password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/pcs_discovery_details.py b/src/oci/application_migration/models/pcs_discovery_details.py
new file mode 100644
index 0000000000..6ac587e0da
--- /dev/null
+++ b/src/oci/application_migration/models/pcs_discovery_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .discovery_details import DiscoveryDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PcsDiscoveryDetails(DiscoveryDetails):
+ """
+ Specifies the credentials to access the source PCS instance
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PcsDiscoveryDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.PcsDiscoveryDetails.type` attribute
+ of this class is ``PCS`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this PcsDiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param service_instance_user:
+ The value to assign to the service_instance_user property of this PcsDiscoveryDetails.
+ :type service_instance_user: str
+
+ :param service_instance_password:
+ The value to assign to the service_instance_password property of this PcsDiscoveryDetails.
+ :type service_instance_password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'service_instance_user': 'str',
+ 'service_instance_password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'service_instance_user': 'serviceInstanceUser',
+ 'service_instance_password': 'serviceInstancePassword'
+ }
+
+ self._type = None
+ self._service_instance_user = None
+ self._service_instance_password = None
+ self._type = 'PCS'
+
+ @property
+ def service_instance_user(self):
+ """
+ **[Required]** Gets the service_instance_user of this PcsDiscoveryDetails.
+ The PCS instance admin user
+
+
+ :return: The service_instance_user of this PcsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_user
+
+ @service_instance_user.setter
+ def service_instance_user(self, service_instance_user):
+ """
+ Sets the service_instance_user of this PcsDiscoveryDetails.
+ The PCS instance admin user
+
+
+ :param service_instance_user: The service_instance_user of this PcsDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_user = service_instance_user
+
+ @property
+ def service_instance_password(self):
+ """
+ **[Required]** Gets the service_instance_password of this PcsDiscoveryDetails.
+ The PCS instance admin password
+
+
+ :return: The service_instance_password of this PcsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._service_instance_password
+
+ @service_instance_password.setter
+ def service_instance_password(self, service_instance_password):
+ """
+ Sets the service_instance_password of this PcsDiscoveryDetails.
+ The PCS instance admin password
+
+
+ :param service_instance_password: The service_instance_password of this PcsDiscoveryDetails.
+ :type: str
+ """
+ self._service_instance_password = service_instance_password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/soacs_discovery_details.py b/src/oci/application_migration/models/soacs_discovery_details.py
new file mode 100644
index 0000000000..54ef51b37b
--- /dev/null
+++ b/src/oci/application_migration/models/soacs_discovery_details.py
@@ -0,0 +1,110 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from .discovery_details import DiscoveryDetails
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SoacsDiscoveryDetails(DiscoveryDetails):
+ """
+ Specifies the credentials to access the source SOACS instance
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SoacsDiscoveryDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.application_migration.models.SoacsDiscoveryDetails.type` attribute
+ of this class is ``SOACS`` and it should not be changed.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this SoacsDiscoveryDetails.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param weblogic_user:
+ The value to assign to the weblogic_user property of this SoacsDiscoveryDetails.
+ :type weblogic_user: str
+
+ :param weblogic_password:
+ The value to assign to the weblogic_password property of this SoacsDiscoveryDetails.
+ :type weblogic_password: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str',
+ 'weblogic_user': 'str',
+ 'weblogic_password': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type',
+ 'weblogic_user': 'weblogicUser',
+ 'weblogic_password': 'weblogicPassword'
+ }
+
+ self._type = None
+ self._weblogic_user = None
+ self._weblogic_password = None
+ self._type = 'SOACS'
+
+ @property
+ def weblogic_user(self):
+ """
+ **[Required]** Gets the weblogic_user of this SoacsDiscoveryDetails.
+ The SOACS instance weblogic admin user
+
+
+ :return: The weblogic_user of this SoacsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._weblogic_user
+
+ @weblogic_user.setter
+ def weblogic_user(self, weblogic_user):
+ """
+ Sets the weblogic_user of this SoacsDiscoveryDetails.
+ The SOACS instance weblogic admin user
+
+
+ :param weblogic_user: The weblogic_user of this SoacsDiscoveryDetails.
+ :type: str
+ """
+ self._weblogic_user = weblogic_user
+
+ @property
+ def weblogic_password(self):
+ """
+ **[Required]** Gets the weblogic_password of this SoacsDiscoveryDetails.
+ The SOACS instance weblogic admin password
+
+
+ :return: The weblogic_password of this SoacsDiscoveryDetails.
+ :rtype: str
+ """
+ return self._weblogic_password
+
+ @weblogic_password.setter
+ def weblogic_password(self, weblogic_password):
+ """
+ Sets the weblogic_password of this SoacsDiscoveryDetails.
+ The SOACS instance weblogic admin password
+
+
+ :param weblogic_password: The weblogic_password of this SoacsDiscoveryDetails.
+ :type: str
+ """
+ self._weblogic_password = weblogic_password
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/source.py b/src/oci/application_migration/models/source.py
new file mode 100644
index 0000000000..433710521a
--- /dev/null
+++ b/src/oci/application_migration/models/source.py
@@ -0,0 +1,349 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Source(object):
+ """
+ The Source object. Sources represent external locations from which
+ applications may be imported into an OCI tenancy.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Source object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this Source.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this Source.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Source.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Source.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Source.
+ :type time_created: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Source.
+ :type lifecycle_state: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this Source.
+ :type lifecycle_details: str
+
+ :param source_details:
+ The value to assign to the source_details property of this Source.
+ :type source_details: SourceDetails
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this Source.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this Source.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_details': 'str',
+ 'source_details': 'SourceDetails',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'source_details': 'sourceDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._display_name = None
+ self._description = None
+ self._time_created = None
+ self._lifecycle_state = None
+ self._lifecycle_details = None
+ self._source_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ Gets the id of this Source.
+ Unique identifier (OCID) for the source
+
+
+ :return: The id of this Source.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this Source.
+ Unique identifier (OCID) for the source
+
+
+ :param id: The id of this Source.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ Gets the compartment_id of this Source.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :return: The compartment_id of this Source.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this Source.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :param compartment_id: The compartment_id of this Source.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Source.
+ Human-readable name of the source.
+
+
+ :return: The display_name of this Source.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Source.
+ Human-readable name of the source.
+
+
+ :param display_name: The display_name of this Source.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Source.
+ Description of the source.
+
+
+ :return: The description of this Source.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Source.
+ Description of the source.
+
+
+ :param description: The description of this Source.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Source.
+ The date and time at which the source was created
+
+
+ :return: The time_created of this Source.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Source.
+ The date and time at which the source was created
+
+
+ :param time_created: The time_created of this Source.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Source.
+ The current state of the Source
+
+
+ :return: The lifecycle_state of this Source.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Source.
+ The current state of the Source
+
+
+ :param lifecycle_state: The lifecycle_state of this Source.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this Source.
+ Details about the current lifecycle state
+
+
+ :return: The lifecycle_details of this Source.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this Source.
+ Details about the current lifecycle state
+
+
+ :param lifecycle_details: The lifecycle_details of this Source.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def source_details(self):
+ """
+ Gets the source_details of this Source.
+
+ :return: The source_details of this Source.
+ :rtype: SourceDetails
+ """
+ return self._source_details
+
+ @source_details.setter
+ def source_details(self, source_details):
+ """
+ Sets the source_details of this Source.
+
+ :param source_details: The source_details of this Source.
+ :type: SourceDetails
+ """
+ self._source_details = source_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this Source.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this Source.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this Source.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this Source.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this Source.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this Source.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this Source.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this Source.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/source_application.py b/src/oci/application_migration/models/source_application.py
new file mode 100644
index 0000000000..99f9765bfe
--- /dev/null
+++ b/src/oci/application_migration/models/source_application.py
@@ -0,0 +1,226 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SourceApplication(object):
+ """
+ An application running in the source environment that is available for export.
+ """
+
+ #: A constant which can be used with the type property of a SourceApplication.
+ #: This constant has a value of "JCS"
+ TYPE_JCS = "JCS"
+
+ #: A constant which can be used with the type property of a SourceApplication.
+ #: This constant has a value of "SOACS"
+ TYPE_SOACS = "SOACS"
+
+ #: A constant which can be used with the type property of a SourceApplication.
+ #: This constant has a value of "OIC"
+ TYPE_OIC = "OIC"
+
+ #: A constant which can be used with the type property of a SourceApplication.
+ #: This constant has a value of "OAC"
+ TYPE_OAC = "OAC"
+
+ #: A constant which can be used with the type property of a SourceApplication.
+ #: This constant has a value of "ICS"
+ TYPE_ICS = "ICS"
+
+ #: A constant which can be used with the type property of a SourceApplication.
+ #: This constant has a value of "PCS"
+ TYPE_PCS = "PCS"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SourceApplication object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this SourceApplication.
+ :type name: str
+
+ :param type:
+ The value to assign to the type property of this SourceApplication.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+ :type type: str
+
+ :param source_id:
+ The value to assign to the source_id property of this SourceApplication.
+ :type source_id: str
+
+ :param version:
+ The value to assign to the version property of this SourceApplication.
+ :type version: str
+
+ :param state:
+ The value to assign to the state property of this SourceApplication.
+ :type state: str
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'type': 'str',
+ 'source_id': 'str',
+ 'version': 'str',
+ 'state': 'str'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'type': 'type',
+ 'source_id': 'sourceId',
+ 'version': 'version',
+ 'state': 'state'
+ }
+
+ self._name = None
+ self._type = None
+ self._source_id = None
+ self._version = None
+ self._state = None
+
+ @property
+ def name(self):
+ """
+ Gets the name of this SourceApplication.
+ The name of the application
+
+
+ :return: The name of this SourceApplication.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this SourceApplication.
+ The name of the application
+
+
+ :param name: The name of this SourceApplication.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def type(self):
+ """
+ Gets the type of this SourceApplication.
+ The type of application
+
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"
+
+
+ :return: The type of this SourceApplication.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this SourceApplication.
+ The type of application
+
+
+ :param type: The type of this SourceApplication.
+ :type: str
+ """
+ allowed_values = ["JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ raise ValueError(
+ "Invalid value for `type`, must be None or one of {0}"
+ .format(allowed_values)
+ )
+ self._type = type
+
+ @property
+ def source_id(self):
+ """
+ Gets the source_id of this SourceApplication.
+ Unique identifier (OCID) for the Source to which the application belongs
+
+
+ :return: The source_id of this SourceApplication.
+ :rtype: str
+ """
+ return self._source_id
+
+ @source_id.setter
+ def source_id(self, source_id):
+ """
+ Sets the source_id of this SourceApplication.
+ Unique identifier (OCID) for the Source to which the application belongs
+
+
+ :param source_id: The source_id of this SourceApplication.
+ :type: str
+ """
+ self._source_id = source_id
+
+ @property
+ def version(self):
+ """
+ Gets the version of this SourceApplication.
+ The version of the application server
+
+
+ :return: The version of this SourceApplication.
+ :rtype: str
+ """
+ return self._version
+
+ @version.setter
+ def version(self, version):
+ """
+ Sets the version of this SourceApplication.
+ The version of the application server
+
+
+ :param version: The version of this SourceApplication.
+ :type: str
+ """
+ self._version = version
+
+ @property
+ def state(self):
+ """
+ Gets the state of this SourceApplication.
+ The current application running state
+
+
+ :return: The state of this SourceApplication.
+ :rtype: str
+ """
+ return self._state
+
+ @state.setter
+ def state(self, state):
+ """
+ Sets the state of this SourceApplication.
+ The current application running state
+
+
+ :param state: The state of this SourceApplication.
+ :type: str
+ """
+ self._state = state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/source_application_summary.py b/src/oci/application_migration/models/source_application_summary.py
new file mode 100644
index 0000000000..62fe8ea973
--- /dev/null
+++ b/src/oci/application_migration/models/source_application_summary.py
@@ -0,0 +1,225 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SourceApplicationSummary(object):
+ """
+ An application running in the source environment that is available for export.
+ """
+
+ #: A constant which can be used with the type property of a SourceApplicationSummary.
+ #: This constant has a value of "JCS"
+ TYPE_JCS = "JCS"
+
+ #: A constant which can be used with the type property of a SourceApplicationSummary.
+ #: This constant has a value of "SOACS"
+ TYPE_SOACS = "SOACS"
+
+ #: A constant which can be used with the type property of a SourceApplicationSummary.
+ #: This constant has a value of "OIC"
+ TYPE_OIC = "OIC"
+
+ #: A constant which can be used with the type property of a SourceApplicationSummary.
+ #: This constant has a value of "OAC"
+ TYPE_OAC = "OAC"
+
+ #: A constant which can be used with the type property of a SourceApplicationSummary.
+ #: This constant has a value of "ICS"
+ TYPE_ICS = "ICS"
+
+ #: A constant which can be used with the type property of a SourceApplicationSummary.
+ #: This constant has a value of "PCS"
+ TYPE_PCS = "PCS"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SourceApplicationSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this SourceApplicationSummary.
+ :type name: str
+
+ :param type:
+ The value to assign to the type property of this SourceApplicationSummary.
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ :param source_id:
+ The value to assign to the source_id property of this SourceApplicationSummary.
+ :type source_id: str
+
+ :param version:
+ The value to assign to the version property of this SourceApplicationSummary.
+ :type version: str
+
+ :param state:
+ The value to assign to the state property of this SourceApplicationSummary.
+ :type state: str
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'type': 'str',
+ 'source_id': 'str',
+ 'version': 'str',
+ 'state': 'str'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'type': 'type',
+ 'source_id': 'sourceId',
+ 'version': 'version',
+ 'state': 'state'
+ }
+
+ self._name = None
+ self._type = None
+ self._source_id = None
+ self._version = None
+ self._state = None
+
+ @property
+ def name(self):
+ """
+ Gets the name of this SourceApplicationSummary.
+ The name of the application
+
+
+ :return: The name of this SourceApplicationSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this SourceApplicationSummary.
+ The name of the application
+
+
+ :param name: The name of this SourceApplicationSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def type(self):
+ """
+ Gets the type of this SourceApplicationSummary.
+ The type of application
+
+ Allowed values for this property are: "JCS", "SOACS", "OIC", "OAC", "ICS", "PCS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this SourceApplicationSummary.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this SourceApplicationSummary.
+ The type of application
+
+
+ :param type: The type of this SourceApplicationSummary.
+ :type: str
+ """
+ allowed_values = ["JCS", "SOACS", "OIC", "OAC", "ICS", "PCS"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ @property
+ def source_id(self):
+ """
+ Gets the source_id of this SourceApplicationSummary.
+ Unique identifier (OCID) for the Source to which the application belongs
+
+
+ :return: The source_id of this SourceApplicationSummary.
+ :rtype: str
+ """
+ return self._source_id
+
+ @source_id.setter
+ def source_id(self, source_id):
+ """
+ Sets the source_id of this SourceApplicationSummary.
+ Unique identifier (OCID) for the Source to which the application belongs
+
+
+ :param source_id: The source_id of this SourceApplicationSummary.
+ :type: str
+ """
+ self._source_id = source_id
+
+ @property
+ def version(self):
+ """
+ Gets the version of this SourceApplicationSummary.
+ The version of the application server
+
+
+ :return: The version of this SourceApplicationSummary.
+ :rtype: str
+ """
+ return self._version
+
+ @version.setter
+ def version(self, version):
+ """
+ Sets the version of this SourceApplicationSummary.
+ The version of the application server
+
+
+ :param version: The version of this SourceApplicationSummary.
+ :type: str
+ """
+ self._version = version
+
+ @property
+ def state(self):
+ """
+ Gets the state of this SourceApplicationSummary.
+ The current application running state
+
+
+ :return: The state of this SourceApplicationSummary.
+ :rtype: str
+ """
+ return self._state
+
+ @state.setter
+ def state(self, state):
+ """
+ Sets the state of this SourceApplicationSummary.
+ The current application running state
+
+
+ :param state: The state of this SourceApplicationSummary.
+ :type: str
+ """
+ self._state = state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/source_details.py b/src/oci/application_migration/models/source_details.py
new file mode 100644
index 0000000000..3465f82cde
--- /dev/null
+++ b/src/oci/application_migration/models/source_details.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SourceDetails(object):
+ """
+ Base model for different source environment types
+ """
+
+ #: A constant which can be used with the type property of a SourceDetails.
+ #: This constant has a value of "OCIC"
+ TYPE_OCIC = "OCIC"
+
+ #: A constant which can be used with the type property of a SourceDetails.
+ #: This constant has a value of "INTERNAL_COMPUTE"
+ TYPE_INTERNAL_COMPUTE = "INTERNAL_COMPUTE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SourceDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input
+ to a service operations then you should favor using a subclass over the base class:
+
+ * :class:`~oci.application_migration.models.InternalSourceDetails`
+ * :class:`~oci.application_migration.models.OcicSourceDetails`
+
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param type:
+ The value to assign to the type property of this SourceDetails.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ """
+ self.swagger_types = {
+ 'type': 'str'
+ }
+
+ self.attribute_map = {
+ 'type': 'type'
+ }
+
+ self._type = None
+
+ @staticmethod
+ def get_subtype(object_dictionary):
+ """
+ Given the hash representation of a subtype of this class,
+ use the info in the hash to return the class of the subtype.
+ """
+ type = object_dictionary['type']
+
+ if type == 'INTERNAL_COMPUTE':
+ return 'InternalSourceDetails'
+
+ if type == 'OCIC':
+ return 'OcicSourceDetails'
+ else:
+ return 'SourceDetails'
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this SourceDetails.
+ The type of source environment
+
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this SourceDetails.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this SourceDetails.
+ The type of source environment
+
+
+ :param type: The type of this SourceDetails.
+ :type: str
+ """
+ allowed_values = ["OCIC", "INTERNAL_COMPUTE"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/source_summary.py b/src/oci/application_migration/models/source_summary.py
new file mode 100644
index 0000000000..5ef4e0693f
--- /dev/null
+++ b/src/oci/application_migration/models/source_summary.py
@@ -0,0 +1,369 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SourceSummary(object):
+ """
+ The Source object. Sources represent external locations from which
+ applications may be imported into an OCI tenancy.
+ """
+
+ #: A constant which can be used with the type property of a SourceSummary.
+ #: This constant has a value of "OCIC"
+ TYPE_OCIC = "OCIC"
+
+ #: A constant which can be used with the type property of a SourceSummary.
+ #: This constant has a value of "INTERNAL_COMPUTE"
+ TYPE_INTERNAL_COMPUTE = "INTERNAL_COMPUTE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SourceSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this SourceSummary.
+ :type id: str
+
+ :param type:
+ The value to assign to the type property of this SourceSummary.
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this SourceSummary.
+ :type compartment_id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this SourceSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this SourceSummary.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this SourceSummary.
+ :type time_created: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this SourceSummary.
+ :type lifecycle_state: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this SourceSummary.
+ :type lifecycle_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this SourceSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this SourceSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'type': 'str',
+ 'compartment_id': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_details': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'type': 'type',
+ 'compartment_id': 'compartmentId',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._type = None
+ self._compartment_id = None
+ self._display_name = None
+ self._description = None
+ self._time_created = None
+ self._lifecycle_state = None
+ self._lifecycle_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ Gets the id of this SourceSummary.
+ Unique identifier (OCID) for the source
+
+
+ :return: The id of this SourceSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this SourceSummary.
+ Unique identifier (OCID) for the source
+
+
+ :param id: The id of this SourceSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def type(self):
+ """
+ Gets the type of this SourceSummary.
+ The type of source environment
+
+ Allowed values for this property are: "OCIC", "INTERNAL_COMPUTE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this SourceSummary.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this SourceSummary.
+ The type of source environment
+
+
+ :param type: The type of this SourceSummary.
+ :type: str
+ """
+ allowed_values = ["OCIC", "INTERNAL_COMPUTE"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ @property
+ def compartment_id(self):
+ """
+ Gets the compartment_id of this SourceSummary.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :return: The compartment_id of this SourceSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this SourceSummary.
+ Unique idenfifier (OCID) for the compartment where the Source is located.
+
+
+ :param compartment_id: The compartment_id of this SourceSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this SourceSummary.
+ Human-readable name of the source.
+
+
+ :return: The display_name of this SourceSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this SourceSummary.
+ Human-readable name of the source.
+
+
+ :param display_name: The display_name of this SourceSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this SourceSummary.
+ Description of the source.
+
+
+ :return: The description of this SourceSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this SourceSummary.
+ Description of the source.
+
+
+ :param description: The description of this SourceSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this SourceSummary.
+ The date and time at which the source was created.
+
+
+ :return: The time_created of this SourceSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this SourceSummary.
+ The date and time at which the source was created.
+
+
+ :param time_created: The time_created of this SourceSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this SourceSummary.
+ The current state of the Source
+
+
+ :return: The lifecycle_state of this SourceSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this SourceSummary.
+ The current state of the Source
+
+
+ :param lifecycle_state: The lifecycle_state of this SourceSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this SourceSummary.
+ Details about the current lifecycle state
+
+
+ :return: The lifecycle_details of this SourceSummary.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this SourceSummary.
+ Details about the current lifecycle state
+
+
+ :param lifecycle_details: The lifecycle_details of this SourceSummary.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this SourceSummary.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this SourceSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this SourceSummary.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this SourceSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this SourceSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this SourceSummary.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this SourceSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this SourceSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/update_migration_details.py b/src/oci/application_migration/models/update_migration_details.py
new file mode 100644
index 0000000000..bb2c1f23f0
--- /dev/null
+++ b/src/oci/application_migration/models/update_migration_details.py
@@ -0,0 +1,255 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateMigrationDetails(object):
+ """
+ Update the details and configuration of a migration.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateMigrationDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateMigrationDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateMigrationDetails.
+ :type description: str
+
+ :param discovery_details:
+ The value to assign to the discovery_details property of this UpdateMigrationDetails.
+ :type discovery_details: DiscoveryDetails
+
+ :param service_config:
+ The value to assign to the service_config property of this UpdateMigrationDetails.
+ :type service_config: dict(str, ConfigurationField)
+
+ :param application_config:
+ The value to assign to the application_config property of this UpdateMigrationDetails.
+ :type application_config: dict(str, ConfigurationField)
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateMigrationDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateMigrationDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'discovery_details': 'DiscoveryDetails',
+ 'service_config': 'dict(str, ConfigurationField)',
+ 'application_config': 'dict(str, ConfigurationField)',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'discovery_details': 'discoveryDetails',
+ 'service_config': 'serviceConfig',
+ 'application_config': 'applicationConfig',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._discovery_details = None
+ self._service_config = None
+ self._application_config = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateMigrationDetails.
+ Human-readable name of the migration.
+
+
+ :return: The display_name of this UpdateMigrationDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateMigrationDetails.
+ Human-readable name of the migration.
+
+
+ :param display_name: The display_name of this UpdateMigrationDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateMigrationDetails.
+ Description of the migration.
+
+
+ :return: The description of this UpdateMigrationDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateMigrationDetails.
+ Description of the migration.
+
+
+ :param description: The description of this UpdateMigrationDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def discovery_details(self):
+ """
+ Gets the discovery_details of this UpdateMigrationDetails.
+
+ :return: The discovery_details of this UpdateMigrationDetails.
+ :rtype: DiscoveryDetails
+ """
+ return self._discovery_details
+
+ @discovery_details.setter
+ def discovery_details(self, discovery_details):
+ """
+ Sets the discovery_details of this UpdateMigrationDetails.
+
+ :param discovery_details: The discovery_details of this UpdateMigrationDetails.
+ :type: DiscoveryDetails
+ """
+ self._discovery_details = discovery_details
+
+ @property
+ def service_config(self):
+ """
+ Gets the service_config of this UpdateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :return: The service_config of this UpdateMigrationDetails.
+ :rtype: dict(str, ConfigurationField)
+ """
+ return self._service_config
+
+ @service_config.setter
+ def service_config(self, service_config):
+ """
+ Sets the service_config of this UpdateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :param service_config: The service_config of this UpdateMigrationDetails.
+ :type: dict(str, ConfigurationField)
+ """
+ self._service_config = service_config
+
+ @property
+ def application_config(self):
+ """
+ Gets the application_config of this UpdateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :return: The application_config of this UpdateMigrationDetails.
+ :rtype: dict(str, ConfigurationField)
+ """
+ return self._application_config
+
+ @application_config.setter
+ def application_config(self, application_config):
+ """
+ Sets the application_config of this UpdateMigrationDetails.
+ Configuration required to migrate the application. In addition to the key and value, additional fields are provided to describe type type and purpose of each field. Only the value for each key is required when passing configuration to the CreateMigration operation.
+
+
+ :param application_config: The application_config of this UpdateMigrationDetails.
+ :type: dict(str, ConfigurationField)
+ """
+ self._application_config = application_config
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateMigrationDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this UpdateMigrationDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateMigrationDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this UpdateMigrationDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateMigrationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this UpdateMigrationDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this UpdateMigrationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this UpdateMigrationDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/update_source_details.py b/src/oci/application_migration/models/update_source_details.py
new file mode 100644
index 0000000000..44917da493
--- /dev/null
+++ b/src/oci/application_migration/models/update_source_details.py
@@ -0,0 +1,221 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateSourceDetails(object):
+ """
+ The Source object. Sources represent external locations from which
+ applications may be imported into an OCI tenancy.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateSourceDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateSourceDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateSourceDetails.
+ :type description: str
+
+ :param source_details:
+ The value to assign to the source_details property of this UpdateSourceDetails.
+ :type source_details: SourceDetails
+
+ :param authorization_details:
+ The value to assign to the authorization_details property of this UpdateSourceDetails.
+ :type authorization_details: AuthorizationDetails
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateSourceDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateSourceDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'source_details': 'SourceDetails',
+ 'authorization_details': 'AuthorizationDetails',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'source_details': 'sourceDetails',
+ 'authorization_details': 'authorizationDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._source_details = None
+ self._authorization_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateSourceDetails.
+ Human-readable name of the source.
+
+
+ :return: The display_name of this UpdateSourceDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateSourceDetails.
+ Human-readable name of the source.
+
+
+ :param display_name: The display_name of this UpdateSourceDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateSourceDetails.
+ Description of the source.
+
+
+ :return: The description of this UpdateSourceDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateSourceDetails.
+ Description of the source.
+
+
+ :param description: The description of this UpdateSourceDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def source_details(self):
+ """
+ Gets the source_details of this UpdateSourceDetails.
+
+ :return: The source_details of this UpdateSourceDetails.
+ :rtype: SourceDetails
+ """
+ return self._source_details
+
+ @source_details.setter
+ def source_details(self, source_details):
+ """
+ Sets the source_details of this UpdateSourceDetails.
+
+ :param source_details: The source_details of this UpdateSourceDetails.
+ :type: SourceDetails
+ """
+ self._source_details = source_details
+
+ @property
+ def authorization_details(self):
+ """
+ Gets the authorization_details of this UpdateSourceDetails.
+
+ :return: The authorization_details of this UpdateSourceDetails.
+ :rtype: AuthorizationDetails
+ """
+ return self._authorization_details
+
+ @authorization_details.setter
+ def authorization_details(self, authorization_details):
+ """
+ Sets the authorization_details of this UpdateSourceDetails.
+
+ :param authorization_details: The authorization_details of this UpdateSourceDetails.
+ :type: AuthorizationDetails
+ """
+ self._authorization_details = authorization_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateSourceDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this UpdateSourceDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateSourceDetails.
+ Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this UpdateSourceDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateSourceDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this UpdateSourceDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this UpdateSourceDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this UpdateSourceDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/work_request.py b/src/oci/application_migration/models/work_request.py
new file mode 100644
index 0000000000..b989ff7bc0
--- /dev/null
+++ b/src/oci/application_migration/models/work_request.py
@@ -0,0 +1,325 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequest(object):
+ """
+ An asynchronous work request.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequest object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param operation_type:
+ The value to assign to the operation_type property of this WorkRequest.
+ :type operation_type: str
+
+ :param status:
+ The value to assign to the status property of this WorkRequest.
+ :type status: str
+
+ :param id:
+ The value to assign to the id property of this WorkRequest.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this WorkRequest.
+ :type compartment_id: str
+
+ :param resources:
+ The value to assign to the resources property of this WorkRequest.
+ :type resources: list[WorkRequestResource]
+
+ :param percent_complete:
+ The value to assign to the percent_complete property of this WorkRequest.
+ :type percent_complete: float
+
+ :param time_accepted:
+ The value to assign to the time_accepted property of this WorkRequest.
+ :type time_accepted: datetime
+
+ :param time_started:
+ The value to assign to the time_started property of this WorkRequest.
+ :type time_started: datetime
+
+ :param time_finished:
+ The value to assign to the time_finished property of this WorkRequest.
+ :type time_finished: datetime
+
+ """
+ self.swagger_types = {
+ 'operation_type': 'str',
+ 'status': 'str',
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'resources': 'list[WorkRequestResource]',
+ 'percent_complete': 'float',
+ 'time_accepted': 'datetime',
+ 'time_started': 'datetime',
+ 'time_finished': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'operation_type': 'operationType',
+ 'status': 'status',
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'resources': 'resources',
+ 'percent_complete': 'percentComplete',
+ 'time_accepted': 'timeAccepted',
+ 'time_started': 'timeStarted',
+ 'time_finished': 'timeFinished'
+ }
+
+ self._operation_type = None
+ self._status = None
+ self._id = None
+ self._compartment_id = None
+ self._resources = None
+ self._percent_complete = None
+ self._time_accepted = None
+ self._time_started = None
+ self._time_finished = None
+
+ @property
+ def operation_type(self):
+ """
+ **[Required]** Gets the operation_type of this WorkRequest.
+ The asynchronous operation tracked by this work request.
+
+
+ :return: The operation_type of this WorkRequest.
+ :rtype: str
+ """
+ return self._operation_type
+
+ @operation_type.setter
+ def operation_type(self, operation_type):
+ """
+ Sets the operation_type of this WorkRequest.
+ The asynchronous operation tracked by this work request.
+
+
+ :param operation_type: The operation_type of this WorkRequest.
+ :type: str
+ """
+ self._operation_type = operation_type
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this WorkRequest.
+ The status of the work request.
+
+
+ :return: The status of this WorkRequest.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this WorkRequest.
+ The status of the work request.
+
+
+ :param status: The status of this WorkRequest.
+ :type: str
+ """
+ self._status = status
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this WorkRequest.
+ The `OCID`__ of the work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The id of this WorkRequest.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this WorkRequest.
+ The `OCID`__ of the work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param id: The id of this WorkRequest.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this WorkRequest.
+ The `OCID`__ of the compartment that contains the work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The compartment_id of this WorkRequest.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this WorkRequest.
+ The `OCID`__ of the compartment that contains the work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param compartment_id: The compartment_id of this WorkRequest.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def resources(self):
+ """
+ **[Required]** Gets the resources of this WorkRequest.
+ The resources affected by this work request.
+
+
+ :return: The resources of this WorkRequest.
+ :rtype: list[WorkRequestResource]
+ """
+ return self._resources
+
+ @resources.setter
+ def resources(self, resources):
+ """
+ Sets the resources of this WorkRequest.
+ The resources affected by this work request.
+
+
+ :param resources: The resources of this WorkRequest.
+ :type: list[WorkRequestResource]
+ """
+ self._resources = resources
+
+ @property
+ def percent_complete(self):
+ """
+ **[Required]** Gets the percent_complete of this WorkRequest.
+ The amount of work done relative to the total amount of work.
+
+
+ :return: The percent_complete of this WorkRequest.
+ :rtype: float
+ """
+ return self._percent_complete
+
+ @percent_complete.setter
+ def percent_complete(self, percent_complete):
+ """
+ Sets the percent_complete of this WorkRequest.
+ The amount of work done relative to the total amount of work.
+
+
+ :param percent_complete: The percent_complete of this WorkRequest.
+ :type: float
+ """
+ self._percent_complete = percent_complete
+
+ @property
+ def time_accepted(self):
+ """
+ **[Required]** Gets the time_accepted of this WorkRequest.
+ The date and time the work request was created, in the format defined by RFC3339.
+
+
+ :return: The time_accepted of this WorkRequest.
+ :rtype: datetime
+ """
+ return self._time_accepted
+
+ @time_accepted.setter
+ def time_accepted(self, time_accepted):
+ """
+ Sets the time_accepted of this WorkRequest.
+ The date and time the work request was created, in the format defined by RFC3339.
+
+
+ :param time_accepted: The time_accepted of this WorkRequest.
+ :type: datetime
+ """
+ self._time_accepted = time_accepted
+
+ @property
+ def time_started(self):
+ """
+ Gets the time_started of this WorkRequest.
+ The date and time the work request transitioned from `ACCEPTED` to `IN_PROGRESS`, in the format defined by RFC3339.
+
+
+ :return: The time_started of this WorkRequest.
+ :rtype: datetime
+ """
+ return self._time_started
+
+ @time_started.setter
+ def time_started(self, time_started):
+ """
+ Sets the time_started of this WorkRequest.
+ The date and time the work request transitioned from `ACCEPTED` to `IN_PROGRESS`, in the format defined by RFC3339.
+
+
+ :param time_started: The time_started of this WorkRequest.
+ :type: datetime
+ """
+ self._time_started = time_started
+
+ @property
+ def time_finished(self):
+ """
+ Gets the time_finished of this WorkRequest.
+ The date and time the work request reached a terminal state, either `FAILED` or `SUCCEEDED`. Format is defined by RFC3339.
+
+
+ :return: The time_finished of this WorkRequest.
+ :rtype: datetime
+ """
+ return self._time_finished
+
+ @time_finished.setter
+ def time_finished(self, time_finished):
+ """
+ Sets the time_finished of this WorkRequest.
+ The date and time the work request reached a terminal state, either `FAILED` or `SUCCEEDED`. Format is defined by RFC3339.
+
+
+ :param time_finished: The time_finished of this WorkRequest.
+ :type: datetime
+ """
+ self._time_finished = time_finished
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/work_request_error.py b/src/oci/application_migration/models/work_request_error.py
new file mode 100644
index 0000000000..1ca3b24b38
--- /dev/null
+++ b/src/oci/application_migration/models/work_request_error.py
@@ -0,0 +1,131 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestError(object):
+ """
+ An error encountered while executing an operation that is tracked by a work request.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestError object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param code:
+ The value to assign to the code property of this WorkRequestError.
+ :type code: str
+
+ :param message:
+ The value to assign to the message property of this WorkRequestError.
+ :type message: str
+
+ :param timestamp:
+ The value to assign to the timestamp property of this WorkRequestError.
+ :type timestamp: datetime
+
+ """
+ self.swagger_types = {
+ 'code': 'str',
+ 'message': 'str',
+ 'timestamp': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'code': 'code',
+ 'message': 'message',
+ 'timestamp': 'timestamp'
+ }
+
+ self._code = None
+ self._message = None
+ self._timestamp = None
+
+ @property
+ def code(self):
+ """
+ **[Required]** Gets the code of this WorkRequestError.
+ A machine-usable code for the error that occured.
+
+
+ :return: The code of this WorkRequestError.
+ :rtype: str
+ """
+ return self._code
+
+ @code.setter
+ def code(self, code):
+ """
+ Sets the code of this WorkRequestError.
+ A machine-usable code for the error that occured.
+
+
+ :param code: The code of this WorkRequestError.
+ :type: str
+ """
+ self._code = code
+
+ @property
+ def message(self):
+ """
+ **[Required]** Gets the message of this WorkRequestError.
+ A human-readable error string.
+
+
+ :return: The message of this WorkRequestError.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this WorkRequestError.
+ A human-readable error string.
+
+
+ :param message: The message of this WorkRequestError.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def timestamp(self):
+ """
+ **[Required]** Gets the timestamp of this WorkRequestError.
+ The date and time the error occurred.
+
+
+ :return: The timestamp of this WorkRequestError.
+ :rtype: datetime
+ """
+ return self._timestamp
+
+ @timestamp.setter
+ def timestamp(self, timestamp):
+ """
+ Sets the timestamp of this WorkRequestError.
+ The date and time the error occurred.
+
+
+ :param timestamp: The timestamp of this WorkRequestError.
+ :type: datetime
+ """
+ self._timestamp = timestamp
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/work_request_log_entry.py b/src/oci/application_migration/models/work_request_log_entry.py
new file mode 100644
index 0000000000..7877da2fa5
--- /dev/null
+++ b/src/oci/application_migration/models/work_request_log_entry.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestLogEntry(object):
+ """
+ A log message from executing an operation that is tracked by a work request.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestLogEntry object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param message:
+ The value to assign to the message property of this WorkRequestLogEntry.
+ :type message: str
+
+ :param timestamp:
+ The value to assign to the timestamp property of this WorkRequestLogEntry.
+ :type timestamp: datetime
+
+ """
+ self.swagger_types = {
+ 'message': 'str',
+ 'timestamp': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'message': 'message',
+ 'timestamp': 'timestamp'
+ }
+
+ self._message = None
+ self._timestamp = None
+
+ @property
+ def message(self):
+ """
+ **[Required]** Gets the message of this WorkRequestLogEntry.
+ A human-readable log message.
+
+
+ :return: The message of this WorkRequestLogEntry.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this WorkRequestLogEntry.
+ A human-readable log message.
+
+
+ :param message: The message of this WorkRequestLogEntry.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def timestamp(self):
+ """
+ **[Required]** Gets the timestamp of this WorkRequestLogEntry.
+ The time the log message was written.
+
+
+ :return: The timestamp of this WorkRequestLogEntry.
+ :rtype: datetime
+ """
+ return self._timestamp
+
+ @timestamp.setter
+ def timestamp(self, timestamp):
+ """
+ Sets the timestamp of this WorkRequestLogEntry.
+ The time the log message was written.
+
+
+ :param timestamp: The timestamp of this WorkRequestLogEntry.
+ :type: datetime
+ """
+ self._timestamp = timestamp
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/work_request_resource.py b/src/oci/application_migration/models/work_request_resource.py
new file mode 100644
index 0000000000..a2f98e9ad1
--- /dev/null
+++ b/src/oci/application_migration/models/work_request_resource.py
@@ -0,0 +1,194 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestResource(object):
+ """
+ A resource that is created or operated on by an asynchronous operation that is tracked by a work request.
+ """
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "CREATED"
+ ACTION_TYPE_CREATED = "CREATED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "UPDATED"
+ ACTION_TYPE_UPDATED = "UPDATED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "DELETED"
+ ACTION_TYPE_DELETED = "DELETED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "RELATED"
+ ACTION_TYPE_RELATED = "RELATED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "IN_PROGRESS"
+ ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestResource object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param action_type:
+ The value to assign to the action_type property of this WorkRequestResource.
+ Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "RELATED", "IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type action_type: str
+
+ :param entity_type:
+ The value to assign to the entity_type property of this WorkRequestResource.
+ :type entity_type: str
+
+ :param identifier:
+ The value to assign to the identifier property of this WorkRequestResource.
+ :type identifier: str
+
+ :param entity_uri:
+ The value to assign to the entity_uri property of this WorkRequestResource.
+ :type entity_uri: str
+
+ """
+ self.swagger_types = {
+ 'action_type': 'str',
+ 'entity_type': 'str',
+ 'identifier': 'str',
+ 'entity_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'action_type': 'actionType',
+ 'entity_type': 'entityType',
+ 'identifier': 'identifier',
+ 'entity_uri': 'entityUri'
+ }
+
+ self._action_type = None
+ self._entity_type = None
+ self._identifier = None
+ self._entity_uri = None
+
+ @property
+ def action_type(self):
+ """
+ **[Required]** Gets the action_type of this WorkRequestResource.
+ The way in which this resource was affected by the operation that spawned the work request.
+
+ Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "RELATED", "IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The action_type of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._action_type
+
+ @action_type.setter
+ def action_type(self, action_type):
+ """
+ Sets the action_type of this WorkRequestResource.
+ The way in which this resource was affected by the operation that spawned the work request.
+
+
+ :param action_type: The action_type of this WorkRequestResource.
+ :type: str
+ """
+ allowed_values = ["CREATED", "UPDATED", "DELETED", "RELATED", "IN_PROGRESS"]
+ if not value_allowed_none_or_none_sentinel(action_type, allowed_values):
+ action_type = 'UNKNOWN_ENUM_VALUE'
+ self._action_type = action_type
+
+ @property
+ def entity_type(self):
+ """
+ **[Required]** Gets the entity_type of this WorkRequestResource.
+ The resource type the work request affects.
+
+
+ :return: The entity_type of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._entity_type
+
+ @entity_type.setter
+ def entity_type(self, entity_type):
+ """
+ Sets the entity_type of this WorkRequestResource.
+ The resource type the work request affects.
+
+
+ :param entity_type: The entity_type of this WorkRequestResource.
+ :type: str
+ """
+ self._entity_type = entity_type
+
+ @property
+ def identifier(self):
+ """
+ **[Required]** Gets the identifier of this WorkRequestResource.
+ An `OCID`__ or other unique identifier for the resource.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The identifier of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._identifier
+
+ @identifier.setter
+ def identifier(self, identifier):
+ """
+ Sets the identifier of this WorkRequestResource.
+ An `OCID`__ or other unique identifier for the resource.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param identifier: The identifier of this WorkRequestResource.
+ :type: str
+ """
+ self._identifier = identifier
+
+ @property
+ def entity_uri(self):
+ """
+ Gets the entity_uri of this WorkRequestResource.
+ The URI path that you can use for a GET request to access the resource metadata.
+
+
+ :return: The entity_uri of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._entity_uri
+
+ @entity_uri.setter
+ def entity_uri(self, entity_uri):
+ """
+ Sets the entity_uri of this WorkRequestResource.
+ The URI path that you can use for a GET request to access the resource metadata.
+
+
+ :param entity_uri: The entity_uri of this WorkRequestResource.
+ :type: str
+ """
+ self._entity_uri = entity_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/application_migration/models/work_request_summary.py b/src/oci/application_migration/models/work_request_summary.py
new file mode 100644
index 0000000000..8b7ffbd0d1
--- /dev/null
+++ b/src/oci/application_migration/models/work_request_summary.py
@@ -0,0 +1,300 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestSummary(object):
+ """
+ A summary of the status of a work request.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param operation_type:
+ The value to assign to the operation_type property of this WorkRequestSummary.
+ :type operation_type: str
+
+ :param status:
+ The value to assign to the status property of this WorkRequestSummary.
+ :type status: str
+
+ :param id:
+ The value to assign to the id property of this WorkRequestSummary.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this WorkRequestSummary.
+ :type compartment_id: str
+
+ :param percent_complete:
+ The value to assign to the percent_complete property of this WorkRequestSummary.
+ :type percent_complete: float
+
+ :param time_accepted:
+ The value to assign to the time_accepted property of this WorkRequestSummary.
+ :type time_accepted: datetime
+
+ :param time_started:
+ The value to assign to the time_started property of this WorkRequestSummary.
+ :type time_started: datetime
+
+ :param time_finished:
+ The value to assign to the time_finished property of this WorkRequestSummary.
+ :type time_finished: datetime
+
+ """
+ self.swagger_types = {
+ 'operation_type': 'str',
+ 'status': 'str',
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'percent_complete': 'float',
+ 'time_accepted': 'datetime',
+ 'time_started': 'datetime',
+ 'time_finished': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'operation_type': 'operationType',
+ 'status': 'status',
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'percent_complete': 'percentComplete',
+ 'time_accepted': 'timeAccepted',
+ 'time_started': 'timeStarted',
+ 'time_finished': 'timeFinished'
+ }
+
+ self._operation_type = None
+ self._status = None
+ self._id = None
+ self._compartment_id = None
+ self._percent_complete = None
+ self._time_accepted = None
+ self._time_started = None
+ self._time_finished = None
+
+ @property
+ def operation_type(self):
+ """
+ **[Required]** Gets the operation_type of this WorkRequestSummary.
+ The asynchronous operation tracked by this work request.
+
+
+ :return: The operation_type of this WorkRequestSummary.
+ :rtype: str
+ """
+ return self._operation_type
+
+ @operation_type.setter
+ def operation_type(self, operation_type):
+ """
+ Sets the operation_type of this WorkRequestSummary.
+ The asynchronous operation tracked by this work request.
+
+
+ :param operation_type: The operation_type of this WorkRequestSummary.
+ :type: str
+ """
+ self._operation_type = operation_type
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this WorkRequestSummary.
+ The status of the work request.
+
+
+ :return: The status of this WorkRequestSummary.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this WorkRequestSummary.
+ The status of the work request.
+
+
+ :param status: The status of this WorkRequestSummary.
+ :type: str
+ """
+ self._status = status
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this WorkRequestSummary.
+ The `OCID`__ of the work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The id of this WorkRequestSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this WorkRequestSummary.
+ The `OCID`__ of the work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param id: The id of this WorkRequestSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this WorkRequestSummary.
+ The `OCID`__ of the compartment containing
+ this work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :return: The compartment_id of this WorkRequestSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this WorkRequestSummary.
+ The `OCID`__ of the compartment containing
+ this work request.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm
+
+
+ :param compartment_id: The compartment_id of this WorkRequestSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def percent_complete(self):
+ """
+ **[Required]** Gets the percent_complete of this WorkRequestSummary.
+ The percentage complete of the operation tracked by this work request.
+
+
+ :return: The percent_complete of this WorkRequestSummary.
+ :rtype: float
+ """
+ return self._percent_complete
+
+ @percent_complete.setter
+ def percent_complete(self, percent_complete):
+ """
+ Sets the percent_complete of this WorkRequestSummary.
+ The percentage complete of the operation tracked by this work request.
+
+
+ :param percent_complete: The percent_complete of this WorkRequestSummary.
+ :type: float
+ """
+ self._percent_complete = percent_complete
+
+ @property
+ def time_accepted(self):
+ """
+ **[Required]** Gets the time_accepted of this WorkRequestSummary.
+ The date and time the work request was created, in the format defined by RFC3339.
+
+
+ :return: The time_accepted of this WorkRequestSummary.
+ :rtype: datetime
+ """
+ return self._time_accepted
+
+ @time_accepted.setter
+ def time_accepted(self, time_accepted):
+ """
+ Sets the time_accepted of this WorkRequestSummary.
+ The date and time the work request was created, in the format defined by RFC3339.
+
+
+ :param time_accepted: The time_accepted of this WorkRequestSummary.
+ :type: datetime
+ """
+ self._time_accepted = time_accepted
+
+ @property
+ def time_started(self):
+ """
+ Gets the time_started of this WorkRequestSummary.
+ The date and time the work request transitioned from `ACCEPTED` to `IN_PROGRESS`, in
+ the format defined by RFC3339.
+
+
+ :return: The time_started of this WorkRequestSummary.
+ :rtype: datetime
+ """
+ return self._time_started
+
+ @time_started.setter
+ def time_started(self, time_started):
+ """
+ Sets the time_started of this WorkRequestSummary.
+ The date and time the work request transitioned from `ACCEPTED` to `IN_PROGRESS`, in
+ the format defined by RFC3339.
+
+
+ :param time_started: The time_started of this WorkRequestSummary.
+ :type: datetime
+ """
+ self._time_started = time_started
+
+ @property
+ def time_finished(self):
+ """
+ Gets the time_finished of this WorkRequestSummary.
+ The date and time the work request reached a terminal state, either `FAILED` or `SUCCEEDED`.
+ Format is defined by RFC3339.
+
+
+ :return: The time_finished of this WorkRequestSummary.
+ :rtype: datetime
+ """
+ return self._time_finished
+
+ @time_finished.setter
+ def time_finished(self, time_finished):
+ """
+ Sets the time_finished of this WorkRequestSummary.
+ The date and time the work request reached a terminal state, either `FAILED` or `SUCCEEDED`.
+ Format is defined by RFC3339.
+
+
+ :param time_finished: The time_finished of this WorkRequestSummary.
+ :type: datetime
+ """
+ self._time_finished = time_finished
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/__init__.py b/src/oci/data_catalog/__init__.py
new file mode 100644
index 0000000000..508d2d9cd4
--- /dev/null
+++ b/src/oci/data_catalog/__init__.py
@@ -0,0 +1,11 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+
+from .data_catalog_client import DataCatalogClient
+from .data_catalog_client_composite_operations import DataCatalogClientCompositeOperations
+from . import models
+
+__all__ = ["DataCatalogClient", "DataCatalogClientCompositeOperations", "models"]
diff --git a/src/oci/data_catalog/data_catalog_client.py b/src/oci/data_catalog/data_catalog_client.py
new file mode 100644
index 0000000000..04f038255f
--- /dev/null
+++ b/src/oci/data_catalog/data_catalog_client.py
@@ -0,0 +1,11064 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from oci._vendor import requests # noqa: F401
+from oci._vendor import six
+
+from oci import retry # noqa: F401
+from oci.base_client import BaseClient
+from oci.config import get_config_value_or_default, validate_config
+from oci.signer import Signer
+from oci.util import Sentinel
+from .models import data_catalog_type_mapping
+missing = Sentinel("Missing")
+
+
+class DataCatalogClient(object):
+ """
+ Use the Data Catalog APIs to collect, organize, find, access, understand, enrich, and activate technical, business, and operational metadata.
+ """
+
+ def __init__(self, config, **kwargs):
+ """
+ Creates a new service client
+
+ :param dict config:
+ Configuration keys and values as per `SDK and Tool Configuration `__.
+ The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
+ the dict using :py:meth:`~oci.config.validate_config`
+
+ :param str service_endpoint: (optional)
+ The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
+ not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
+ need to specify a service endpoint.
+
+ :param timeout: (optional)
+ The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
+ as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
+ a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
+ :type timeout: float or tuple(float, float)
+
+ :param signer: (optional)
+ The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
+ provided in the config parameter.
+
+ One use case for this parameter is for `Instance Principals authentication `__
+ by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
+ :type signer: :py:class:`~oci.signer.AbstractBaseSigner`
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
+ Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
+ Any value provided at the operation level will override whatever is specified at the client level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+ """
+ validate_config(config, signer=kwargs.get('signer'))
+ if 'signer' in kwargs:
+ signer = kwargs['signer']
+ else:
+ signer = Signer(
+ tenancy=config["tenancy"],
+ user=config["user"],
+ fingerprint=config["fingerprint"],
+ private_key_file_location=config.get("key_file"),
+ pass_phrase=get_config_value_or_default(config, "pass_phrase"),
+ private_key_content=config.get("key_content")
+ )
+
+ base_client_init_kwargs = {
+ 'regional_client': True,
+ 'service_endpoint': kwargs.get('service_endpoint'),
+ 'timeout': kwargs.get('timeout'),
+ 'base_path': '/20190325',
+ 'service_endpoint_template': 'https://datacatalog.{region}.oci.{secondLevelDomain}',
+ 'skip_deserialization': kwargs.get('skip_deserialization', False)
+ }
+ self.base_client = BaseClient("data_catalog", config, signer, data_catalog_type_mapping, **base_client_init_kwargs)
+ self.retry_strategy = kwargs.get('retry_strategy')
+
+ def change_catalog_compartment(self, change_catalog_compartment_details, catalog_id, **kwargs):
+ """
+ Moves a resource into a different compartment. When provided, 'If-Match' is checked against 'ETag' values of the resource.
+ Moves a resource into a different compartment. When provided, 'If-Match' is checked against 'ETag' values of the resource.
+
+
+ :param ChangeCatalogCompartmentDetails change_catalog_compartment_details: (required)
+ Details for the target compartment.
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/actions/changeCompartment"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "change_catalog_compartment got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_catalog_compartment_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_catalog_compartment_details)
+
+ def create_attribute(self, catalog_id, data_asset_key, entity_key, create_attribute_details, **kwargs):
+ """
+ Create a new entity attribute.
+ Creates a new entity attribute.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param CreateAttributeDetails create_attribute_details: (required)
+ The information used to create an entity attribute.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Attribute`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_attribute got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_attribute_details,
+ response_type="Attribute")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_attribute_details,
+ response_type="Attribute")
+
+ def create_attribute_tag(self, catalog_id, data_asset_key, entity_key, attribute_key, create_attribute_tag_details, **kwargs):
+ """
+ Create a new entity attribute tag.
+ Creates a new entity attribute tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param CreateTagDetails create_attribute_tag_details: (required)
+ The information used to create an entity attribute tag.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.AttributeTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}/tags"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_attribute_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_attribute_tag_details,
+ response_type="AttributeTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_attribute_tag_details,
+ response_type="AttributeTag")
+
+ def create_catalog(self, create_catalog_details, **kwargs):
+ """
+ Creates a new data catalog.
+ Creates a new data catalog instance that includes a console and an API URL for managing metadata operations.
+ For more information, please see the documentation.
+
+
+ :param CreateCatalogDetails create_catalog_details: (required)
+ Details for the new data catalog.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_retry_token",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_catalog got unknown kwargs: {!r}".format(extra_kwargs))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_catalog_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_catalog_details)
+
+ def create_connection(self, catalog_id, data_asset_key, create_connection_details, **kwargs):
+ """
+ Create a new connection.
+ Creates a new connection.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param CreateConnectionDetails create_connection_details: (required)
+ The information used to create the connection.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Connection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_connection_details,
+ response_type="Connection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_connection_details,
+ response_type="Connection")
+
+ def create_data_asset(self, catalog_id, create_data_asset_details, **kwargs):
+ """
+ Create a new data asset.
+ Create a new data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param CreateDataAssetDetails create_data_asset_details: (required)
+ The information used to create the data asset.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAsset`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_data_asset got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_data_asset_details,
+ response_type="DataAsset")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_data_asset_details,
+ response_type="DataAsset")
+
+ def create_data_asset_tag(self, catalog_id, data_asset_key, create_data_asset_tag_details, **kwargs):
+ """
+ Create a new data asset tag.
+ Creates a new data asset tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param CreateTagDetails create_data_asset_tag_details: (required)
+ The information used to create the data asset tag.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAssetTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/tags"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_data_asset_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_data_asset_tag_details,
+ response_type="DataAssetTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_data_asset_tag_details,
+ response_type="DataAssetTag")
+
+ def create_entity(self, catalog_id, data_asset_key, create_entity_details, **kwargs):
+ """
+ Create a new data entity.
+ Creates a new data entity.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param CreateEntityDetails create_entity_details: (required)
+ The information used to create the data entity.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Entity`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_entity got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_entity_details,
+ response_type="Entity")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_entity_details,
+ response_type="Entity")
+
+ def create_entity_tag(self, catalog_id, data_asset_key, entity_key, create_entity_tag_details, **kwargs):
+ """
+ Create a new entity tag.
+ Creates a new entity tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param CreateTagDetails create_entity_tag_details: (required)
+ The information used to create the entity tag.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.EntityTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/tags"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_entity_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_entity_tag_details,
+ response_type="EntityTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_entity_tag_details,
+ response_type="EntityTag")
+
+ def create_folder(self, catalog_id, data_asset_key, create_folder_details, **kwargs):
+ """
+ Create a new folder.
+ Creates a new folder.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param CreateFolderDetails create_folder_details: (required)
+ The information used to create the folder.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Folder`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_folder got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_folder_details,
+ response_type="Folder")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_folder_details,
+ response_type="Folder")
+
+ def create_folder_tag(self, catalog_id, data_asset_key, folder_key, create_folder_tag_details, **kwargs):
+ """
+ Create a new folder tag.
+ Creates a new folder tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param CreateTagDetails create_folder_tag_details: (required)
+ The information used to create the folder tag.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.FolderTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}/tags"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_folder_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_folder_tag_details,
+ response_type="FolderTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_folder_tag_details,
+ response_type="FolderTag")
+
+ def create_glossary(self, catalog_id, create_glossary_details, **kwargs):
+ """
+ Create a new glossary.
+ Creates a new glossary.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param CreateGlossaryDetails create_glossary_details: (required)
+ The information used to create the glossary.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Glossary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_glossary_details,
+ response_type="Glossary")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_glossary_details,
+ response_type="Glossary")
+
+ def create_job(self, catalog_id, create_job_details, **kwargs):
+ """
+ Create a new job.
+ Creates a new job.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param CreateJobDetails create_job_details: (required)
+ The information used to create the job.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Job`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_job_details,
+ response_type="Job")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_job_details,
+ response_type="Job")
+
+ def create_job_definition(self, catalog_id, create_job_definition_details, **kwargs):
+ """
+ Create a new job definition.
+ Creates a new job definition.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param CreateJobDefinitionDetails create_job_definition_details: (required)
+ The information used to create the job definition.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobDefinition`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobDefinitions"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_job_definition got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_job_definition_details,
+ response_type="JobDefinition")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_job_definition_details,
+ response_type="JobDefinition")
+
+ def create_job_execution(self, catalog_id, job_key, create_job_execution_details, **kwargs):
+ """
+ Create a new job execution.
+ Creates a new job execution.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param CreateJobExecutionDetails create_job_execution_details: (required)
+ The information used to create the job execution.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobExecution`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_job_execution got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_job_execution_details,
+ response_type="JobExecution")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_job_execution_details,
+ response_type="JobExecution")
+
+ def create_term(self, catalog_id, glossary_key, create_term_details, **kwargs):
+ """
+ Create a new term within a glossary.
+ Create a new term within a glossary.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param CreateTermDetails create_term_details: (required)
+ The information used to create the term.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Term`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_term got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_term_details,
+ response_type="Term")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_term_details,
+ response_type="Term")
+
+ def create_term_relationship(self, catalog_id, glossary_key, term_key, create_term_relationship_details, **kwargs):
+ """
+ Create a new term relationship for this term within a glossary.
+ Creates a new term relationship for this term within a glossary.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param CreateTermRelationshipDetails create_term_relationship_details: (required)
+ The information used to create the term relationship.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TermRelationship`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}/termRelationships"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_term_relationship got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_term_relationship_details,
+ response_type="TermRelationship")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=create_term_relationship_details,
+ response_type="TermRelationship")
+
+ def delete_attribute(self, catalog_id, data_asset_key, entity_key, attribute_key, **kwargs):
+ """
+ Delete a specific entity attribute.
+ Deletes a specific entity attribute.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_attribute got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_attribute_tag(self, catalog_id, data_asset_key, entity_key, attribute_key, tag_key, **kwargs):
+ """
+ Delete a specific entity attribute tag.
+ Deletes a specific entity attribute tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}/tags/{tagKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_attribute_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_catalog(self, catalog_id, **kwargs):
+ """
+ Delete a provisioned data catalog.
+ Deletes a data catalog resource by identifier.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_catalog got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_connection(self, catalog_id, data_asset_key, connection_key, **kwargs):
+ """
+ Delete a specific connection of a data asset.
+ Deletes a specific connection of a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str connection_key: (required)
+ Unique connection key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections/{connectionKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "connectionKey": connection_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_data_asset(self, catalog_id, data_asset_key, **kwargs):
+ """
+ Delete a specific data asset identified by it's key.
+ Deletes a specific data asset identified by it's key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_data_asset got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_data_asset_tag(self, catalog_id, data_asset_key, tag_key, **kwargs):
+ """
+ Delete a specific data asset tag.
+ Deletes a specific data asset tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/tags/{tagKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_data_asset_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_entity(self, catalog_id, data_asset_key, entity_key, **kwargs):
+ """
+ Delete a specific data entity.
+ Deletes a specific data entity.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_entity got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_entity_tag(self, catalog_id, data_asset_key, entity_key, tag_key, **kwargs):
+ """
+ Delete a specific entity tag.
+ Deletes a specific entity tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/tags/{tagKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_entity_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_folder(self, catalog_id, data_asset_key, folder_key, **kwargs):
+ """
+ Delete a specific folder of a data asset identified by it's key.
+ Deletes a specific folder of a data asset identified by it's key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_folder got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_folder_tag(self, catalog_id, data_asset_key, folder_key, tag_key, **kwargs):
+ """
+ Delete a specific folder tag.
+ Deletes a specific folder tag.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}/tags/{tagKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_folder_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_glossary(self, catalog_id, glossary_key, **kwargs):
+ """
+ Delete a specific glossary identified by it's key.
+ Deletes a specific glossary identified by it's key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_job(self, catalog_id, job_key, **kwargs):
+ """
+ Delete a specific job identified by it's key.
+ Deletes a specific job identified by it's key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_job_definition(self, catalog_id, job_definition_key, **kwargs):
+ """
+ Delete a specific job definition identified by it's key.
+ Deletes a specific job definition identified by it's key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_definition_key: (required)
+ Unique job definition key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobDefinitions/{jobDefinitionKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_job_definition got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobDefinitionKey": job_definition_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_term(self, catalog_id, glossary_key, term_key, **kwargs):
+ """
+ Delete a specific glossary term.
+ Deletes a specific glossary term.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_term got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_term_relationship(self, catalog_id, glossary_key, term_key, term_relationship_key, **kwargs):
+ """
+ Delete a specific glossary term relationship.
+ Deletes a specific glossary term relationship.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param str term_relationship_key: (required)
+ Unique glossary term relationship key.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}/termRelationships/{termRelationshipKey}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_term_relationship got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key,
+ "termRelationshipKey": term_relationship_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def expand_tree_for_glossary(self, catalog_id, glossary_key, **kwargs):
+ """
+ Glossaries contain nested hierarchies of parent and child terms. Returns an expanded tree of this glossary.
+ Returns the fully expanded tree hierarchy of parent and child terms in this glossary.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_catalog.models.GlossaryTreeElement`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/actions/expandTree"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "expand_tree_for_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="list[GlossaryTreeElement]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="list[GlossaryTreeElement]")
+
+ def export_glossary(self, catalog_id, glossary_key, **kwargs):
+ """
+ Glossaries can be exported as csv or json formats. Returns the succesfully exported glossary in the format requested.
+ Export the glossary and the terms and return the exported glossary as csv or json.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param bool is_relationship_exported: (optional)
+ Specify if the relationship metadata is exported for the glossary.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type str
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/actions/export"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "is_relationship_exported",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "export_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ query_params = {
+ "isRelationshipExported": kwargs.get("is_relationship_exported", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="str")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="str")
+
+ def get_attribute(self, catalog_id, data_asset_key, entity_key, attribute_key, **kwargs):
+ """
+ Get a specific entity attribute by key.
+ Gets a specific entity attribute by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity attribute response.
+
+ Allowed values are: "key", "displayName", "description", "entityKey", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "externalDataType", "externalKey", "isIncrementalData", "isNullable", "length", "position", "precision", "scale", "timeExternal", "uri", "properties"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Attribute`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_attribute got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "entityKey", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "externalDataType", "externalKey", "isIncrementalData", "isNullable", "length", "position", "precision", "scale", "timeExternal", "uri", "properties"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Attribute")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Attribute")
+
+ def get_attribute_tag(self, catalog_id, data_asset_key, entity_key, attribute_key, tag_key, **kwargs):
+ """
+ Get a specific entity attribute tag by key.
+ Gets a specific entity attribute tag by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity attribute tag response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "attributeKey"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.AttributeTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}/tags/{tagKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_attribute_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "attributeKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AttributeTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AttributeTag")
+
+ def get_catalog(self, catalog_id, **kwargs):
+ """
+ Get data catalog.
+ Gets a data catalog by identifier.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Catalog`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_catalog got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Catalog")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Catalog")
+
+ def get_connection(self, catalog_id, data_asset_key, connection_key, **kwargs):
+ """
+ Get a specific data asset connection by key.
+ Gets a specific data asset connection by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str connection_key: (required)
+ Unique connection key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a connection response.
+
+ Allowed values are: "key", "displayName", "description", "dataAssetKey", "typeKey", "timeCreated", "timeUpdated", "createdById", "updatedById", "properties", "externalKey", "timeStatusUpdated", "lifecycleState", "isDefault", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Connection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections/{connectionKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "connectionKey": connection_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "dataAssetKey", "typeKey", "timeCreated", "timeUpdated", "createdById", "updatedById", "properties", "externalKey", "timeStatusUpdated", "lifecycleState", "isDefault", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Connection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Connection")
+
+ def get_data_asset(self, catalog_id, data_asset_key, **kwargs):
+ """
+ Get a specific data asset for the given key within a data catalog.
+ Gets a specific data asset for the given key within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a data asset response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "externalKey", "typeKey", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "uri", "properties"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAsset`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_data_asset got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "externalKey", "typeKey", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "uri", "properties"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAsset")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAsset")
+
+ def get_data_asset_tag(self, catalog_id, data_asset_key, tag_key, **kwargs):
+ """
+ Get a specific data asset tag by key.
+ Gets a specific data asset tag by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a data asset tag response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "dataAssetKey"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAssetTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/tags/{tagKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_data_asset_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "dataAssetKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAssetTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAssetTag")
+
+ def get_entity(self, catalog_id, data_asset_key, entity_key, **kwargs):
+ """
+ Get a specific data entity by key for a data asset.
+ Gets a specific data entity by key for a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity response.
+
+ Allowed values are: "key", "displayName", "description", "dataAssetKey", "timeCreated", "timeUpdated", "createdById", "updatedById", "lifecycleState", "externalKey", "timeExternal", "timeStatusUpdated", "isLogical", "isPartition", "folderKey", "typeKey", "path", "harvestStatus", "lastJobKey", "uri", "properties"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Entity`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_entity got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "dataAssetKey", "timeCreated", "timeUpdated", "createdById", "updatedById", "lifecycleState", "externalKey", "timeExternal", "timeStatusUpdated", "isLogical", "isPartition", "folderKey", "typeKey", "path", "harvestStatus", "lastJobKey", "uri", "properties"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Entity")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Entity")
+
+ def get_entity_tag(self, catalog_id, data_asset_key, entity_key, tag_key, **kwargs):
+ """
+ Get a specific entity tag by key.
+ Gets a specific entity tag by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity tag response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "entityKey"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.EntityTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/tags/{tagKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_entity_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "entityKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="EntityTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="EntityTag")
+
+ def get_folder(self, catalog_id, data_asset_key, folder_key, **kwargs):
+ """
+ Get a specific data asset folder by key.
+ Gets a specific data asset folder by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a folder response.
+
+ Allowed values are: "key", "displayName", "description", "parentFolderKey", "path", "dataAssetKey", "properties", "externalKey", "timeCreated", "timeUpdated", "createdById", "updatedById", "timeExternal", "lifecycleState", "harvestStatus", "lastJobKey", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Folder`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_folder got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "parentFolderKey", "path", "dataAssetKey", "properties", "externalKey", "timeCreated", "timeUpdated", "createdById", "updatedById", "timeExternal", "lifecycleState", "harvestStatus", "lastJobKey", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Folder")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Folder")
+
+ def get_folder_tag(self, catalog_id, data_asset_key, folder_key, tag_key, **kwargs):
+ """
+ Get a specific folder tag by key.
+ Gets a specific folder tag by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param str tag_key: (required)
+ Unique tag key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a folder tag response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "folderKey"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.FolderTag`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}/tags/{tagKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_folder_tag got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key,
+ "tagKey": tag_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "createdById", "uri", "folderKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="FolderTag")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="FolderTag")
+
+ def get_glossary(self, catalog_id, glossary_key, **kwargs):
+ """
+ Get a specific glossary by key within a data catalog.
+ Gets a specific glossary by key within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a glossary response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "owner", "workflowStatus", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Glossary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "owner", "workflowStatus", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Glossary")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Glossary")
+
+ def get_job(self, catalog_id, job_key, **kwargs):
+ """
+ Get a specific job by key within a data catalog.
+ Gets a specific job by key within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "lifecycleState", "timeCreated", "timeUpdated", "jobType", "scheduleCronExpression", "timeScheduleBegin", "timeScheduleEnd", "scheduleType", "connectionKey", "jobDefinitionKey", "internalVersion", "executionCount", "timeOfLatestExecution", "executions", "createdById", "updatedById", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Job`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "lifecycleState", "timeCreated", "timeUpdated", "jobType", "scheduleCronExpression", "timeScheduleBegin", "timeScheduleEnd", "scheduleType", "connectionKey", "jobDefinitionKey", "internalVersion", "executionCount", "timeOfLatestExecution", "executions", "createdById", "updatedById", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Job")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Job")
+
+ def get_job_definition(self, catalog_id, job_definition_key, **kwargs):
+ """
+ Get a specific job definition by key within a data catalog.
+ Gets a specific job definition by key within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_definition_key: (required)
+ Unique job definition key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job definition response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "jobType", "isIncremental", "dataAssetKey", "connectionKey", "internalVersion", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "uri", "isSampleDataExtracted", "sampleDataSizeInMBs", "properties"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobDefinition`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobDefinitions/{jobDefinitionKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_job_definition got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobDefinitionKey": job_definition_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "jobType", "isIncremental", "dataAssetKey", "connectionKey", "internalVersion", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "uri", "isSampleDataExtracted", "sampleDataSizeInMBs", "properties"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobDefinition")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobDefinition")
+
+ def get_job_execution(self, catalog_id, job_key, job_execution_key, **kwargs):
+ """
+ Get a specific job execution by key.
+ Gets a specific job execution by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str job_execution_key: (required)
+ The key of the job execution.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job execution response.
+
+ Allowed values are: "key", "jobKey", "jobType", "subType", "parentKey", "scheduleInstanceKey", "lifecycleState", "timeCreated", "timeStarted", "timeEnded", "errorCode", "errorMessage", "processKey", "externalUrl", "eventKey", "dataEntityKey", "createdById", "updatedById", "properties", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobExecution`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions/{jobExecutionKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_job_execution got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key,
+ "jobExecutionKey": job_execution_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "jobKey", "jobType", "subType", "parentKey", "scheduleInstanceKey", "lifecycleState", "timeCreated", "timeStarted", "timeEnded", "errorCode", "errorMessage", "processKey", "externalUrl", "eventKey", "dataEntityKey", "createdById", "updatedById", "properties", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobExecution")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobExecution")
+
+ def get_job_log(self, catalog_id, job_key, job_execution_key, job_log_key, **kwargs):
+ """
+ Get a specific job log by key.
+ Gets a specific job log by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str job_execution_key: (required)
+ The key of the job execution.
+
+ :param str job_log_key: (required)
+ Unique job log key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job log response.
+
+ Allowed values are: "key", "jobExecutionKey", "createdById", "updatedById", "timeUpdated", "timeCreated", "severity", "logMessage", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobLog`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions/{jobExecutionKey}/logs/{jobLogKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_job_log got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key,
+ "jobExecutionKey": job_execution_key,
+ "jobLogKey": job_log_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "jobExecutionKey", "createdById", "updatedById", "timeUpdated", "timeCreated", "severity", "logMessage", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobLog")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobLog")
+
+ def get_job_metrics(self, catalog_id, job_key, job_execution_key, job_metrics_key, **kwargs):
+ """
+ Get a specific job metric by key.
+ Gets a specific job metric by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str job_execution_key: (required)
+ The key of the job execution.
+
+ :param str job_metrics_key: (required)
+ Unique job metrics key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job metric response.
+
+ Allowed values are: "key", "description", "displayName", "timeInserted", "category", "subCategory", "unit", "value", "batchKey", "jobExecutionKey", "createdById", "updatedById", "timeUpdated", "timeCreated", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobMetric`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions/{jobExecutionKey}/metrics/{jobMetricsKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_job_metrics got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key,
+ "jobExecutionKey": job_execution_key,
+ "jobMetricsKey": job_metrics_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "description", "displayName", "timeInserted", "category", "subCategory", "unit", "value", "batchKey", "jobExecutionKey", "createdById", "updatedById", "timeUpdated", "timeCreated", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobMetric")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobMetric")
+
+ def get_term(self, catalog_id, glossary_key, term_key, **kwargs):
+ """
+ Get a specific glossary term by key.
+ Gets a specific glossary term by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a term response.
+
+ Allowed values are: "key", "displayName", "description", "glossaryKey", "parentTermKey", "isAllowedToHaveChildTerms", "path", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "owner", "workflowStatus", "uri", "relatedTerms", "associatedObjectCount", "associatedObjects"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Term`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_term got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "glossaryKey", "parentTermKey", "isAllowedToHaveChildTerms", "path", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "owner", "workflowStatus", "uri", "relatedTerms", "associatedObjectCount", "associatedObjects"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Term")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Term")
+
+ def get_term_relationship(self, catalog_id, glossary_key, term_key, term_relationship_key, **kwargs):
+ """
+ Get a specific glossary term relationship by key.
+ Gets a specific glossary term relationship by key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param str term_relationship_key: (required)
+ Unique glossary term relationship key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a term relationship response.
+
+ Allowed values are: "key", "displayName", "description", "relatedTermKey", "relatedTermDisplayName", "parentTermKey", "parentTermDisplayName", "lifecycleState", "timeCreated", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TermRelationship`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}/termRelationships/{termRelationshipKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_term_relationship got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key,
+ "termRelationshipKey": term_relationship_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "relatedTermKey", "relatedTermDisplayName", "parentTermKey", "parentTermDisplayName", "lifecycleState", "timeCreated", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermRelationship")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermRelationship")
+
+ def get_type(self, catalog_id, type_key, **kwargs):
+ """
+ Get a specific type by key within a data catalog.
+ Gets a specific type by key within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str type_key: (required)
+ Unique type key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a type response.
+
+ Allowed values are: "key", "description", "name", "catalogId", "properties", "isInternal", "isTag", "isApproved", "typeCategory", "externalTypeName", "lifecycleState", "uri"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Type`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/types/{typeKey}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "fields",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_type got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "typeKey": type_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "description", "name", "catalogId", "properties", "isInternal", "isTag", "isApproved", "typeCategory", "externalTypeName", "lifecycleState", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ query_params = {
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi')
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Type")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="Type")
+
+ def get_work_request(self, work_request_id, **kwargs):
+ """
+ Get work request status.
+ Gets the status of the work request with the given OCID.
+
+
+ :param str work_request_id: (required)
+ The OCID of the asynchronous request.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.WorkRequest`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_work_request got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="WorkRequest")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="WorkRequest")
+
+ def import_connection(self, catalog_id, data_asset_key, import_connection_details, **kwargs):
+ """
+ Import connections from an Oracle wallet file that contains relevant metadata for creating connections.
+ Import new connection for this data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param ImportConnectionDetails import_connection_details: (required)
+ The information used to create the connections through import.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Connection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/actions/importConnection"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "import_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=import_connection_details,
+ response_type="Connection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=import_connection_details,
+ response_type="Connection")
+
+ def import_glossary(self, catalog_id, glossary_key, import_glossary_details, **kwargs):
+ """
+ Glossaries can be imported from csv or json file formats. Returns the succesfully imported glossary.
+ Import the glossary and the terms from csv or json files and return the imported glossary resource.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param ImportGlossaryDetails import_glossary_details: (required)
+ The file contents to import the glossary.
+
+ :param bool is_relationship_imported: (optional)
+ Specify if the relationship metadata is imported for the glossary.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/actions/import"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "is_relationship_imported",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "import_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ query_params = {
+ "isRelationshipImported": kwargs.get("is_relationship_imported", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ body=import_glossary_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ body=import_glossary_details)
+
+ def list_attribute_tags(self, catalog_id, data_asset_key, entity_key, attribute_key, **kwargs):
+ """
+ Returns a list of all tags for an entity attribute.
+ Returns a list of all tags for an entity attribute.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param str name: (optional)
+ Immutable resource name.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str term_key: (optional)
+ Unique key of the related term.
+
+ :param str term_path: (optional)
+ Path of the related term.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity attribute tag summary response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "attributeKey"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.AttributeTagCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}/tags"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "name",
+ "lifecycle_state",
+ "term_key",
+ "term_path",
+ "time_created",
+ "created_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_attribute_tags got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "attributeKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "name": kwargs.get("name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "termKey": kwargs.get("term_key", missing),
+ "termPath": kwargs.get("term_path", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AttributeTagCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AttributeTagCollection")
+
+ def list_attributes(self, catalog_id, data_asset_key, entity_key, **kwargs):
+ """
+ Returns a list of all attributes of an data entity.
+ Returns a list of all attributes of an data entity.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str external_key: (optional)
+ Unique external identifier of this resource in the external source system.
+
+ :param datetime time_external: (optional)
+ Last modified timestamp of this object in the external system.
+
+ :param str external_type_name: (optional)
+ Data type as defined in an external system.
+
+ :param bool is_incremental_data: (optional)
+ Identifies whether this attribute can be used as a watermark to extract incremental data.
+
+ :param bool is_nullable: (optional)
+ Identifies whether this attribute can be assigned null value.
+
+ :param int length: (optional)
+ Max allowed length of the attribute value.
+
+ :param int position: (optional)
+ Position of the attribute in the record definition.
+
+ :param int precision: (optional)
+ Precision of the attribute value usually applies to float data type.
+
+ :param int scale: (optional)
+ Scale of the attribute value usually applies to float data type.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity attribute summary response.
+
+ Allowed values are: "key", "displayName", "description", "entityKey", "lifecycleState", "timeCreated", "externalDataType", "externalKey", "length", "isNullable", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.AttributeCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "external_key",
+ "time_external",
+ "external_type_name",
+ "is_incremental_data",
+ "is_nullable",
+ "length",
+ "position",
+ "precision",
+ "scale",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_attributes got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "entityKey", "lifecycleState", "timeCreated", "externalDataType", "externalKey", "length", "isNullable", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "externalKey": kwargs.get("external_key", missing),
+ "timeExternal": kwargs.get("time_external", missing),
+ "externalTypeName": kwargs.get("external_type_name", missing),
+ "isIncrementalData": kwargs.get("is_incremental_data", missing),
+ "isNullable": kwargs.get("is_nullable", missing),
+ "length": kwargs.get("length", missing),
+ "position": kwargs.get("position", missing),
+ "precision": kwargs.get("precision", missing),
+ "scale": kwargs.get("scale", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AttributeCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="AttributeCollection")
+
+ def list_catalogs(self, compartment_id, **kwargs):
+ """
+ Lists all the data catalogs in the specified compartment.
+ Returns a list of all the data catalogs in the specified compartment.
+
+
+ :param str compartment_id: (required)
+ The OCID of the compartment where you want to list resources.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_catalog.models.CatalogSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "limit",
+ "page",
+ "lifecycle_state",
+ "sort_order",
+ "sort_by",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_catalogs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "displayName": kwargs.get("display_name", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "sortBy": kwargs.get("sort_by", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[CatalogSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[CatalogSummary]")
+
+ def list_connections(self, catalog_id, data_asset_key, **kwargs):
+ """
+ Returns a list of all connections for a data asset.
+ Returns a list of all Connections for a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str external_key: (optional)
+ Unique external identifier of this resource in the external source system.
+
+ :param datetime time_status_updated: (optional)
+ Time that the resource's status was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param bool is_default: (optional)
+ Indicates whether this connection is the default connection.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a connection summary response.
+
+ Allowed values are: "key", "displayName", "description", "dataAssetKey", "typeKey", "timeCreated", "externalKey", "lifecycleState", "isDefault", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.ConnectionCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "external_key",
+ "time_status_updated",
+ "is_default",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_connections got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "dataAssetKey", "typeKey", "timeCreated", "externalKey", "lifecycleState", "isDefault", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "externalKey": kwargs.get("external_key", missing),
+ "timeStatusUpdated": kwargs.get("time_status_updated", missing),
+ "isDefault": kwargs.get("is_default", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="ConnectionCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="ConnectionCollection")
+
+ def list_data_asset_tags(self, catalog_id, data_asset_key, **kwargs):
+ """
+ Returns a list of all tags for a data asset.
+ Returns a list of all tags for a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str name: (optional)
+ Immutable resource name.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str term_key: (optional)
+ Unique key of the related term.
+
+ :param str term_path: (optional)
+ Path of the related term.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a data asset tag summary response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "dataAssetKey"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAssetTagCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/tags"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "name",
+ "lifecycle_state",
+ "term_key",
+ "term_path",
+ "time_created",
+ "created_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_data_asset_tags got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "dataAssetKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "name": kwargs.get("name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "termKey": kwargs.get("term_key", missing),
+ "termPath": kwargs.get("term_path", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAssetTagCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAssetTagCollection")
+
+ def list_data_assets(self, catalog_id, **kwargs):
+ """
+ Returns a list of data assets within a data catalog.
+ Returns a list of data assets within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str external_key: (optional)
+ Unique external identifier of this resource in the external source system.
+
+ :param str type_key: (optional)
+ The key of the object type.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a data asset summary response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "externalKey", "typeKey", "lifecycleState", "timeCreated", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAssetCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "external_key",
+ "type_key",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_data_assets got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "externalKey", "typeKey", "lifecycleState", "timeCreated", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "externalKey": kwargs.get("external_key", missing),
+ "typeKey": kwargs.get("type_key", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAssetCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="DataAssetCollection")
+
+ def list_entities(self, catalog_id, data_asset_key, **kwargs):
+ """
+ Returns a list of all entities of a data asset.
+ Returns a list of all entities of a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str external_key: (optional)
+ Unique external identifier of this resource in the external source system.
+
+ :param datetime time_external: (optional)
+ Last modified timestamp of this object in the external system.
+
+ :param datetime time_status_updated: (optional)
+ Time that the resource's status was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param bool is_logical: (optional)
+ Identifies if the object is a physical object (materialized) or virtual/logical object defined on other objects.
+
+ :param bool is_partition: (optional)
+ Identifies if an object is a sub object (partition) of a physical or materialized parent object.
+
+ :param str folder_key: (optional)
+ Key of the associated folder.
+
+ :param str path: (optional)
+ Full path of the resource for resources that support paths.
+
+ :param str harvest_status: (optional)
+ Harvest status of the harvestable resource as updated by the harvest process.
+
+ :param str last_job_key: (optional)
+ Key of the last harvest process to update this resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity summary response.
+
+ Allowed values are: "key", "displayName", "description", "dataAssetKey", "timeCreated", "timeUpdated", "updatedById", "lifecycleState", "folderKey", "externalKey", "path", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.EntityCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "external_key",
+ "time_external",
+ "time_status_updated",
+ "is_logical",
+ "is_partition",
+ "folder_key",
+ "path",
+ "harvest_status",
+ "last_job_key",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_entities got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "dataAssetKey", "timeCreated", "timeUpdated", "updatedById", "lifecycleState", "folderKey", "externalKey", "path", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "externalKey": kwargs.get("external_key", missing),
+ "timeExternal": kwargs.get("time_external", missing),
+ "timeStatusUpdated": kwargs.get("time_status_updated", missing),
+ "isLogical": kwargs.get("is_logical", missing),
+ "isPartition": kwargs.get("is_partition", missing),
+ "folderKey": kwargs.get("folder_key", missing),
+ "path": kwargs.get("path", missing),
+ "harvestStatus": kwargs.get("harvest_status", missing),
+ "lastJobKey": kwargs.get("last_job_key", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="EntityCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="EntityCollection")
+
+ def list_entity_tags(self, catalog_id, data_asset_key, entity_key, **kwargs):
+ """
+ Returns a list of all tags for a data entity.
+ Returns a list of all tags for a data entity.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str name: (optional)
+ Immutable resource name.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str term_key: (optional)
+ Unique key of the related term.
+
+ :param str term_path: (optional)
+ Path of the related term.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in an entity tag summary response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "entityKey"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.EntityTagCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/tags"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "name",
+ "lifecycle_state",
+ "term_key",
+ "term_path",
+ "time_created",
+ "created_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_entity_tags got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "entityKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "name": kwargs.get("name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "termKey": kwargs.get("term_key", missing),
+ "termPath": kwargs.get("term_path", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="EntityTagCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="EntityTagCollection")
+
+ def list_folder_tags(self, catalog_id, data_asset_key, folder_key, **kwargs):
+ """
+ Returns a list of all tags for a folder.
+ Returns a list of all tags for a folder.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param str name: (optional)
+ Immutable resource name.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str term_key: (optional)
+ Unique key of the related term.
+
+ :param str term_path: (optional)
+ Path of the related term.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a folder tag summary response.
+
+ Allowed values are: "key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "folderKey"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.FolderTagCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}/tags"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "name",
+ "lifecycle_state",
+ "term_key",
+ "term_path",
+ "time_created",
+ "created_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_folder_tags got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "name", "termKey", "termPath", "termDescription", "lifecycleState", "timeCreated", "uri", "glossaryKey", "folderKey"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "name": kwargs.get("name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "termKey": kwargs.get("term_key", missing),
+ "termPath": kwargs.get("term_path", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="FolderTagCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="FolderTagCollection")
+
+ def list_folders(self, catalog_id, data_asset_key, **kwargs):
+ """
+ Returns a list of all folders for a data asset.
+ Returns a list of all folders.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str parent_folder_key: (optional)
+ Unique folder key.
+
+ :param str path: (optional)
+ Full path of the resource for resources that support paths.
+
+ :param str external_key: (optional)
+ Unique external identifier of this resource in the external source system.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str harvest_status: (optional)
+ Harvest status of the harvestable resource as updated by the harvest process.
+
+ :param str last_job_key: (optional)
+ Key of the last harvest process to update this resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a folder summary response.
+
+ Allowed values are: "key", "displayName", "description", "parentFolderKey", "path", "dataAssetKey", "externalKey", "timeExternal", "timeCreated", "lifecycleState", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.FolderCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "parent_folder_key",
+ "path",
+ "external_key",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "harvest_status",
+ "last_job_key",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_folders got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "parentFolderKey", "path", "dataAssetKey", "externalKey", "timeExternal", "timeCreated", "lifecycleState", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "parentFolderKey": kwargs.get("parent_folder_key", missing),
+ "path": kwargs.get("path", missing),
+ "externalKey": kwargs.get("external_key", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "harvestStatus": kwargs.get("harvest_status", missing),
+ "lastJobKey": kwargs.get("last_job_key", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="FolderCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="FolderCollection")
+
+ def list_glossaries(self, catalog_id, **kwargs):
+ """
+ Returns a list of all glossaries within a data catalog.
+ Returns a list of all glossaries within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a glossary summary response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "lifecycleState", "timeCreated", "uri", "workflowStatus"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.GlossaryCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_glossaries got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "lifecycleState", "timeCreated", "uri", "workflowStatus"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="GlossaryCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="GlossaryCollection")
+
+ def list_job_definitions(self, catalog_id, **kwargs):
+ """
+ Returns a list of job definitions within a data catalog.
+ Returns a list of job definitions within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str job_type: (optional)
+ Job type.
+
+ :param bool is_incremental: (optional)
+ Whether job definition is an incremental harvest (true) or a full harvest (false).
+
+ :param str data_asset_key: (optional)
+ Unique data asset key.
+
+ :param str connection_key: (optional)
+ Unique connection key.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str sample_data_size_in_mbs: (optional)
+ The sample data size in MB, specified as number of rows, for a metadata harvest.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job definition summary response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "jobType", "lifecycleState", "timeCreated", "isSampleDataExtracted", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobDefinitionCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobDefinitions"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "job_type",
+ "is_incremental",
+ "data_asset_key",
+ "connection_key",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "sample_data_size_in_mbs",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_job_definitions got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "jobType", "lifecycleState", "timeCreated", "isSampleDataExtracted", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "jobType": kwargs.get("job_type", missing),
+ "isIncremental": kwargs.get("is_incremental", missing),
+ "dataAssetKey": kwargs.get("data_asset_key", missing),
+ "connectionKey": kwargs.get("connection_key", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "sampleDataSizeInMBs": kwargs.get("sample_data_size_in_mbs", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobDefinitionCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobDefinitionCollection")
+
+ def list_job_executions(self, catalog_id, job_key, **kwargs):
+ """
+ Returns a list of job executions for a job.
+ Returns a list of job executions for a job.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str lifecycle_state: (optional)
+ Job execution lifecycle state.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str job_type: (optional)
+ Job type.
+
+ :param str sub_type: (optional)
+ Sub-type of this job execution.
+
+ :param str parent_key: (optional)
+ The unique key of the parent execution or null if this job execution has no parent.
+
+ :param datetime time_start: (optional)
+ Time that the job execution was started or in the case of a future time, the time when the job will start.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_end: (optional)
+ Time that the job execution ended or null if the job is still running or hasn't run yet.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str error_code: (optional)
+ Error code returned from the job execution or null if job is still running or didn't return an error.
+
+ :param str error_message: (optional)
+ Error message returned from the job execution or null if job is still running or didn't return an error.
+
+ :param str process_key: (optional)
+ Process identifier related to the job execution.
+
+ :param str external_url: (optional)
+ The a URL of the job for accessing this resource and its status.
+
+ :param str event_key: (optional)
+ Event that triggered the execution of this job or null.
+
+ :param str data_entity_key: (optional)
+ Unique entity key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job execution summary response.
+
+ Allowed values are: "key", "jobKey", "jobType", "parentKey", "scheduleInstanceKey", "lifecycleState", "timeCreated", "timeStarted", "timeEnded", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobExecutionCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "job_type",
+ "sub_type",
+ "parent_key",
+ "time_start",
+ "time_end",
+ "error_code",
+ "error_message",
+ "process_key",
+ "external_url",
+ "event_key",
+ "data_entity_key",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_job_executions got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "jobKey", "jobType", "parentKey", "scheduleInstanceKey", "lifecycleState", "timeCreated", "timeStarted", "timeEnded", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "jobType": kwargs.get("job_type", missing),
+ "subType": kwargs.get("sub_type", missing),
+ "parentKey": kwargs.get("parent_key", missing),
+ "timeStart": kwargs.get("time_start", missing),
+ "timeEnd": kwargs.get("time_end", missing),
+ "errorCode": kwargs.get("error_code", missing),
+ "errorMessage": kwargs.get("error_message", missing),
+ "processKey": kwargs.get("process_key", missing),
+ "externalUrl": kwargs.get("external_url", missing),
+ "eventKey": kwargs.get("event_key", missing),
+ "dataEntityKey": kwargs.get("data_entity_key", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobExecutionCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobExecutionCollection")
+
+ def list_job_logs(self, catalog_id, job_key, job_execution_key, **kwargs):
+ """
+ Returns a list of job logs.
+ Returns a list of job logs.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str job_execution_key: (required)
+ The key of the job execution.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str severity: (optional)
+ Severity level for this Log.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job log summary response.
+
+ Allowed values are: "key", "jobExecutionKey", "severity", "timeCreated", "logMessage", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobLogCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions/{jobExecutionKey}/logs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "lifecycle_state",
+ "severity",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_job_logs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key,
+ "jobExecutionKey": job_execution_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "jobExecutionKey", "severity", "timeCreated", "logMessage", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "severity": kwargs.get("severity", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobLogCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobLogCollection")
+
+ def list_job_metrics(self, catalog_id, job_key, job_execution_key, **kwargs):
+ """
+ Returns a list of job metrics.
+ Returns a list of job metrics.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param str job_execution_key: (required)
+ The key of the job execution.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str category: (optional)
+ Category of this metric.
+
+ :param str sub_category: (optional)
+ Sub category of this metric under the category. Used for aggregating values. May be null.
+
+ :param str unit: (optional)
+ Unit of this metric.
+
+ :param str value: (optional)
+ Value of this metric.
+
+ :param str batch_key: (optional)
+ Batch key for grouping, may be null.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_inserted: (optional)
+ The time the metric was logged or captured in the system where the job executed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job metric summary response.
+
+ Allowed values are: "key", "description", "displayName", "timeInserted", "category", "subCategory", "unit", "value", "batchKey", "jobExecutionKey", "timeCreated", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobMetricCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}/executions/{jobExecutionKey}/metrics"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "category",
+ "sub_category",
+ "unit",
+ "value",
+ "batch_key",
+ "time_created",
+ "time_updated",
+ "time_inserted",
+ "created_by_id",
+ "updated_by_id",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_job_metrics got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key,
+ "jobExecutionKey": job_execution_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "description", "displayName", "timeInserted", "category", "subCategory", "unit", "value", "batchKey", "jobExecutionKey", "timeCreated", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "category": kwargs.get("category", missing),
+ "subCategory": kwargs.get("sub_category", missing),
+ "unit": kwargs.get("unit", missing),
+ "value": kwargs.get("value", missing),
+ "batchKey": kwargs.get("batch_key", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "timeInserted": kwargs.get("time_inserted", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobMetricCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobMetricCollection")
+
+ def list_jobs(self, catalog_id, **kwargs):
+ """
+ Returns a list of jobs within a data catalog.
+ Returns a list of jobs within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ Job lifecycle state.
+
+ :param datetime time_created: (optional)
+ Time that the resource was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_updated: (optional)
+ Time that the resource was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str created_by_id: (optional)
+ OCID of the user who created the resource.
+
+ :param str updated_by_id: (optional)
+ OCID of the user who updated the resource.
+
+ :param str job_type: (optional)
+ Job type.
+
+ :param str job_definition_key: (optional)
+ Unique job definition key.
+
+ :param str schedule_cron_expression: (optional)
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+ :param datetime time_schedule_begin: (optional)
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param datetime time_schedule_end: (optional)
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str schedule_type: (optional)
+ Type of the job schedule.
+
+ :param str connection_key: (optional)
+ Unique connection key.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a job summary response.
+
+ Allowed values are: "key", "displayName", "description", "catalogId", "jobDefinitionKey", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "jobType", "scheduleCronExpression", "timeScheduleBegin", "scheduleType", "executionCount", "timeOfLatestExecution", "executions", "uri"
+
+ :param int execution_count: (optional)
+ The total number of executions for this job schedule.
+
+ :param datetime time_of_latest_execution: (optional)
+ The date and time the most recent execution for this job ,in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "time_created",
+ "time_updated",
+ "created_by_id",
+ "updated_by_id",
+ "job_type",
+ "job_definition_key",
+ "schedule_cron_expression",
+ "time_schedule_begin",
+ "time_schedule_end",
+ "schedule_type",
+ "connection_key",
+ "fields",
+ "execution_count",
+ "time_of_latest_execution",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_jobs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "catalogId", "jobDefinitionKey", "lifecycleState", "timeCreated", "timeUpdated", "createdById", "updatedById", "jobType", "scheduleCronExpression", "timeScheduleBegin", "scheduleType", "executionCount", "timeOfLatestExecution", "executions", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreated": kwargs.get("time_created", missing),
+ "timeUpdated": kwargs.get("time_updated", missing),
+ "createdById": kwargs.get("created_by_id", missing),
+ "updatedById": kwargs.get("updated_by_id", missing),
+ "jobType": kwargs.get("job_type", missing),
+ "jobDefinitionKey": kwargs.get("job_definition_key", missing),
+ "scheduleCronExpression": kwargs.get("schedule_cron_expression", missing),
+ "timeScheduleBegin": kwargs.get("time_schedule_begin", missing),
+ "timeScheduleEnd": kwargs.get("time_schedule_end", missing),
+ "scheduleType": kwargs.get("schedule_type", missing),
+ "connectionKey": kwargs.get("connection_key", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "executionCount": kwargs.get("execution_count", missing),
+ "timeOfLatestExecution": kwargs.get("time_of_latest_execution", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="JobCollection")
+
+ def list_tags(self, catalog_id, **kwargs):
+ """
+ Returns a list of all user created tags in the system.
+ Returns a list of all user created tags in the system.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a term summary response.
+
+ Allowed values are: "key", "displayName", "description", "glossaryKey", "parentTermKey", "isAllowedToHaveChildTerms", "path", "lifecycleState", "timeCreated", "workflowStatus", "associatedObjectCount", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TermCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/tags"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_tags got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "glossaryKey", "parentTermKey", "isAllowedToHaveChildTerms", "path", "lifecycleState", "timeCreated", "workflowStatus", "associatedObjectCount", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermCollection")
+
+ def list_term_relationships(self, catalog_id, glossary_key, term_key, **kwargs):
+ """
+ Returns a list of all term relationships for a term within a glossary.
+ Returns a list of all term relationships within a glossary.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a term relationship summary response.
+
+ Allowed values are: "key", "displayName", "description", "relatedTermKey", "relatedTermDisplayName", "parentTermKey", "parentTermDisplayName", "lifecycleState", "timeCreated", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TermRelationshipCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}/termRelationships"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_term_relationships got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "relatedTermKey", "relatedTermDisplayName", "parentTermKey", "parentTermDisplayName", "lifecycleState", "timeCreated", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermRelationshipCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermRelationshipCollection")
+
+ def list_terms(self, catalog_id, glossary_key, **kwargs):
+ """
+ Returns a list of all terms within a glossary.
+ Returns a list of all terms within a glossary.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str parent_term_key: (optional)
+ Unique key of the parent term.
+
+ :param bool is_allowed_to_have_child_terms: (optional)
+ Indicates whether a term may contain child terms.
+
+ :param str workflow_status: (optional)
+ Status of the approval workflow for this business term in the glossary.
+
+ :param str path: (optional)
+ Full path of the resource for resources that support paths.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a term summary response.
+
+ Allowed values are: "key", "displayName", "description", "glossaryKey", "parentTermKey", "isAllowedToHaveChildTerms", "path", "lifecycleState", "timeCreated", "workflowStatus", "associatedObjectCount", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TermCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "display_name",
+ "lifecycle_state",
+ "parent_term_key",
+ "is_allowed_to_have_child_terms",
+ "workflow_status",
+ "path",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_terms got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "displayName", "description", "glossaryKey", "parentTermKey", "isAllowedToHaveChildTerms", "path", "lifecycleState", "timeCreated", "workflowStatus", "associatedObjectCount", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "parentTermKey": kwargs.get("parent_term_key", missing),
+ "isAllowedToHaveChildTerms": kwargs.get("is_allowed_to_have_child_terms", missing),
+ "workflowStatus": kwargs.get("workflow_status", missing),
+ "path": kwargs.get("path", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TermCollection")
+
+ def list_types(self, catalog_id, **kwargs):
+ """
+ Returns a list of all types within a data catalog.
+ Returns a list of all types within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str name: (optional)
+ Immutable resource name.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str is_internal: (optional)
+ Indicates whether the type is internal, making it unavailable for use by metadata elements.
+
+ :param str is_tag: (optional)
+ Indicates whether the type can be used for tagging metadata elements.
+
+ :param str is_approved: (optional)
+ Indicates whether the type is approved for use as a classifying object.
+
+ :param str external_type_name: (optional)
+ Data type as defined in an external system.
+
+ :param str type_category: (optional)
+ Indicates the category of this type . For example, data assets or connections.
+
+ :param list[str] fields: (optional)
+ Specifies the fields to return in a type summary response.
+
+ Allowed values are: "key", "description", "name", "catalogId", "lifecycleState", "typeCategory", "uri"
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TypeCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/types"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "name",
+ "lifecycle_state",
+ "is_internal",
+ "is_tag",
+ "is_approved",
+ "external_type_name",
+ "type_category",
+ "fields",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_types got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'fields' in kwargs:
+ fields_allowed_values = ["key", "description", "name", "catalogId", "lifecycleState", "typeCategory", "uri"]
+ for fields_item in kwargs['fields']:
+ if fields_item not in fields_allowed_values:
+ raise ValueError(
+ "Invalid value for `fields`, must be one of {0}".format(fields_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "name": kwargs.get("name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "isInternal": kwargs.get("is_internal", missing),
+ "isTag": kwargs.get("is_tag", missing),
+ "isApproved": kwargs.get("is_approved", missing),
+ "externalTypeName": kwargs.get("external_type_name", missing),
+ "typeCategory": kwargs.get("type_category", missing),
+ "fields": self.base_client.generate_collection_format_param(kwargs.get("fields", missing), 'multi'),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TypeCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="TypeCollection")
+
+ def list_work_request_errors(self, work_request_id, **kwargs):
+ """
+ Lists work request errors.
+ Returns a (paginated) list of errors for a given work request.
+
+
+ :param str work_request_id: (required)
+ The OCID of the asynchronous request.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMESTAMP is descending. Default order for CODE and MESSAGE is ascending. If no value is specified TIMESTAMP is default.
+
+ Allowed values are: "CODE", "TIMESTAMP"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_catalog.models.WorkRequestError`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}/errors"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "page",
+ "limit",
+ "sort_by",
+ "sort_order"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_work_request_errors got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["CODE", "TIMESTAMP"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "page": kwargs.get("page", missing),
+ "limit": kwargs.get("limit", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestError]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestError]")
+
+ def list_work_request_logs(self, work_request_id, **kwargs):
+ """
+ Lists work request logs.
+ Returns a (paginated) list of logs for a given work request.
+
+
+ :param str work_request_id: (required)
+ The OCID of the asynchronous request.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMESTAMP is descending. Default order for MESSAGE is ascending. If no value is specified TIMESTAMP is default.
+
+ Allowed values are: "MESSAGE", "TIMESTAMP"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_catalog.models.WorkRequestLog`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests/{workRequestId}/logs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "page",
+ "limit",
+ "sort_by",
+ "sort_order"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_work_request_logs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "workRequestId": work_request_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["MESSAGE", "TIMESTAMP"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "page": kwargs.get("page", missing),
+ "limit": kwargs.get("limit", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestLog]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequestLog]")
+
+ def list_work_requests(self, compartment_id, **kwargs):
+ """
+ List work requests.
+ Lists the work requests in a compartment.
+
+
+ :param str compartment_id: (required)
+ The OCID of the compartment where you want to list resources.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_catalog.models.WorkRequest`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/workRequests"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "page",
+ "limit"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_work_requests got unknown kwargs: {!r}".format(extra_kwargs))
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "page": kwargs.get("page", missing),
+ "limit": kwargs.get("limit", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequest]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[WorkRequest]")
+
+ def object_stats(self, catalog_id, **kwargs):
+ """
+ Returns stats on objects in the repository.
+ Returns stats on objects by type in the repository.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type str
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/actions/objectStats"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "object_stats got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="str")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="str")
+
+ def parse_connection(self, catalog_id, data_asset_key, parse_connection_details, **kwargs):
+ """
+ Parse connection from a request payload that contains data asset references.
+ Parse data asset references through connections from this data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param ParseConnectionDetails parse_connection_details: (required)
+ The information used to parse the connections from payload or connection detail.
+
+ :param str connection_key: (optional)
+ Unique connection key.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_catalog.models.ConnectionAliasSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/actions/parseConnection"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "connection_key",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "parse_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ query_params = {
+ "connectionKey": kwargs.get("connection_key", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ body=parse_connection_details,
+ response_type="list[ConnectionAliasSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ body=parse_connection_details,
+ response_type="list[ConnectionAliasSummary]")
+
+ def search_criteria(self, catalog_id, **kwargs):
+ """
+ Returns a list of search results within a data catalog.
+ Returns a list of search results within a data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param SearchCriteria search_criteria_details: (optional)
+ The information used to create an extended search results.
+
+ :param str display_name: (optional)
+ A filter to return only resources that match the entire display name given. The match is not case sensitive.
+
+ :param str name: (optional)
+ Immutable resource name.
+
+ :param str lifecycle_state: (optional)
+ A filter to return only resources that match the specified lifecycle state. The value is case insensitive.
+
+ :param str timeout: (optional)
+ A search timeout string (for example, timeout=4000ms), bounding the search request to be executed within the
+ specified time value and bail with the hits accumulated up to that point when expired.
+ Defaults to no timeout.
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.SearchResultCollection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/search"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "search_criteria_details",
+ "display_name",
+ "name",
+ "lifecycle_state",
+ "timeout",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "search_criteria got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "displayName": kwargs.get("display_name", missing),
+ "name": kwargs.get("name", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeout": kwargs.get("timeout", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ body=kwargs.get('search_criteria_details'),
+ response_type="SearchResultCollection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ body=kwargs.get('search_criteria_details'),
+ response_type="SearchResultCollection")
+
+ def test_connection(self, catalog_id, data_asset_key, connection_key, **kwargs):
+ """
+ Test the connection credentials to the parent data asset.
+ Test the connection by connecting to the data asset using credentials in the metadata.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str connection_key: (required)
+ Unique connection key.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.ValidateConnectionResult`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections/{connectionKey}/actions/test"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "test_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "connectionKey": connection_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="ValidateConnectionResult")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="ValidateConnectionResult")
+
+ def update_attribute(self, catalog_id, data_asset_key, entity_key, attribute_key, update_attribute_details, **kwargs):
+ """
+ Update a specific data asset attribute.
+ Updates a specific data asset attribute.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param str attribute_key: (required)
+ Unique attribute key.
+
+ :param UpdateAttributeDetails update_attribute_details: (required)
+ The information to be updated in the attribute.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Attribute`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}/attributes/{attributeKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_attribute got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key,
+ "attributeKey": attribute_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_attribute_details,
+ response_type="Attribute")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_attribute_details,
+ response_type="Attribute")
+
+ def update_catalog(self, catalog_id, update_catalog_details, **kwargs):
+ """
+ Update the data catalog identified by the id.
+ Updates the data catalog.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param UpdateCatalogDetails update_catalog_details: (required)
+ The data catalog information to be updated.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Catalog`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_catalog got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_catalog_details,
+ response_type="Catalog")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_catalog_details,
+ response_type="Catalog")
+
+ def update_connection(self, catalog_id, data_asset_key, connection_key, update_connection_details, **kwargs):
+ """
+ Update a specific connection of a data asset.
+ Updates a specific connection of a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str connection_key: (required)
+ Unique connection key.
+
+ :param UpdateConnectionDetails update_connection_details: (required)
+ The information to be updated in the connection.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Connection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections/{connectionKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "connectionKey": connection_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_connection_details,
+ response_type="Connection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_connection_details,
+ response_type="Connection")
+
+ def update_data_asset(self, catalog_id, data_asset_key, update_data_asset_details, **kwargs):
+ """
+ Update a specific data asset identified by the given key.
+ Updates a specific data asset identified by the given key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param UpdateDataAssetDetails update_data_asset_details: (required)
+ The information to be updated in the data asset.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.DataAsset`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_data_asset got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_data_asset_details,
+ response_type="DataAsset")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_data_asset_details,
+ response_type="DataAsset")
+
+ def update_entity(self, catalog_id, data_asset_key, entity_key, update_entity_details, **kwargs):
+ """
+ Update a specific data entity.
+ Updates a specific data entity.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str entity_key: (required)
+ Unique entity key.
+
+ :param UpdateEntityDetails update_entity_details: (required)
+ The information to be updated in the data entity.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Entity`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/entities/{entityKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_entity got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "entityKey": entity_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_entity_details,
+ response_type="Entity")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_entity_details,
+ response_type="Entity")
+
+ def update_folder(self, catalog_id, data_asset_key, folder_key, update_folder_details, **kwargs):
+ """
+ Update a specific folder of a data asset.
+ Updates a specific folder of a data asset.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str folder_key: (required)
+ Unique folder key.
+
+ :param UpdateFolderDetails update_folder_details: (required)
+ The information to be updated in the folder.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Folder`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/folders/{folderKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_folder got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "folderKey": folder_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_folder_details,
+ response_type="Folder")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_folder_details,
+ response_type="Folder")
+
+ def update_glossary(self, catalog_id, glossary_key, update_glossary_details, **kwargs):
+ """
+ Update a specific glossary identified by the given key.
+ Updates a specific glossary identified by the given key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param UpdateGlossaryDetails update_glossary_details: (required)
+ The information to be updated in the glossary.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Glossary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_glossary got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_glossary_details,
+ response_type="Glossary")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_glossary_details,
+ response_type="Glossary")
+
+ def update_job(self, catalog_id, job_key, update_job_details, **kwargs):
+ """
+ Update a specific job identified by the given key.
+ Updates a specific job identified by the given key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_key: (required)
+ Unique job key.
+
+ :param UpdateJobDetails update_job_details: (required)
+ The information to be updated in the job.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Job`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobs/{jobKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobKey": job_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_job_details,
+ response_type="Job")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_job_details,
+ response_type="Job")
+
+ def update_job_definition(self, catalog_id, job_definition_key, update_job_definition_details, **kwargs):
+ """
+ Update a specific job definition identified by the given key.
+ Update a specific job definition identified by the given key.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str job_definition_key: (required)
+ Unique job definition key.
+
+ :param UpdateJobDefinitionDetails update_job_definition_details: (required)
+ The information to be updated in the job definition.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.JobDefinition`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/jobDefinitions/{jobDefinitionKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_job_definition got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "jobDefinitionKey": job_definition_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_job_definition_details,
+ response_type="JobDefinition")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_job_definition_details,
+ response_type="JobDefinition")
+
+ def update_term(self, catalog_id, glossary_key, term_key, update_term_details, **kwargs):
+ """
+ Update a specific glossary term.
+ Updates a specific glossary term.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param UpdateTermDetails update_term_details: (required)
+ The information to be updated in the term.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Term`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_term got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_term_details,
+ response_type="Term")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_term_details,
+ response_type="Term")
+
+ def update_term_relationship(self, catalog_id, glossary_key, term_key, term_relationship_key, update_term_relationship_details, **kwargs):
+ """
+ Update a specific glossary term relationship.
+ Updates a specific glossary term relationship.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str glossary_key: (required)
+ Unique glossary key.
+
+ :param str term_key: (required)
+ Unique glossary term key.
+
+ :param str term_relationship_key: (required)
+ Unique glossary term relationship key.
+
+ :param UpdateTermRelationshipDetails update_term_relationship_details: (required)
+ The information to be updated in the term relationship.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.TermRelationship`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/glossaries/{glossaryKey}/terms/{termKey}/termRelationships/{termRelationshipKey}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_term_relationship got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "glossaryKey": glossary_key,
+ "termKey": term_key,
+ "termRelationshipKey": term_relationship_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_term_relationship_details,
+ response_type="TermRelationship")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_term_relationship_details,
+ response_type="TermRelationship")
+
+ def upload_credentials(self, catalog_id, data_asset_key, connection_key, upload_credentials_details, **kwargs):
+ """
+ Upload connection credentials file and metadata for this connection for update.
+ Upload connection credentails and metadata for this connection.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param str connection_key: (required)
+ Unique connection key.
+
+ :param UploadCredentialsDetails upload_credentials_details: (required)
+ The information used to upload the credentials file and metadata for updating this connection.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.Connection`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/connections/{connectionKey}/actions/uploadCredentials"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "upload_credentials got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key,
+ "connectionKey": connection_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=upload_credentials_details,
+ response_type="Connection")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=upload_credentials_details,
+ response_type="Connection")
+
+ def users(self, catalog_id, **kwargs):
+ """
+ Returns active users in the system.
+ Returns active users in the system.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str sort_by: (optional)
+ The field to sort by. Only one sort order may be provided. Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. If no value is specified TIMECREATED is default.
+
+ Allowed values are: "TIMECREATED", "DISPLAYNAME"
+
+ :param str sort_order: (optional)
+ The sort order to use, either 'asc' or 'desc'.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param int limit: (optional)
+ The maximum number of items to return.
+
+ :param str page: (optional)
+ The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type str
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/actions/users"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "sort_by",
+ "sort_order",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "users got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="str")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="str")
+
+ def validate_connection(self, catalog_id, data_asset_key, validate_connection_details, **kwargs):
+ """
+ Validate connection from a request payload that contains connection metadata.
+ Validate connection by connecting to the data asset using credentials in metadata.
+
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param str data_asset_key: (required)
+ Unique data asset key.
+
+ :param ValidateConnectionDetails validate_connection_details: (required)
+ The information used to validate the connections.
+
+ :param str opc_request_id: (optional)
+ The client request ID for tracing.
+
+ :param str opc_retry_token: (optional)
+ 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
+ might be rejected.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_catalog.models.ValidateConnectionResult`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/catalogs/{catalogId}/dataAssets/{dataAssetKey}/actions/validateConnection"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "validate_connection got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "catalogId": catalog_id,
+ "dataAssetKey": data_asset_key
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=validate_connection_details,
+ response_type="ValidateConnectionResult")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=validate_connection_details,
+ response_type="ValidateConnectionResult")
diff --git a/src/oci/data_catalog/data_catalog_client_composite_operations.py b/src/oci/data_catalog/data_catalog_client_composite_operations.py
new file mode 100644
index 0000000000..10a8d56ea6
--- /dev/null
+++ b/src/oci/data_catalog/data_catalog_client_composite_operations.py
@@ -0,0 +1,148 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+import oci # noqa: F401
+from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
+
+
+class DataCatalogClientCompositeOperations(object):
+ """
+ This class provides a wrapper around :py:class:`~oci.data_catalog.DataCatalogClient` and offers convenience methods
+ for operations that would otherwise need to be chained together. For example, instead of performing an action
+ on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource
+ to enter a given state, you can call a single method in this class to accomplish the same functionality
+ """
+
+ def __init__(self, client, **kwargs):
+ """
+ Creates a new DataCatalogClientCompositeOperations object
+
+ :param DataCatalogClient client:
+ The service client which will be wrapped by this object
+ """
+ self.client = client
+
+ def change_catalog_compartment_and_wait_for_state(self, change_catalog_compartment_details, catalog_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_catalog.DataCatalogClient.change_catalog_compartment` and waits for the :py:class:`~oci.data_catalog.models.WorkRequest`
+ to enter the given state(s).
+
+ :param ChangeCatalogCompartmentDetails change_catalog_compartment_details: (required)
+ Details for the target compartment.
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_catalog.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_catalog.DataCatalogClient.change_catalog_compartment`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.change_catalog_compartment(change_catalog_compartment_details, catalog_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_work_request(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def create_catalog_and_wait_for_state(self, create_catalog_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_catalog.DataCatalogClient.create_catalog` and waits for the :py:class:`~oci.data_catalog.models.WorkRequest`
+ to enter the given state(s).
+
+ :param CreateCatalogDetails create_catalog_details: (required)
+ Details for the new data catalog.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_catalog.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_catalog.DataCatalogClient.create_catalog`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.create_catalog(create_catalog_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_work_request(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def delete_catalog_and_wait_for_state(self, catalog_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_catalog.DataCatalogClient.delete_catalog` and waits for the :py:class:`~oci.data_catalog.models.WorkRequest`
+ to enter the given state(s).
+
+ :param str catalog_id: (required)
+ Unique catalog identifier.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_catalog.models.WorkRequest.status`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_catalog.DataCatalogClient.delete_catalog`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = None
+ try:
+ operation_result = self.client.delete_catalog(catalog_id, **operation_kwargs)
+ except oci.exceptions.ServiceError as e:
+ if e.status == 404:
+ return WAIT_RESOURCE_NOT_FOUND
+ else:
+ raise e
+
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.headers['opc-work-request-id']
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_work_request(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
diff --git a/src/oci/data_catalog/models/__init__.py b/src/oci/data_catalog/models/__init__.py
new file mode 100644
index 0000000000..f7ce3ce1c4
--- /dev/null
+++ b/src/oci/data_catalog/models/__init__.py
@@ -0,0 +1,225 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from .attribute import Attribute
+from .attribute_collection import AttributeCollection
+from .attribute_summary import AttributeSummary
+from .attribute_tag import AttributeTag
+from .attribute_tag_collection import AttributeTagCollection
+from .attribute_tag_summary import AttributeTagSummary
+from .base_permissions_summary import BasePermissionsSummary
+from .base_tag import BaseTag
+from .base_tag_summary import BaseTagSummary
+from .catalog import Catalog
+from .catalog_permissions_summary import CatalogPermissionsSummary
+from .catalog_summary import CatalogSummary
+from .change_catalog_compartment_details import ChangeCatalogCompartmentDetails
+from .connection import Connection
+from .connection_alias_summary import ConnectionAliasSummary
+from .connection_collection import ConnectionCollection
+from .connection_summary import ConnectionSummary
+from .create_attribute_details import CreateAttributeDetails
+from .create_catalog_details import CreateCatalogDetails
+from .create_connection_details import CreateConnectionDetails
+from .create_data_asset_details import CreateDataAssetDetails
+from .create_entity_details import CreateEntityDetails
+from .create_folder_details import CreateFolderDetails
+from .create_glossary_details import CreateGlossaryDetails
+from .create_job_definition_details import CreateJobDefinitionDetails
+from .create_job_details import CreateJobDetails
+from .create_job_execution_details import CreateJobExecutionDetails
+from .create_tag_details import CreateTagDetails
+from .create_term_details import CreateTermDetails
+from .create_term_relationship_details import CreateTermRelationshipDetails
+from .data_asset import DataAsset
+from .data_asset_collection import DataAssetCollection
+from .data_asset_permissions_summary import DataAssetPermissionsSummary
+from .data_asset_summary import DataAssetSummary
+from .data_asset_tag import DataAssetTag
+from .data_asset_tag_collection import DataAssetTagCollection
+from .data_asset_tag_summary import DataAssetTagSummary
+from .entity import Entity
+from .entity_collection import EntityCollection
+from .entity_summary import EntitySummary
+from .entity_tag import EntityTag
+from .entity_tag_collection import EntityTagCollection
+from .entity_tag_summary import EntityTagSummary
+from .folder import Folder
+from .folder_collection import FolderCollection
+from .folder_summary import FolderSummary
+from .folder_tag import FolderTag
+from .folder_tag_collection import FolderTagCollection
+from .folder_tag_summary import FolderTagSummary
+from .glossary import Glossary
+from .glossary_collection import GlossaryCollection
+from .glossary_permissions_summary import GlossaryPermissionsSummary
+from .glossary_summary import GlossarySummary
+from .glossary_tree_element import GlossaryTreeElement
+from .import_connection_details import ImportConnectionDetails
+from .import_glossary_details import ImportGlossaryDetails
+from .job import Job
+from .job_collection import JobCollection
+from .job_definition import JobDefinition
+from .job_definition_collection import JobDefinitionCollection
+from .job_definition_permissions_summary import JobDefinitionPermissionsSummary
+from .job_definition_scope import JobDefinitionScope
+from .job_definition_summary import JobDefinitionSummary
+from .job_execution import JobExecution
+from .job_execution_collection import JobExecutionCollection
+from .job_execution_summary import JobExecutionSummary
+from .job_log import JobLog
+from .job_log_collection import JobLogCollection
+from .job_log_summary import JobLogSummary
+from .job_metric import JobMetric
+from .job_metric_collection import JobMetricCollection
+from .job_metric_summary import JobMetricSummary
+from .job_summary import JobSummary
+from .parse_connection_details import ParseConnectionDetails
+from .property_definition import PropertyDefinition
+from .search_criteria import SearchCriteria
+from .search_result import SearchResult
+from .search_result_collection import SearchResultCollection
+from .search_tag_summary import SearchTagSummary
+from .search_term_summary import SearchTermSummary
+from .term import Term
+from .term_associated_object import TermAssociatedObject
+from .term_collection import TermCollection
+from .term_relationship import TermRelationship
+from .term_relationship_collection import TermRelationshipCollection
+from .term_relationship_summary import TermRelationshipSummary
+from .term_summary import TermSummary
+from .type import Type
+from .type_collection import TypeCollection
+from .type_summary import TypeSummary
+from .update_attribute_details import UpdateAttributeDetails
+from .update_catalog_details import UpdateCatalogDetails
+from .update_connection_details import UpdateConnectionDetails
+from .update_data_asset_details import UpdateDataAssetDetails
+from .update_entity_details import UpdateEntityDetails
+from .update_folder_details import UpdateFolderDetails
+from .update_glossary_details import UpdateGlossaryDetails
+from .update_job_definition_details import UpdateJobDefinitionDetails
+from .update_job_details import UpdateJobDetails
+from .update_term_details import UpdateTermDetails
+from .update_term_relationship_details import UpdateTermRelationshipDetails
+from .upload_credentials_details import UploadCredentialsDetails
+from .validate_connection_details import ValidateConnectionDetails
+from .validate_connection_result import ValidateConnectionResult
+from .work_request import WorkRequest
+from .work_request_error import WorkRequestError
+from .work_request_log import WorkRequestLog
+from .work_request_resource import WorkRequestResource
+
+# Maps type names to classes for data_catalog services.
+data_catalog_type_mapping = {
+ "Attribute": Attribute,
+ "AttributeCollection": AttributeCollection,
+ "AttributeSummary": AttributeSummary,
+ "AttributeTag": AttributeTag,
+ "AttributeTagCollection": AttributeTagCollection,
+ "AttributeTagSummary": AttributeTagSummary,
+ "BasePermissionsSummary": BasePermissionsSummary,
+ "BaseTag": BaseTag,
+ "BaseTagSummary": BaseTagSummary,
+ "Catalog": Catalog,
+ "CatalogPermissionsSummary": CatalogPermissionsSummary,
+ "CatalogSummary": CatalogSummary,
+ "ChangeCatalogCompartmentDetails": ChangeCatalogCompartmentDetails,
+ "Connection": Connection,
+ "ConnectionAliasSummary": ConnectionAliasSummary,
+ "ConnectionCollection": ConnectionCollection,
+ "ConnectionSummary": ConnectionSummary,
+ "CreateAttributeDetails": CreateAttributeDetails,
+ "CreateCatalogDetails": CreateCatalogDetails,
+ "CreateConnectionDetails": CreateConnectionDetails,
+ "CreateDataAssetDetails": CreateDataAssetDetails,
+ "CreateEntityDetails": CreateEntityDetails,
+ "CreateFolderDetails": CreateFolderDetails,
+ "CreateGlossaryDetails": CreateGlossaryDetails,
+ "CreateJobDefinitionDetails": CreateJobDefinitionDetails,
+ "CreateJobDetails": CreateJobDetails,
+ "CreateJobExecutionDetails": CreateJobExecutionDetails,
+ "CreateTagDetails": CreateTagDetails,
+ "CreateTermDetails": CreateTermDetails,
+ "CreateTermRelationshipDetails": CreateTermRelationshipDetails,
+ "DataAsset": DataAsset,
+ "DataAssetCollection": DataAssetCollection,
+ "DataAssetPermissionsSummary": DataAssetPermissionsSummary,
+ "DataAssetSummary": DataAssetSummary,
+ "DataAssetTag": DataAssetTag,
+ "DataAssetTagCollection": DataAssetTagCollection,
+ "DataAssetTagSummary": DataAssetTagSummary,
+ "Entity": Entity,
+ "EntityCollection": EntityCollection,
+ "EntitySummary": EntitySummary,
+ "EntityTag": EntityTag,
+ "EntityTagCollection": EntityTagCollection,
+ "EntityTagSummary": EntityTagSummary,
+ "Folder": Folder,
+ "FolderCollection": FolderCollection,
+ "FolderSummary": FolderSummary,
+ "FolderTag": FolderTag,
+ "FolderTagCollection": FolderTagCollection,
+ "FolderTagSummary": FolderTagSummary,
+ "Glossary": Glossary,
+ "GlossaryCollection": GlossaryCollection,
+ "GlossaryPermissionsSummary": GlossaryPermissionsSummary,
+ "GlossarySummary": GlossarySummary,
+ "GlossaryTreeElement": GlossaryTreeElement,
+ "ImportConnectionDetails": ImportConnectionDetails,
+ "ImportGlossaryDetails": ImportGlossaryDetails,
+ "Job": Job,
+ "JobCollection": JobCollection,
+ "JobDefinition": JobDefinition,
+ "JobDefinitionCollection": JobDefinitionCollection,
+ "JobDefinitionPermissionsSummary": JobDefinitionPermissionsSummary,
+ "JobDefinitionScope": JobDefinitionScope,
+ "JobDefinitionSummary": JobDefinitionSummary,
+ "JobExecution": JobExecution,
+ "JobExecutionCollection": JobExecutionCollection,
+ "JobExecutionSummary": JobExecutionSummary,
+ "JobLog": JobLog,
+ "JobLogCollection": JobLogCollection,
+ "JobLogSummary": JobLogSummary,
+ "JobMetric": JobMetric,
+ "JobMetricCollection": JobMetricCollection,
+ "JobMetricSummary": JobMetricSummary,
+ "JobSummary": JobSummary,
+ "ParseConnectionDetails": ParseConnectionDetails,
+ "PropertyDefinition": PropertyDefinition,
+ "SearchCriteria": SearchCriteria,
+ "SearchResult": SearchResult,
+ "SearchResultCollection": SearchResultCollection,
+ "SearchTagSummary": SearchTagSummary,
+ "SearchTermSummary": SearchTermSummary,
+ "Term": Term,
+ "TermAssociatedObject": TermAssociatedObject,
+ "TermCollection": TermCollection,
+ "TermRelationship": TermRelationship,
+ "TermRelationshipCollection": TermRelationshipCollection,
+ "TermRelationshipSummary": TermRelationshipSummary,
+ "TermSummary": TermSummary,
+ "Type": Type,
+ "TypeCollection": TypeCollection,
+ "TypeSummary": TypeSummary,
+ "UpdateAttributeDetails": UpdateAttributeDetails,
+ "UpdateCatalogDetails": UpdateCatalogDetails,
+ "UpdateConnectionDetails": UpdateConnectionDetails,
+ "UpdateDataAssetDetails": UpdateDataAssetDetails,
+ "UpdateEntityDetails": UpdateEntityDetails,
+ "UpdateFolderDetails": UpdateFolderDetails,
+ "UpdateGlossaryDetails": UpdateGlossaryDetails,
+ "UpdateJobDefinitionDetails": UpdateJobDefinitionDetails,
+ "UpdateJobDetails": UpdateJobDetails,
+ "UpdateTermDetails": UpdateTermDetails,
+ "UpdateTermRelationshipDetails": UpdateTermRelationshipDetails,
+ "UploadCredentialsDetails": UploadCredentialsDetails,
+ "ValidateConnectionDetails": ValidateConnectionDetails,
+ "ValidateConnectionResult": ValidateConnectionResult,
+ "WorkRequest": WorkRequest,
+ "WorkRequestError": WorkRequestError,
+ "WorkRequestLog": WorkRequestLog,
+ "WorkRequestResource": WorkRequestResource
+}
diff --git a/src/oci/data_catalog/models/attribute.py b/src/oci/data_catalog/models/attribute.py
new file mode 100644
index 0000000000..669e4e5269
--- /dev/null
+++ b/src/oci/data_catalog/models/attribute.py
@@ -0,0 +1,685 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Attribute(object):
+ """
+ Details of an entity attribute. An attribute of a data entity describing an item of data,
+ with a name and data type. Synonymous with 'column' in a database.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Attribute object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Attribute.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Attribute.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Attribute.
+ :type description: str
+
+ :param entity_key:
+ The value to assign to the entity_key property of this Attribute.
+ :type entity_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Attribute.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Attribute.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Attribute.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Attribute.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Attribute.
+ :type updated_by_id: str
+
+ :param external_data_type:
+ The value to assign to the external_data_type property of this Attribute.
+ :type external_data_type: str
+
+ :param external_key:
+ The value to assign to the external_key property of this Attribute.
+ :type external_key: str
+
+ :param is_incremental_data:
+ The value to assign to the is_incremental_data property of this Attribute.
+ :type is_incremental_data: bool
+
+ :param is_nullable:
+ The value to assign to the is_nullable property of this Attribute.
+ :type is_nullable: bool
+
+ :param length:
+ The value to assign to the length property of this Attribute.
+ :type length: int
+
+ :param position:
+ The value to assign to the position property of this Attribute.
+ :type position: int
+
+ :param precision:
+ The value to assign to the precision property of this Attribute.
+ :type precision: int
+
+ :param scale:
+ The value to assign to the scale property of this Attribute.
+ :type scale: int
+
+ :param time_external:
+ The value to assign to the time_external property of this Attribute.
+ :type time_external: datetime
+
+ :param uri:
+ The value to assign to the uri property of this Attribute.
+ :type uri: str
+
+ :param properties:
+ The value to assign to the properties property of this Attribute.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'entity_key': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'external_data_type': 'str',
+ 'external_key': 'str',
+ 'is_incremental_data': 'bool',
+ 'is_nullable': 'bool',
+ 'length': 'int',
+ 'position': 'int',
+ 'precision': 'int',
+ 'scale': 'int',
+ 'time_external': 'datetime',
+ 'uri': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'entity_key': 'entityKey',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'external_data_type': 'externalDataType',
+ 'external_key': 'externalKey',
+ 'is_incremental_data': 'isIncrementalData',
+ 'is_nullable': 'isNullable',
+ 'length': 'length',
+ 'position': 'position',
+ 'precision': 'precision',
+ 'scale': 'scale',
+ 'time_external': 'timeExternal',
+ 'uri': 'uri',
+ 'properties': 'properties'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._entity_key = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._external_data_type = None
+ self._external_key = None
+ self._is_incremental_data = None
+ self._is_nullable = None
+ self._length = None
+ self._position = None
+ self._precision = None
+ self._scale = None
+ self._time_external = None
+ self._uri = None
+ self._properties = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Attribute.
+ Unique attribute key that is immutable.
+
+
+ :return: The key of this Attribute.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Attribute.
+ Unique attribute key that is immutable.
+
+
+ :param key: The key of this Attribute.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Attribute.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Attribute.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Attribute.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Attribute.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Attribute.
+ Detailed description of the attribute.
+
+
+ :return: The description of this Attribute.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Attribute.
+ Detailed description of the attribute.
+
+
+ :param description: The description of this Attribute.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def entity_key(self):
+ """
+ Gets the entity_key of this Attribute.
+ The unique key of the parent entity.
+
+
+ :return: The entity_key of this Attribute.
+ :rtype: str
+ """
+ return self._entity_key
+
+ @entity_key.setter
+ def entity_key(self, entity_key):
+ """
+ Sets the entity_key of this Attribute.
+ The unique key of the parent entity.
+
+
+ :param entity_key: The entity_key of this Attribute.
+ :type: str
+ """
+ self._entity_key = entity_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Attribute.
+ State of the attribute.
+
+
+ :return: The lifecycle_state of this Attribute.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Attribute.
+ State of the attribute.
+
+
+ :param lifecycle_state: The lifecycle_state of this Attribute.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Attribute.
+ The date and time the attribute was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Attribute.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Attribute.
+ The date and time the attribute was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Attribute.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Attribute.
+ The last time that any change was made to the attribute. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Attribute.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Attribute.
+ The last time that any change was made to the attribute. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Attribute.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Attribute.
+ OCID of the user who created this attribute in the data catalog.
+
+
+ :return: The created_by_id of this Attribute.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Attribute.
+ OCID of the user who created this attribute in the data catalog.
+
+
+ :param created_by_id: The created_by_id of this Attribute.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Attribute.
+ OCID of the user who modified this attribute in the data catalog.
+
+
+ :return: The updated_by_id of this Attribute.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Attribute.
+ OCID of the user who modified this attribute in the data catalog.
+
+
+ :param updated_by_id: The updated_by_id of this Attribute.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def external_data_type(self):
+ """
+ Gets the external_data_type of this Attribute.
+ Data type of the attribute as defined in the external system. Type mapping across systems can be achieved
+ through term associations across domains in the ontology. The attribute can also be tagged to the datatype in
+ the domain ontology to resolve any ambiguity arising from type name similarity that can occur with user
+ defined types.
+
+
+ :return: The external_data_type of this Attribute.
+ :rtype: str
+ """
+ return self._external_data_type
+
+ @external_data_type.setter
+ def external_data_type(self, external_data_type):
+ """
+ Sets the external_data_type of this Attribute.
+ Data type of the attribute as defined in the external system. Type mapping across systems can be achieved
+ through term associations across domains in the ontology. The attribute can also be tagged to the datatype in
+ the domain ontology to resolve any ambiguity arising from type name similarity that can occur with user
+ defined types.
+
+
+ :param external_data_type: The external_data_type of this Attribute.
+ :type: str
+ """
+ self._external_data_type = external_data_type
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this Attribute.
+ Unique external key of this attribute in the external source system.
+
+
+ :return: The external_key of this Attribute.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this Attribute.
+ Unique external key of this attribute in the external source system.
+
+
+ :param external_key: The external_key of this Attribute.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def is_incremental_data(self):
+ """
+ Gets the is_incremental_data of this Attribute.
+ Property that identifies if this attribute can be used as a watermark to extract incremental data.
+
+
+ :return: The is_incremental_data of this Attribute.
+ :rtype: bool
+ """
+ return self._is_incremental_data
+
+ @is_incremental_data.setter
+ def is_incremental_data(self, is_incremental_data):
+ """
+ Sets the is_incremental_data of this Attribute.
+ Property that identifies if this attribute can be used as a watermark to extract incremental data.
+
+
+ :param is_incremental_data: The is_incremental_data of this Attribute.
+ :type: bool
+ """
+ self._is_incremental_data = is_incremental_data
+
+ @property
+ def is_nullable(self):
+ """
+ Gets the is_nullable of this Attribute.
+ Property that identifies if this attribute can be assigned null values.
+
+
+ :return: The is_nullable of this Attribute.
+ :rtype: bool
+ """
+ return self._is_nullable
+
+ @is_nullable.setter
+ def is_nullable(self, is_nullable):
+ """
+ Sets the is_nullable of this Attribute.
+ Property that identifies if this attribute can be assigned null values.
+
+
+ :param is_nullable: The is_nullable of this Attribute.
+ :type: bool
+ """
+ self._is_nullable = is_nullable
+
+ @property
+ def length(self):
+ """
+ Gets the length of this Attribute.
+ Max allowed length of the attribute value.
+
+
+ :return: The length of this Attribute.
+ :rtype: int
+ """
+ return self._length
+
+ @length.setter
+ def length(self, length):
+ """
+ Sets the length of this Attribute.
+ Max allowed length of the attribute value.
+
+
+ :param length: The length of this Attribute.
+ :type: int
+ """
+ self._length = length
+
+ @property
+ def position(self):
+ """
+ Gets the position of this Attribute.
+ Position of the attribute in the record definition.
+
+
+ :return: The position of this Attribute.
+ :rtype: int
+ """
+ return self._position
+
+ @position.setter
+ def position(self, position):
+ """
+ Sets the position of this Attribute.
+ Position of the attribute in the record definition.
+
+
+ :param position: The position of this Attribute.
+ :type: int
+ """
+ self._position = position
+
+ @property
+ def precision(self):
+ """
+ Gets the precision of this Attribute.
+ Precision of the attribute value usually applies to float data type.
+
+
+ :return: The precision of this Attribute.
+ :rtype: int
+ """
+ return self._precision
+
+ @precision.setter
+ def precision(self, precision):
+ """
+ Sets the precision of this Attribute.
+ Precision of the attribute value usually applies to float data type.
+
+
+ :param precision: The precision of this Attribute.
+ :type: int
+ """
+ self._precision = precision
+
+ @property
+ def scale(self):
+ """
+ Gets the scale of this Attribute.
+ Scale of the attribute value usually applies to float data type.
+
+
+ :return: The scale of this Attribute.
+ :rtype: int
+ """
+ return self._scale
+
+ @scale.setter
+ def scale(self, scale):
+ """
+ Sets the scale of this Attribute.
+ Scale of the attribute value usually applies to float data type.
+
+
+ :param scale: The scale of this Attribute.
+ :type: int
+ """
+ self._scale = scale
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this Attribute.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this Attribute.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this Attribute.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this Attribute.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Attribute.
+ URI to the attribute instance in the API.
+
+
+ :return: The uri of this Attribute.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Attribute.
+ URI to the attribute instance in the API.
+
+
+ :param uri: The uri of this Attribute.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this Attribute.
+ A map of maps that contains the properties which are specific to the attribute type. Each attribute type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ attributes have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this Attribute.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this Attribute.
+ A map of maps that contains the properties which are specific to the attribute type. Each attribute type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ attributes have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this Attribute.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/attribute_collection.py b/src/oci/data_catalog/models/attribute_collection.py
new file mode 100644
index 0000000000..9fdb2fb301
--- /dev/null
+++ b/src/oci/data_catalog/models/attribute_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AttributeCollection(object):
+ """
+ Results of an attributes listing. Attributes describe an item of data with name and datatype.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AttributeCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this AttributeCollection.
+ :type items: list[AttributeSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[AttributeSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this AttributeCollection.
+ Collection of attributes.
+
+
+ :return: The items of this AttributeCollection.
+ :rtype: list[AttributeSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this AttributeCollection.
+ Collection of attributes.
+
+
+ :param items: The items of this AttributeCollection.
+ :type: list[AttributeSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/attribute_summary.py b/src/oci/data_catalog/models/attribute_summary.py
new file mode 100644
index 0000000000..b1c3722229
--- /dev/null
+++ b/src/oci/data_catalog/models/attribute_summary.py
@@ -0,0 +1,387 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AttributeSummary(object):
+ """
+ Summary of an entity attribute.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AttributeSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this AttributeSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this AttributeSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this AttributeSummary.
+ :type description: str
+
+ :param entity_key:
+ The value to assign to the entity_key property of this AttributeSummary.
+ :type entity_key: str
+
+ :param external_key:
+ The value to assign to the external_key property of this AttributeSummary.
+ :type external_key: str
+
+ :param length:
+ The value to assign to the length property of this AttributeSummary.
+ :type length: int
+
+ :param is_nullable:
+ The value to assign to the is_nullable property of this AttributeSummary.
+ :type is_nullable: bool
+
+ :param uri:
+ The value to assign to the uri property of this AttributeSummary.
+ :type uri: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this AttributeSummary.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this AttributeSummary.
+ :type time_created: datetime
+
+ :param external_data_type:
+ The value to assign to the external_data_type property of this AttributeSummary.
+ :type external_data_type: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'entity_key': 'str',
+ 'external_key': 'str',
+ 'length': 'int',
+ 'is_nullable': 'bool',
+ 'uri': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'external_data_type': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'entity_key': 'entityKey',
+ 'external_key': 'externalKey',
+ 'length': 'length',
+ 'is_nullable': 'isNullable',
+ 'uri': 'uri',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'external_data_type': 'externalDataType'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._entity_key = None
+ self._external_key = None
+ self._length = None
+ self._is_nullable = None
+ self._uri = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._external_data_type = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this AttributeSummary.
+ Unique attribute key that is immutable.
+
+
+ :return: The key of this AttributeSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this AttributeSummary.
+ Unique attribute key that is immutable.
+
+
+ :param key: The key of this AttributeSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this AttributeSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this AttributeSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this AttributeSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this AttributeSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this AttributeSummary.
+ Detailed description of the attribute.
+
+
+ :return: The description of this AttributeSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this AttributeSummary.
+ Detailed description of the attribute.
+
+
+ :param description: The description of this AttributeSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def entity_key(self):
+ """
+ Gets the entity_key of this AttributeSummary.
+ The unique key of the parent entity.
+
+
+ :return: The entity_key of this AttributeSummary.
+ :rtype: str
+ """
+ return self._entity_key
+
+ @entity_key.setter
+ def entity_key(self, entity_key):
+ """
+ Sets the entity_key of this AttributeSummary.
+ The unique key of the parent entity.
+
+
+ :param entity_key: The entity_key of this AttributeSummary.
+ :type: str
+ """
+ self._entity_key = entity_key
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this AttributeSummary.
+ Unique external key of this attribute in the external source system.
+
+
+ :return: The external_key of this AttributeSummary.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this AttributeSummary.
+ Unique external key of this attribute in the external source system.
+
+
+ :param external_key: The external_key of this AttributeSummary.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def length(self):
+ """
+ Gets the length of this AttributeSummary.
+ Max allowed length of the attribute value.
+
+
+ :return: The length of this AttributeSummary.
+ :rtype: int
+ """
+ return self._length
+
+ @length.setter
+ def length(self, length):
+ """
+ Sets the length of this AttributeSummary.
+ Max allowed length of the attribute value.
+
+
+ :param length: The length of this AttributeSummary.
+ :type: int
+ """
+ self._length = length
+
+ @property
+ def is_nullable(self):
+ """
+ Gets the is_nullable of this AttributeSummary.
+ Property that identifies if this attribute can be assigned null values.
+
+
+ :return: The is_nullable of this AttributeSummary.
+ :rtype: bool
+ """
+ return self._is_nullable
+
+ @is_nullable.setter
+ def is_nullable(self, is_nullable):
+ """
+ Sets the is_nullable of this AttributeSummary.
+ Property that identifies if this attribute can be assigned null values.
+
+
+ :param is_nullable: The is_nullable of this AttributeSummary.
+ :type: bool
+ """
+ self._is_nullable = is_nullable
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this AttributeSummary.
+ URI to the attribute instance in the API.
+
+
+ :return: The uri of this AttributeSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this AttributeSummary.
+ URI to the attribute instance in the API.
+
+
+ :param uri: The uri of this AttributeSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this AttributeSummary.
+ State of the attribute.
+
+
+ :return: The lifecycle_state of this AttributeSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this AttributeSummary.
+ State of the attribute.
+
+
+ :param lifecycle_state: The lifecycle_state of this AttributeSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this AttributeSummary.
+ The date and time the attribute was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this AttributeSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this AttributeSummary.
+ The date and time the attribute was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this AttributeSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def external_data_type(self):
+ """
+ Gets the external_data_type of this AttributeSummary.
+ Data type of the attribute as defined in the external source system.
+
+
+ :return: The external_data_type of this AttributeSummary.
+ :rtype: str
+ """
+ return self._external_data_type
+
+ @external_data_type.setter
+ def external_data_type(self, external_data_type):
+ """
+ Sets the external_data_type of this AttributeSummary.
+ Data type of the attribute as defined in the external source system.
+
+
+ :param external_data_type: The external_data_type of this AttributeSummary.
+ :type: str
+ """
+ self._external_data_type = external_data_type
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/attribute_tag.py b/src/oci/data_catalog/models/attribute_tag.py
new file mode 100644
index 0000000000..51363f5d7c
--- /dev/null
+++ b/src/oci/data_catalog/models/attribute_tag.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AttributeTag(object):
+ """
+ Represents an association of an entity attribute to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AttributeTag object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param attribute_key:
+ The value to assign to the attribute_key property of this AttributeTag.
+ :type attribute_key: str
+
+ :param key:
+ The value to assign to the key property of this AttributeTag.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this AttributeTag.
+ :type name: str
+
+ :param term_key:
+ The value to assign to the term_key property of this AttributeTag.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this AttributeTag.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this AttributeTag.
+ :type term_description: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this AttributeTag.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this AttributeTag.
+ :type time_created: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this AttributeTag.
+ :type created_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this AttributeTag.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'attribute_key': 'str',
+ 'key': 'str',
+ 'name': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'created_by_id': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'attribute_key': 'attributeKey',
+ 'key': 'key',
+ 'name': 'name',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'created_by_id': 'createdById',
+ 'uri': 'uri'
+ }
+
+ self._attribute_key = None
+ self._key = None
+ self._name = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._created_by_id = None
+ self._uri = None
+
+ @property
+ def attribute_key(self):
+ """
+ Gets the attribute_key of this AttributeTag.
+ The unique key of the parent attribute.
+
+
+ :return: The attribute_key of this AttributeTag.
+ :rtype: str
+ """
+ return self._attribute_key
+
+ @attribute_key.setter
+ def attribute_key(self, attribute_key):
+ """
+ Sets the attribute_key of this AttributeTag.
+ The unique key of the parent attribute.
+
+
+ :param attribute_key: The attribute_key of this AttributeTag.
+ :type: str
+ """
+ self._attribute_key = attribute_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this AttributeTag.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this AttributeTag.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this AttributeTag.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this AttributeTag.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this AttributeTag.
+ Name of the tag which matches the term name.
+
+
+ :return: The name of this AttributeTag.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this AttributeTag.
+ Name of the tag which matches the term name.
+
+
+ :param name: The name of this AttributeTag.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this AttributeTag.
+ Unique key of the related term.
+
+
+ :return: The term_key of this AttributeTag.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this AttributeTag.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this AttributeTag.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this AttributeTag.
+ Path of the related term.
+
+
+ :return: The term_path of this AttributeTag.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this AttributeTag.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this AttributeTag.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this AttributeTag.
+ Description of the related term.
+
+
+ :return: The term_description of this AttributeTag.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this AttributeTag.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this AttributeTag.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this AttributeTag.
+ The current state of the tag.
+
+
+ :return: The lifecycle_state of this AttributeTag.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this AttributeTag.
+ The current state of the tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this AttributeTag.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this AttributeTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this AttributeTag.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this AttributeTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this AttributeTag.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this AttributeTag.
+ OCID of the user who created the tag.
+
+
+ :return: The created_by_id of this AttributeTag.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this AttributeTag.
+ OCID of the user who created the tag.
+
+
+ :param created_by_id: The created_by_id of this AttributeTag.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this AttributeTag.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this AttributeTag.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this AttributeTag.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this AttributeTag.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/attribute_tag_collection.py b/src/oci/data_catalog/models/attribute_tag_collection.py
new file mode 100644
index 0000000000..aa8d070946
--- /dev/null
+++ b/src/oci/data_catalog/models/attribute_tag_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AttributeTagCollection(object):
+ """
+ Results of an attribute tags listing. Attribnute tags allow association of business terms with attributes.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AttributeTagCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this AttributeTagCollection.
+ :type items: list[AttributeTagSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[AttributeTagSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this AttributeTagCollection.
+ Collection of attribute tags.
+
+
+ :return: The items of this AttributeTagCollection.
+ :rtype: list[AttributeTagSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this AttributeTagCollection.
+ Collection of attribute tags.
+
+
+ :param items: The items of this AttributeTagCollection.
+ :type: list[AttributeTagSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/attribute_tag_summary.py b/src/oci/data_catalog/models/attribute_tag_summary.py
new file mode 100644
index 0000000000..c28d1b13af
--- /dev/null
+++ b/src/oci/data_catalog/models/attribute_tag_summary.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class AttributeTagSummary(object):
+ """
+ Summary of an entity attribute tag.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new AttributeTagSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param attribute_key:
+ The value to assign to the attribute_key property of this AttributeTagSummary.
+ :type attribute_key: str
+
+ :param key:
+ The value to assign to the key property of this AttributeTagSummary.
+ :type key: str
+
+ :param time_created:
+ The value to assign to the time_created property of this AttributeTagSummary.
+ :type time_created: datetime
+
+ :param name:
+ The value to assign to the name property of this AttributeTagSummary.
+ :type name: str
+
+ :param uri:
+ The value to assign to the uri property of this AttributeTagSummary.
+ :type uri: str
+
+ :param term_key:
+ The value to assign to the term_key property of this AttributeTagSummary.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this AttributeTagSummary.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this AttributeTagSummary.
+ :type term_description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this AttributeTagSummary.
+ :type glossary_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this AttributeTagSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'attribute_key': 'str',
+ 'key': 'str',
+ 'time_created': 'datetime',
+ 'name': 'str',
+ 'uri': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'glossary_key': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'attribute_key': 'attributeKey',
+ 'key': 'key',
+ 'time_created': 'timeCreated',
+ 'name': 'name',
+ 'uri': 'uri',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'glossary_key': 'glossaryKey',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._attribute_key = None
+ self._key = None
+ self._time_created = None
+ self._name = None
+ self._uri = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._glossary_key = None
+ self._lifecycle_state = None
+
+ @property
+ def attribute_key(self):
+ """
+ Gets the attribute_key of this AttributeTagSummary.
+ The unique key of the parent attribute.
+
+
+ :return: The attribute_key of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._attribute_key
+
+ @attribute_key.setter
+ def attribute_key(self, attribute_key):
+ """
+ Sets the attribute_key of this AttributeTagSummary.
+ The unique key of the parent attribute.
+
+
+ :param attribute_key: The attribute_key of this AttributeTagSummary.
+ :type: str
+ """
+ self._attribute_key = attribute_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this AttributeTagSummary.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this AttributeTagSummary.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this AttributeTagSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this AttributeTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this AttributeTagSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this AttributeTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this AttributeTagSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def name(self):
+ """
+ Gets the name of this AttributeTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :return: The name of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this AttributeTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :param name: The name of this AttributeTagSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this AttributeTagSummary.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this AttributeTagSummary.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this AttributeTagSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this AttributeTagSummary.
+ Unique key of the related term.
+
+
+ :return: The term_key of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this AttributeTagSummary.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this AttributeTagSummary.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this AttributeTagSummary.
+ Path of the related term.
+
+
+ :return: The term_path of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this AttributeTagSummary.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this AttributeTagSummary.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this AttributeTagSummary.
+ Description of the related term.
+
+
+ :return: The term_description of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this AttributeTagSummary.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this AttributeTagSummary.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this AttributeTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :return: The glossary_key of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this AttributeTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :param glossary_key: The glossary_key of this AttributeTagSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this AttributeTagSummary.
+ State of the Tag.
+
+
+ :return: The lifecycle_state of this AttributeTagSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this AttributeTagSummary.
+ State of the Tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this AttributeTagSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/base_permissions_summary.py b/src/oci/data_catalog/models/base_permissions_summary.py
new file mode 100644
index 0000000000..dc55c6b6c3
--- /dev/null
+++ b/src/oci/data_catalog/models/base_permissions_summary.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class BasePermissionsSummary(object):
+ """
+ Permissions object sent as part of the response.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new BasePermissionsSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param user_permissions:
+ The value to assign to the user_permissions property of this BasePermissionsSummary.
+ :type user_permissions: list[str]
+
+ """
+ self.swagger_types = {
+ 'user_permissions': 'list[str]'
+ }
+
+ self.attribute_map = {
+ 'user_permissions': 'userPermissions'
+ }
+
+ self._user_permissions = None
+
+ @property
+ def user_permissions(self):
+ """
+ Gets the user_permissions of this BasePermissionsSummary.
+ An array of permissions.
+
+
+ :return: The user_permissions of this BasePermissionsSummary.
+ :rtype: list[str]
+ """
+ return self._user_permissions
+
+ @user_permissions.setter
+ def user_permissions(self, user_permissions):
+ """
+ Sets the user_permissions of this BasePermissionsSummary.
+ An array of permissions.
+
+
+ :param user_permissions: The user_permissions of this BasePermissionsSummary.
+ :type: list[str]
+ """
+ self._user_permissions = user_permissions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/base_tag.py b/src/oci/data_catalog/models/base_tag.py
new file mode 100644
index 0000000000..6453c0d1e2
--- /dev/null
+++ b/src/oci/data_catalog/models/base_tag.py
@@ -0,0 +1,323 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class BaseTag(object):
+ """
+ Represents the association of an object to a term. Tags are immutable.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new BaseTag object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this BaseTag.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this BaseTag.
+ :type name: str
+
+ :param term_key:
+ The value to assign to the term_key property of this BaseTag.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this BaseTag.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this BaseTag.
+ :type term_description: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this BaseTag.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this BaseTag.
+ :type time_created: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this BaseTag.
+ :type created_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this BaseTag.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'name': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'created_by_id': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'name': 'name',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'created_by_id': 'createdById',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._name = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._created_by_id = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this BaseTag.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this BaseTag.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this BaseTag.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this BaseTag.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this BaseTag.
+ Name of the tag which matches the term name.
+
+
+ :return: The name of this BaseTag.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this BaseTag.
+ Name of the tag which matches the term name.
+
+
+ :param name: The name of this BaseTag.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this BaseTag.
+ Unique key of the related term.
+
+
+ :return: The term_key of this BaseTag.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this BaseTag.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this BaseTag.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this BaseTag.
+ Path of the related term.
+
+
+ :return: The term_path of this BaseTag.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this BaseTag.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this BaseTag.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this BaseTag.
+ Description of the related term.
+
+
+ :return: The term_description of this BaseTag.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this BaseTag.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this BaseTag.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this BaseTag.
+ The current state of the tag.
+
+
+ :return: The lifecycle_state of this BaseTag.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this BaseTag.
+ The current state of the tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this BaseTag.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this BaseTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this BaseTag.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this BaseTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this BaseTag.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this BaseTag.
+ OCID of the user who created the tag.
+
+
+ :return: The created_by_id of this BaseTag.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this BaseTag.
+ OCID of the user who created the tag.
+
+
+ :param created_by_id: The created_by_id of this BaseTag.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this BaseTag.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this BaseTag.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this BaseTag.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this BaseTag.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/base_tag_summary.py b/src/oci/data_catalog/models/base_tag_summary.py
new file mode 100644
index 0000000000..bc34b9c41a
--- /dev/null
+++ b/src/oci/data_catalog/models/base_tag_summary.py
@@ -0,0 +1,323 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class BaseTagSummary(object):
+ """
+ Represents the association of an object to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new BaseTagSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this BaseTagSummary.
+ :type key: str
+
+ :param time_created:
+ The value to assign to the time_created property of this BaseTagSummary.
+ :type time_created: datetime
+
+ :param name:
+ The value to assign to the name property of this BaseTagSummary.
+ :type name: str
+
+ :param uri:
+ The value to assign to the uri property of this BaseTagSummary.
+ :type uri: str
+
+ :param term_key:
+ The value to assign to the term_key property of this BaseTagSummary.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this BaseTagSummary.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this BaseTagSummary.
+ :type term_description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this BaseTagSummary.
+ :type glossary_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this BaseTagSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'time_created': 'datetime',
+ 'name': 'str',
+ 'uri': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'glossary_key': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'time_created': 'timeCreated',
+ 'name': 'name',
+ 'uri': 'uri',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'glossary_key': 'glossaryKey',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._time_created = None
+ self._name = None
+ self._uri = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._glossary_key = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this BaseTagSummary.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this BaseTagSummary.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this BaseTagSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this BaseTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this BaseTagSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this BaseTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this BaseTagSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def name(self):
+ """
+ Gets the name of this BaseTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :return: The name of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this BaseTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :param name: The name of this BaseTagSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this BaseTagSummary.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this BaseTagSummary.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this BaseTagSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this BaseTagSummary.
+ Unique key of the related term.
+
+
+ :return: The term_key of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this BaseTagSummary.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this BaseTagSummary.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this BaseTagSummary.
+ Path of the related term.
+
+
+ :return: The term_path of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this BaseTagSummary.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this BaseTagSummary.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this BaseTagSummary.
+ Description of the related term.
+
+
+ :return: The term_description of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this BaseTagSummary.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this BaseTagSummary.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this BaseTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :return: The glossary_key of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this BaseTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :param glossary_key: The glossary_key of this BaseTagSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this BaseTagSummary.
+ State of the Tag.
+
+
+ :return: The lifecycle_state of this BaseTagSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this BaseTagSummary.
+ State of the Tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this BaseTagSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/catalog.py b/src/oci/data_catalog/models/catalog.py
new file mode 100644
index 0000000000..7160e8a3fb
--- /dev/null
+++ b/src/oci/data_catalog/models/catalog.py
@@ -0,0 +1,426 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Catalog(object):
+ """
+ A data catalog enables you to collect, organize, find, access, understand, enrich, and activate technical, business, and operational metadata.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Catalog object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this Catalog.
+ :type id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Catalog.
+ :type display_name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this Catalog.
+ :type compartment_id: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Catalog.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Catalog.
+ :type time_updated: datetime
+
+ :param service_api_url:
+ The value to assign to the service_api_url property of this Catalog.
+ :type service_api_url: str
+
+ :param service_console_url:
+ The value to assign to the service_console_url property of this Catalog.
+ :type service_console_url: str
+
+ :param number_of_objects:
+ The value to assign to the number_of_objects property of this Catalog.
+ :type number_of_objects: int
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Catalog.
+ :type lifecycle_state: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this Catalog.
+ :type lifecycle_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this Catalog.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this Catalog.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'display_name': 'str',
+ 'compartment_id': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'service_api_url': 'str',
+ 'service_console_url': 'str',
+ 'number_of_objects': 'int',
+ 'lifecycle_state': 'str',
+ 'lifecycle_details': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'display_name': 'displayName',
+ 'compartment_id': 'compartmentId',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'service_api_url': 'serviceApiUrl',
+ 'service_console_url': 'serviceConsoleUrl',
+ 'number_of_objects': 'numberOfObjects',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._display_name = None
+ self._compartment_id = None
+ self._time_created = None
+ self._time_updated = None
+ self._service_api_url = None
+ self._service_console_url = None
+ self._number_of_objects = None
+ self._lifecycle_state = None
+ self._lifecycle_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this Catalog.
+ OCID of the data catalog instance.
+
+
+ :return: The id of this Catalog.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this Catalog.
+ OCID of the data catalog instance.
+
+
+ :param id: The id of this Catalog.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Catalog.
+ Data catalog identifier, which can be renamed.
+
+
+ :return: The display_name of this Catalog.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Catalog.
+ Data catalog identifier, which can be renamed.
+
+
+ :param display_name: The display_name of this Catalog.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this Catalog.
+ Compartment identifier.
+
+
+ :return: The compartment_id of this Catalog.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this Catalog.
+ Compartment identifier.
+
+
+ :param compartment_id: The compartment_id of this Catalog.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Catalog.
+ The time the data catalog was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Catalog.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Catalog.
+ The time the data catalog was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Catalog.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Catalog.
+ The time the data catalog was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Catalog.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Catalog.
+ The time the data catalog was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Catalog.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def service_api_url(self):
+ """
+ Gets the service_api_url of this Catalog.
+ The REST front endpoint URL to the data catalog instance.
+
+
+ :return: The service_api_url of this Catalog.
+ :rtype: str
+ """
+ return self._service_api_url
+
+ @service_api_url.setter
+ def service_api_url(self, service_api_url):
+ """
+ Sets the service_api_url of this Catalog.
+ The REST front endpoint URL to the data catalog instance.
+
+
+ :param service_api_url: The service_api_url of this Catalog.
+ :type: str
+ """
+ self._service_api_url = service_api_url
+
+ @property
+ def service_console_url(self):
+ """
+ Gets the service_console_url of this Catalog.
+ The console front endpoint URL to the data catalog instance.
+
+
+ :return: The service_console_url of this Catalog.
+ :rtype: str
+ """
+ return self._service_console_url
+
+ @service_console_url.setter
+ def service_console_url(self, service_console_url):
+ """
+ Sets the service_console_url of this Catalog.
+ The console front endpoint URL to the data catalog instance.
+
+
+ :param service_console_url: The service_console_url of this Catalog.
+ :type: str
+ """
+ self._service_console_url = service_console_url
+
+ @property
+ def number_of_objects(self):
+ """
+ Gets the number_of_objects of this Catalog.
+ The number of data objects added to the data catalog.
+ Please see the data catalog documentation for further information on how this is calculated.
+
+
+ :return: The number_of_objects of this Catalog.
+ :rtype: int
+ """
+ return self._number_of_objects
+
+ @number_of_objects.setter
+ def number_of_objects(self, number_of_objects):
+ """
+ Sets the number_of_objects of this Catalog.
+ The number of data objects added to the data catalog.
+ Please see the data catalog documentation for further information on how this is calculated.
+
+
+ :param number_of_objects: The number_of_objects of this Catalog.
+ :type: int
+ """
+ self._number_of_objects = number_of_objects
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Catalog.
+ The current state of the data catalog resource.
+
+
+ :return: The lifecycle_state of this Catalog.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Catalog.
+ The current state of the data catalog resource.
+
+
+ :param lifecycle_state: The lifecycle_state of this Catalog.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this Catalog.
+ An message describing the current state in more detail.
+ For example, it can be used to provide actionable information for a resource in 'Failed' state.
+
+
+ :return: The lifecycle_details of this Catalog.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this Catalog.
+ An message describing the current state in more detail.
+ For example, it can be used to provide actionable information for a resource in 'Failed' state.
+
+
+ :param lifecycle_details: The lifecycle_details of this Catalog.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this Catalog.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this Catalog.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this Catalog.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this Catalog.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this Catalog.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this Catalog.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this Catalog.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this Catalog.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/catalog_permissions_summary.py b/src/oci/data_catalog/models/catalog_permissions_summary.py
new file mode 100644
index 0000000000..224ff67c4f
--- /dev/null
+++ b/src/oci/data_catalog/models/catalog_permissions_summary.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CatalogPermissionsSummary(object):
+ """
+ General permissions object.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CatalogPermissionsSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this CatalogPermissionsSummary.
+ :type catalog_id: str
+
+ :param user_permissions:
+ The value to assign to the user_permissions property of this CatalogPermissionsSummary.
+ :type user_permissions: list[str]
+
+ """
+ self.swagger_types = {
+ 'catalog_id': 'str',
+ 'user_permissions': 'list[str]'
+ }
+
+ self.attribute_map = {
+ 'catalog_id': 'catalogId',
+ 'user_permissions': 'userPermissions'
+ }
+
+ self._catalog_id = None
+ self._user_permissions = None
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this CatalogPermissionsSummary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this CatalogPermissionsSummary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this CatalogPermissionsSummary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this CatalogPermissionsSummary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def user_permissions(self):
+ """
+ Gets the user_permissions of this CatalogPermissionsSummary.
+ An array of permissions.
+
+
+ :return: The user_permissions of this CatalogPermissionsSummary.
+ :rtype: list[str]
+ """
+ return self._user_permissions
+
+ @user_permissions.setter
+ def user_permissions(self, user_permissions):
+ """
+ Sets the user_permissions of this CatalogPermissionsSummary.
+ An array of permissions.
+
+
+ :param user_permissions: The user_permissions of this CatalogPermissionsSummary.
+ :type: list[str]
+ """
+ self._user_permissions = user_permissions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/catalog_summary.py b/src/oci/data_catalog/models/catalog_summary.py
new file mode 100644
index 0000000000..4d9451a339
--- /dev/null
+++ b/src/oci/data_catalog/models/catalog_summary.py
@@ -0,0 +1,360 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CatalogSummary(object):
+ """
+ Summary of the data catalog.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CatalogSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this CatalogSummary.
+ :type id: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CatalogSummary.
+ :type display_name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CatalogSummary.
+ :type compartment_id: str
+
+ :param time_created:
+ The value to assign to the time_created property of this CatalogSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this CatalogSummary.
+ :type time_updated: datetime
+
+ :param number_of_objects:
+ The value to assign to the number_of_objects property of this CatalogSummary.
+ :type number_of_objects: int
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this CatalogSummary.
+ :type lifecycle_state: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this CatalogSummary.
+ :type lifecycle_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CatalogSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CatalogSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'display_name': 'str',
+ 'compartment_id': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'number_of_objects': 'int',
+ 'lifecycle_state': 'str',
+ 'lifecycle_details': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'display_name': 'displayName',
+ 'compartment_id': 'compartmentId',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'number_of_objects': 'numberOfObjects',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._display_name = None
+ self._compartment_id = None
+ self._time_created = None
+ self._time_updated = None
+ self._number_of_objects = None
+ self._lifecycle_state = None
+ self._lifecycle_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this CatalogSummary.
+ Unique identifier that is immutable on creation.
+
+
+ :return: The id of this CatalogSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this CatalogSummary.
+ Unique identifier that is immutable on creation.
+
+
+ :param id: The id of this CatalogSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this CatalogSummary.
+ Data catalog identifier, that can be renamed.
+
+
+ :return: The display_name of this CatalogSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CatalogSummary.
+ Data catalog identifier, that can be renamed.
+
+
+ :param display_name: The display_name of this CatalogSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CatalogSummary.
+ Compartment identifier.
+
+
+ :return: The compartment_id of this CatalogSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CatalogSummary.
+ Compartment identifier.
+
+
+ :param compartment_id: The compartment_id of this CatalogSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this CatalogSummary.
+ The time the data catalog was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this CatalogSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this CatalogSummary.
+ The time the data catalog was created. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this CatalogSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this CatalogSummary.
+ The time the data catalog was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this CatalogSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this CatalogSummary.
+ The time the data catalog was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this CatalogSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def number_of_objects(self):
+ """
+ Gets the number_of_objects of this CatalogSummary.
+ The number of high level objects added to the data catalog.
+
+
+ :return: The number_of_objects of this CatalogSummary.
+ :rtype: int
+ """
+ return self._number_of_objects
+
+ @number_of_objects.setter
+ def number_of_objects(self, number_of_objects):
+ """
+ Sets the number_of_objects of this CatalogSummary.
+ The number of high level objects added to the data catalog.
+
+
+ :param number_of_objects: The number_of_objects of this CatalogSummary.
+ :type: int
+ """
+ self._number_of_objects = number_of_objects
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this CatalogSummary.
+ The current state of the data catalog resource.
+
+
+ :return: The lifecycle_state of this CatalogSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this CatalogSummary.
+ The current state of the data catalog resource.
+
+
+ :param lifecycle_state: The lifecycle_state of this CatalogSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this CatalogSummary.
+ An message describing the current state in more detail. For example, can be used to provide actionable information for a resource in 'Failed' state.
+
+
+ :return: The lifecycle_details of this CatalogSummary.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this CatalogSummary.
+ An message describing the current state in more detail. For example, can be used to provide actionable information for a resource in 'Failed' state.
+
+
+ :param lifecycle_details: The lifecycle_details of this CatalogSummary.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CatalogSummary.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this CatalogSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CatalogSummary.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this CatalogSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CatalogSummary.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this CatalogSummary.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CatalogSummary.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this CatalogSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/change_catalog_compartment_details.py b/src/oci/data_catalog/models/change_catalog_compartment_details.py
new file mode 100644
index 0000000000..94d1b3893f
--- /dev/null
+++ b/src/oci/data_catalog/models/change_catalog_compartment_details.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ChangeCatalogCompartmentDetails(object):
+ """
+ ChangeCatalogCompartmentDetails model.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ChangeCatalogCompartmentDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ChangeCatalogCompartmentDetails.
+ :type compartment_id: str
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId'
+ }
+
+ self._compartment_id = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ChangeCatalogCompartmentDetails.
+ The identifier of the compartment where the resource should be moved.
+
+
+ :return: The compartment_id of this ChangeCatalogCompartmentDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ChangeCatalogCompartmentDetails.
+ The identifier of the compartment where the resource should be moved.
+
+
+ :param compartment_id: The compartment_id of this ChangeCatalogCompartmentDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/connection.py b/src/oci/data_catalog/models/connection.py
new file mode 100644
index 0000000000..6004514f90
--- /dev/null
+++ b/src/oci/data_catalog/models/connection.py
@@ -0,0 +1,527 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Connection(object):
+ """
+ Detailed representation of a connection to a data asset, minus any sensitive properties.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Connection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Connection.
+ :type key: str
+
+ :param description:
+ The value to assign to the description property of this Connection.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Connection.
+ :type display_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Connection.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Connection.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Connection.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Connection.
+ :type updated_by_id: str
+
+ :param properties:
+ The value to assign to the properties property of this Connection.
+ :type properties: dict(str, dict(str, str))
+
+ :param external_key:
+ The value to assign to the external_key property of this Connection.
+ :type external_key: str
+
+ :param time_status_updated:
+ The value to assign to the time_status_updated property of this Connection.
+ :type time_status_updated: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Connection.
+ :type lifecycle_state: str
+
+ :param is_default:
+ The value to assign to the is_default property of this Connection.
+ :type is_default: bool
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this Connection.
+ :type data_asset_key: str
+
+ :param type_key:
+ The value to assign to the type_key property of this Connection.
+ :type type_key: str
+
+ :param uri:
+ The value to assign to the uri property of this Connection.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'description': 'str',
+ 'display_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'properties': 'dict(str, dict(str, str))',
+ 'external_key': 'str',
+ 'time_status_updated': 'datetime',
+ 'lifecycle_state': 'str',
+ 'is_default': 'bool',
+ 'data_asset_key': 'str',
+ 'type_key': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'properties': 'properties',
+ 'external_key': 'externalKey',
+ 'time_status_updated': 'timeStatusUpdated',
+ 'lifecycle_state': 'lifecycleState',
+ 'is_default': 'isDefault',
+ 'data_asset_key': 'dataAssetKey',
+ 'type_key': 'typeKey',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._description = None
+ self._display_name = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._properties = None
+ self._external_key = None
+ self._time_status_updated = None
+ self._lifecycle_state = None
+ self._is_default = None
+ self._data_asset_key = None
+ self._type_key = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Connection.
+ Unique connection key that is immutable.
+
+
+ :return: The key of this Connection.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Connection.
+ Unique connection key that is immutable.
+
+
+ :param key: The key of this Connection.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Connection.
+ A description of the connection.
+
+
+ :return: The description of this Connection.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Connection.
+ A description of the connection.
+
+
+ :param description: The description of this Connection.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Connection.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Connection.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Connection.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Connection.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Connection.
+ The date and time the connection was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Connection.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Connection.
+ The date and time the connection was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Connection.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Connection.
+ The last time that any change was made to the connection. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Connection.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Connection.
+ The last time that any change was made to the connection. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Connection.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Connection.
+ OCID of the user who created the connection.
+
+
+ :return: The created_by_id of this Connection.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Connection.
+ OCID of the user who created the connection.
+
+
+ :param created_by_id: The created_by_id of this Connection.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Connection.
+ OCID of the user who modified the connection.
+
+
+ :return: The updated_by_id of this Connection.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Connection.
+ OCID of the user who modified the connection.
+
+
+ :param updated_by_id: The updated_by_id of this Connection.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this Connection.
+ A map of maps that contains the properties which are specific to the connection type. Each connection type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ connections have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"username\": \"user1\"}}}`
+
+
+ :return: The properties of this Connection.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this Connection.
+ A map of maps that contains the properties which are specific to the connection type. Each connection type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ connections have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"username\": \"user1\"}}}`
+
+
+ :param properties: The properties of this Connection.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this Connection.
+ Unique external key of this object from the source system.
+
+
+ :return: The external_key of this Connection.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this Connection.
+ Unique external key of this object from the source system.
+
+
+ :param external_key: The external_key of this Connection.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def time_status_updated(self):
+ """
+ Gets the time_status_updated of this Connection.
+ Time that the connections status was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_status_updated of this Connection.
+ :rtype: datetime
+ """
+ return self._time_status_updated
+
+ @time_status_updated.setter
+ def time_status_updated(self, time_status_updated):
+ """
+ Sets the time_status_updated of this Connection.
+ Time that the connections status was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_status_updated: The time_status_updated of this Connection.
+ :type: datetime
+ """
+ self._time_status_updated = time_status_updated
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Connection.
+ The current state of the connection.
+
+
+ :return: The lifecycle_state of this Connection.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Connection.
+ The current state of the connection.
+
+
+ :param lifecycle_state: The lifecycle_state of this Connection.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def is_default(self):
+ """
+ Gets the is_default of this Connection.
+ Indicates whether this connection is the default connection.
+
+
+ :return: The is_default of this Connection.
+ :rtype: bool
+ """
+ return self._is_default
+
+ @is_default.setter
+ def is_default(self, is_default):
+ """
+ Sets the is_default of this Connection.
+ Indicates whether this connection is the default connection.
+
+
+ :param is_default: The is_default of this Connection.
+ :type: bool
+ """
+ self._is_default = is_default
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this Connection.
+ Unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this Connection.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this Connection.
+ Unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this Connection.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def type_key(self):
+ """
+ Gets the type_key of this Connection.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :return: The type_key of this Connection.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this Connection.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this Connection.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Connection.
+ URI to the connection instance in the API.
+
+
+ :return: The uri of this Connection.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Connection.
+ URI to the connection instance in the API.
+
+
+ :param uri: The uri of this Connection.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/connection_alias_summary.py b/src/oci/data_catalog/models/connection_alias_summary.py
new file mode 100644
index 0000000000..bb773432bb
--- /dev/null
+++ b/src/oci/data_catalog/models/connection_alias_summary.py
@@ -0,0 +1,102 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ConnectionAliasSummary(object):
+ """
+ Summary representation of database aliases parsed from the file metadata.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ConnectionAliasSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param alias_name:
+ The value to assign to the alias_name property of this ConnectionAliasSummary.
+ :type alias_name: str
+
+ :param alias_details:
+ The value to assign to the alias_details property of this ConnectionAliasSummary.
+ :type alias_details: str
+
+ """
+ self.swagger_types = {
+ 'alias_name': 'str',
+ 'alias_details': 'str'
+ }
+
+ self.attribute_map = {
+ 'alias_name': 'aliasName',
+ 'alias_details': 'aliasDetails'
+ }
+
+ self._alias_name = None
+ self._alias_details = None
+
+ @property
+ def alias_name(self):
+ """
+ **[Required]** Gets the alias_name of this ConnectionAliasSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The alias_name of this ConnectionAliasSummary.
+ :rtype: str
+ """
+ return self._alias_name
+
+ @alias_name.setter
+ def alias_name(self, alias_name):
+ """
+ Sets the alias_name of this ConnectionAliasSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param alias_name: The alias_name of this ConnectionAliasSummary.
+ :type: str
+ """
+ self._alias_name = alias_name
+
+ @property
+ def alias_details(self):
+ """
+ Gets the alias_details of this ConnectionAliasSummary.
+ The description about the database alias parsed from the file metadata.
+
+
+ :return: The alias_details of this ConnectionAliasSummary.
+ :rtype: str
+ """
+ return self._alias_details
+
+ @alias_details.setter
+ def alias_details(self, alias_details):
+ """
+ Sets the alias_details of this ConnectionAliasSummary.
+ The description about the database alias parsed from the file metadata.
+
+
+ :param alias_details: The alias_details of this ConnectionAliasSummary.
+ :type: str
+ """
+ self._alias_details = alias_details
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/connection_collection.py b/src/oci/data_catalog/models/connection_collection.py
new file mode 100644
index 0000000000..692e3136de
--- /dev/null
+++ b/src/oci/data_catalog/models/connection_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ConnectionCollection(object):
+ """
+ Results of a connections listing. Each member of the result is a summary representation of a connection to a data asset.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ConnectionCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this ConnectionCollection.
+ :type items: list[ConnectionSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[ConnectionSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this ConnectionCollection.
+ Collection of connection summaries.
+
+
+ :return: The items of this ConnectionCollection.
+ :rtype: list[ConnectionSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this ConnectionCollection.
+ Collection of connection summaries.
+
+
+ :param items: The items of this ConnectionCollection.
+ :type: list[ConnectionSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/connection_summary.py b/src/oci/data_catalog/models/connection_summary.py
new file mode 100644
index 0000000000..a832b919d2
--- /dev/null
+++ b/src/oci/data_catalog/models/connection_summary.py
@@ -0,0 +1,356 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ConnectionSummary(object):
+ """
+ Summary representation of a connection to a data asset.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ConnectionSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this ConnectionSummary.
+ :type key: str
+
+ :param description:
+ The value to assign to the description property of this ConnectionSummary.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this ConnectionSummary.
+ :type display_name: str
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this ConnectionSummary.
+ :type data_asset_key: str
+
+ :param type_key:
+ The value to assign to the type_key property of this ConnectionSummary.
+ :type type_key: str
+
+ :param uri:
+ The value to assign to the uri property of this ConnectionSummary.
+ :type uri: str
+
+ :param external_key:
+ The value to assign to the external_key property of this ConnectionSummary.
+ :type external_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ConnectionSummary.
+ :type lifecycle_state: str
+
+ :param is_default:
+ The value to assign to the is_default property of this ConnectionSummary.
+ :type is_default: bool
+
+ :param time_created:
+ The value to assign to the time_created property of this ConnectionSummary.
+ :type time_created: datetime
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'description': 'str',
+ 'display_name': 'str',
+ 'data_asset_key': 'str',
+ 'type_key': 'str',
+ 'uri': 'str',
+ 'external_key': 'str',
+ 'lifecycle_state': 'str',
+ 'is_default': 'bool',
+ 'time_created': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'data_asset_key': 'dataAssetKey',
+ 'type_key': 'typeKey',
+ 'uri': 'uri',
+ 'external_key': 'externalKey',
+ 'lifecycle_state': 'lifecycleState',
+ 'is_default': 'isDefault',
+ 'time_created': 'timeCreated'
+ }
+
+ self._key = None
+ self._description = None
+ self._display_name = None
+ self._data_asset_key = None
+ self._type_key = None
+ self._uri = None
+ self._external_key = None
+ self._lifecycle_state = None
+ self._is_default = None
+ self._time_created = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this ConnectionSummary.
+ Unique connection key that is immutable.
+
+
+ :return: The key of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this ConnectionSummary.
+ Unique connection key that is immutable.
+
+
+ :param key: The key of this ConnectionSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def description(self):
+ """
+ Gets the description of this ConnectionSummary.
+ A description of the connection.
+
+
+ :return: The description of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this ConnectionSummary.
+ A description of the connection.
+
+
+ :param description: The description of this ConnectionSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this ConnectionSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ConnectionSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this ConnectionSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this ConnectionSummary.
+ The unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this ConnectionSummary.
+ The unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this ConnectionSummary.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def type_key(self):
+ """
+ Gets the type_key of this ConnectionSummary.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :return: The type_key of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this ConnectionSummary.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this ConnectionSummary.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this ConnectionSummary.
+ URI to the connection instance in the API.
+
+
+ :return: The uri of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this ConnectionSummary.
+ URI to the connection instance in the API.
+
+
+ :param uri: The uri of this ConnectionSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this ConnectionSummary.
+ Unique external key for this object as defined in the source systems.
+
+
+ :return: The external_key of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this ConnectionSummary.
+ Unique external key for this object as defined in the source systems.
+
+
+ :param external_key: The external_key of this ConnectionSummary.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this ConnectionSummary.
+ The current state of the connection.
+
+
+ :return: The lifecycle_state of this ConnectionSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ConnectionSummary.
+ The current state of the connection.
+
+
+ :param lifecycle_state: The lifecycle_state of this ConnectionSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def is_default(self):
+ """
+ Gets the is_default of this ConnectionSummary.
+ Indicates whether this connection is the default connection.
+
+
+ :return: The is_default of this ConnectionSummary.
+ :rtype: bool
+ """
+ return self._is_default
+
+ @is_default.setter
+ def is_default(self, is_default):
+ """
+ Sets the is_default of this ConnectionSummary.
+ Indicates whether this connection is the default connection.
+
+
+ :param is_default: The is_default of this ConnectionSummary.
+ :type: bool
+ """
+ self._is_default = is_default
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this ConnectionSummary.
+ The date and time the connection was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this ConnectionSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this ConnectionSummary.
+ The date and time the connection was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this ConnectionSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_attribute_details.py b/src/oci/data_catalog/models/create_attribute_details.py
new file mode 100644
index 0000000000..e41dab93f7
--- /dev/null
+++ b/src/oci/data_catalog/models/create_attribute_details.py
@@ -0,0 +1,395 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateAttributeDetails(object):
+ """
+ Properties used in attribute create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateAttributeDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateAttributeDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateAttributeDetails.
+ :type description: str
+
+ :param external_data_type:
+ The value to assign to the external_data_type property of this CreateAttributeDetails.
+ :type external_data_type: str
+
+ :param is_incremental_data:
+ The value to assign to the is_incremental_data property of this CreateAttributeDetails.
+ :type is_incremental_data: bool
+
+ :param is_nullable:
+ The value to assign to the is_nullable property of this CreateAttributeDetails.
+ :type is_nullable: bool
+
+ :param length:
+ The value to assign to the length property of this CreateAttributeDetails.
+ :type length: int
+
+ :param position:
+ The value to assign to the position property of this CreateAttributeDetails.
+ :type position: int
+
+ :param precision:
+ The value to assign to the precision property of this CreateAttributeDetails.
+ :type precision: int
+
+ :param scale:
+ The value to assign to the scale property of this CreateAttributeDetails.
+ :type scale: int
+
+ :param time_external:
+ The value to assign to the time_external property of this CreateAttributeDetails.
+ :type time_external: datetime
+
+ :param properties:
+ The value to assign to the properties property of this CreateAttributeDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'external_data_type': 'str',
+ 'is_incremental_data': 'bool',
+ 'is_nullable': 'bool',
+ 'length': 'int',
+ 'position': 'int',
+ 'precision': 'int',
+ 'scale': 'int',
+ 'time_external': 'datetime',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'external_data_type': 'externalDataType',
+ 'is_incremental_data': 'isIncrementalData',
+ 'is_nullable': 'isNullable',
+ 'length': 'length',
+ 'position': 'position',
+ 'precision': 'precision',
+ 'scale': 'scale',
+ 'time_external': 'timeExternal',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._external_data_type = None
+ self._is_incremental_data = None
+ self._is_nullable = None
+ self._length = None
+ self._position = None
+ self._precision = None
+ self._scale = None
+ self._time_external = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateAttributeDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateAttributeDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateAttributeDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateAttributeDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateAttributeDetails.
+ Detailed description of the attribute.
+
+
+ :return: The description of this CreateAttributeDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateAttributeDetails.
+ Detailed description of the attribute.
+
+
+ :param description: The description of this CreateAttributeDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def external_data_type(self):
+ """
+ **[Required]** Gets the external_data_type of this CreateAttributeDetails.
+ Data type of the attribute as defined in the external system.
+
+
+ :return: The external_data_type of this CreateAttributeDetails.
+ :rtype: str
+ """
+ return self._external_data_type
+
+ @external_data_type.setter
+ def external_data_type(self, external_data_type):
+ """
+ Sets the external_data_type of this CreateAttributeDetails.
+ Data type of the attribute as defined in the external system.
+
+
+ :param external_data_type: The external_data_type of this CreateAttributeDetails.
+ :type: str
+ """
+ self._external_data_type = external_data_type
+
+ @property
+ def is_incremental_data(self):
+ """
+ Gets the is_incremental_data of this CreateAttributeDetails.
+ Property that identifies if this attribute can be used as a watermark to extract incremental data.
+
+
+ :return: The is_incremental_data of this CreateAttributeDetails.
+ :rtype: bool
+ """
+ return self._is_incremental_data
+
+ @is_incremental_data.setter
+ def is_incremental_data(self, is_incremental_data):
+ """
+ Sets the is_incremental_data of this CreateAttributeDetails.
+ Property that identifies if this attribute can be used as a watermark to extract incremental data.
+
+
+ :param is_incremental_data: The is_incremental_data of this CreateAttributeDetails.
+ :type: bool
+ """
+ self._is_incremental_data = is_incremental_data
+
+ @property
+ def is_nullable(self):
+ """
+ Gets the is_nullable of this CreateAttributeDetails.
+ Property that identifies if this attribute can be assigned null values.
+
+
+ :return: The is_nullable of this CreateAttributeDetails.
+ :rtype: bool
+ """
+ return self._is_nullable
+
+ @is_nullable.setter
+ def is_nullable(self, is_nullable):
+ """
+ Sets the is_nullable of this CreateAttributeDetails.
+ Property that identifies if this attribute can be assigned null values.
+
+
+ :param is_nullable: The is_nullable of this CreateAttributeDetails.
+ :type: bool
+ """
+ self._is_nullable = is_nullable
+
+ @property
+ def length(self):
+ """
+ Gets the length of this CreateAttributeDetails.
+ Max allowed length of the attribute value.
+
+
+ :return: The length of this CreateAttributeDetails.
+ :rtype: int
+ """
+ return self._length
+
+ @length.setter
+ def length(self, length):
+ """
+ Sets the length of this CreateAttributeDetails.
+ Max allowed length of the attribute value.
+
+
+ :param length: The length of this CreateAttributeDetails.
+ :type: int
+ """
+ self._length = length
+
+ @property
+ def position(self):
+ """
+ Gets the position of this CreateAttributeDetails.
+ Position of the attribute in the record definition.
+
+
+ :return: The position of this CreateAttributeDetails.
+ :rtype: int
+ """
+ return self._position
+
+ @position.setter
+ def position(self, position):
+ """
+ Sets the position of this CreateAttributeDetails.
+ Position of the attribute in the record definition.
+
+
+ :param position: The position of this CreateAttributeDetails.
+ :type: int
+ """
+ self._position = position
+
+ @property
+ def precision(self):
+ """
+ Gets the precision of this CreateAttributeDetails.
+ Precision of the attribute value usually applies to float data type.
+
+
+ :return: The precision of this CreateAttributeDetails.
+ :rtype: int
+ """
+ return self._precision
+
+ @precision.setter
+ def precision(self, precision):
+ """
+ Sets the precision of this CreateAttributeDetails.
+ Precision of the attribute value usually applies to float data type.
+
+
+ :param precision: The precision of this CreateAttributeDetails.
+ :type: int
+ """
+ self._precision = precision
+
+ @property
+ def scale(self):
+ """
+ Gets the scale of this CreateAttributeDetails.
+ Scale of the attribute value usually applies to float data type.
+
+
+ :return: The scale of this CreateAttributeDetails.
+ :rtype: int
+ """
+ return self._scale
+
+ @scale.setter
+ def scale(self, scale):
+ """
+ Sets the scale of this CreateAttributeDetails.
+ Scale of the attribute value usually applies to float data type.
+
+
+ :param scale: The scale of this CreateAttributeDetails.
+ :type: int
+ """
+ self._scale = scale
+
+ @property
+ def time_external(self):
+ """
+ **[Required]** Gets the time_external of this CreateAttributeDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this CreateAttributeDetails.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this CreateAttributeDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this CreateAttributeDetails.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this CreateAttributeDetails.
+ A map of maps that contains the properties which are specific to the attribute type. Each attribute type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ attributes have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an attribute type, a query can be done on '/types?type=attribute' that returns a
+ collection of all attribute types. The appropriate attribute type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this CreateAttributeDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateAttributeDetails.
+ A map of maps that contains the properties which are specific to the attribute type. Each attribute type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ attributes have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an attribute type, a query can be done on '/types?type=attribute' that returns a
+ collection of all attribute types. The appropriate attribute type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this CreateAttributeDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_catalog_details.py b/src/oci/data_catalog/models/create_catalog_details.py
new file mode 100644
index 0000000000..251efba7e7
--- /dev/null
+++ b/src/oci/data_catalog/models/create_catalog_details.py
@@ -0,0 +1,166 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateCatalogDetails(object):
+ """
+ The information about a new data catalog.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateCatalogDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateCatalogDetails.
+ :type display_name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateCatalogDetails.
+ :type compartment_id: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateCatalogDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateCatalogDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'compartment_id': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'compartment_id': 'compartmentId',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._display_name = None
+ self._compartment_id = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this CreateCatalogDetails.
+ Data catalog identifier.
+
+
+ :return: The display_name of this CreateCatalogDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateCatalogDetails.
+ Data catalog identifier.
+
+
+ :param display_name: The display_name of this CreateCatalogDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateCatalogDetails.
+ Compartment identifier.
+
+
+ :return: The compartment_id of this CreateCatalogDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateCatalogDetails.
+ Compartment identifier.
+
+
+ :param compartment_id: The compartment_id of this CreateCatalogDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateCatalogDetails.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this CreateCatalogDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateCatalogDetails.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this CreateCatalogDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateCatalogDetails.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this CreateCatalogDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CreateCatalogDetails.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this CreateCatalogDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_connection_details.py b/src/oci/data_catalog/models/create_connection_details.py
new file mode 100644
index 0000000000..8803a11a76
--- /dev/null
+++ b/src/oci/data_catalog/models/create_connection_details.py
@@ -0,0 +1,260 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateConnectionDetails(object):
+ """
+ Properties used in connection create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateConnectionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param description:
+ The value to assign to the description property of this CreateConnectionDetails.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateConnectionDetails.
+ :type display_name: str
+
+ :param type_key:
+ The value to assign to the type_key property of this CreateConnectionDetails.
+ :type type_key: str
+
+ :param properties:
+ The value to assign to the properties property of this CreateConnectionDetails.
+ :type properties: dict(str, dict(str, str))
+
+ :param enc_properties:
+ The value to assign to the enc_properties property of this CreateConnectionDetails.
+ :type enc_properties: dict(str, dict(str, str))
+
+ :param is_default:
+ The value to assign to the is_default property of this CreateConnectionDetails.
+ :type is_default: bool
+
+ """
+ self.swagger_types = {
+ 'description': 'str',
+ 'display_name': 'str',
+ 'type_key': 'str',
+ 'properties': 'dict(str, dict(str, str))',
+ 'enc_properties': 'dict(str, dict(str, str))',
+ 'is_default': 'bool'
+ }
+
+ self.attribute_map = {
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'type_key': 'typeKey',
+ 'properties': 'properties',
+ 'enc_properties': 'encProperties',
+ 'is_default': 'isDefault'
+ }
+
+ self._description = None
+ self._display_name = None
+ self._type_key = None
+ self._properties = None
+ self._enc_properties = None
+ self._is_default = None
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateConnectionDetails.
+ A description of the connection.
+
+
+ :return: The description of this CreateConnectionDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateConnectionDetails.
+ A description of the connection.
+
+
+ :param description: The description of this CreateConnectionDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateConnectionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateConnectionDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateConnectionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateConnectionDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def type_key(self):
+ """
+ **[Required]** Gets the type_key of this CreateConnectionDetails.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :return: The type_key of this CreateConnectionDetails.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this CreateConnectionDetails.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this CreateConnectionDetails.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def properties(self):
+ """
+ **[Required]** Gets the properties of this CreateConnectionDetails.
+ A map of maps that contains the properties which are specific to the connection type. Each connection type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ connections have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a connection type, a query can be done on '/types?type=connection' that returns a
+ collection of all connection types. The appropriate connection type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"username\": \"user1\"}}}`
+
+
+ :return: The properties of this CreateConnectionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateConnectionDetails.
+ A map of maps that contains the properties which are specific to the connection type. Each connection type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ connections have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a connection type, a query can be done on '/types?type=connection' that returns a
+ collection of all connection types. The appropriate connection type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"username\": \"user1\"}}}`
+
+
+ :param properties: The properties of this CreateConnectionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ @property
+ def enc_properties(self):
+ """
+ Gets the enc_properties of this CreateConnectionDetails.
+ A map of maps that contains the encrypted values for sensitive properties which are specific to the
+ connection type. Each connection type definition defines it's set of required and optional properties.
+ The map keys are category names and the values are maps of property name to property value. Every property is
+ contained inside of a category. Most connections have required properties within the \"default\" category.
+ To determine the set of optional and required properties for a connection type, a query can be done
+ on '/types?type=connection' that returns a collection of all connection types. The appropriate connection
+ type, which will include definitions of all of it's properties, can be identified from this collection.
+ Example: `{\"encProperties\": { \"default\": { \"password\": \"pwd\"}}}`
+
+
+ :return: The enc_properties of this CreateConnectionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._enc_properties
+
+ @enc_properties.setter
+ def enc_properties(self, enc_properties):
+ """
+ Sets the enc_properties of this CreateConnectionDetails.
+ A map of maps that contains the encrypted values for sensitive properties which are specific to the
+ connection type. Each connection type definition defines it's set of required and optional properties.
+ The map keys are category names and the values are maps of property name to property value. Every property is
+ contained inside of a category. Most connections have required properties within the \"default\" category.
+ To determine the set of optional and required properties for a connection type, a query can be done
+ on '/types?type=connection' that returns a collection of all connection types. The appropriate connection
+ type, which will include definitions of all of it's properties, can be identified from this collection.
+ Example: `{\"encProperties\": { \"default\": { \"password\": \"pwd\"}}}`
+
+
+ :param enc_properties: The enc_properties of this CreateConnectionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._enc_properties = enc_properties
+
+ @property
+ def is_default(self):
+ """
+ Gets the is_default of this CreateConnectionDetails.
+ Indicates whether this connection is the default connection. The first connection of a data asset defaults
+ to being the default, subsequent connections default to not being the default. If a default connection already
+ exists, then trying to create a connection as the default will fail. In this case the default connection would
+ need to be updated not to be the default and then the new connection can then be created as the default.
+
+
+ :return: The is_default of this CreateConnectionDetails.
+ :rtype: bool
+ """
+ return self._is_default
+
+ @is_default.setter
+ def is_default(self, is_default):
+ """
+ Sets the is_default of this CreateConnectionDetails.
+ Indicates whether this connection is the default connection. The first connection of a data asset defaults
+ to being the default, subsequent connections default to not being the default. If a default connection already
+ exists, then trying to create a connection as the default will fail. In this case the default connection would
+ need to be updated not to be the default and then the new connection can then be created as the default.
+
+
+ :param is_default: The is_default of this CreateConnectionDetails.
+ :type: bool
+ """
+ self._is_default = is_default
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_data_asset_details.py b/src/oci/data_catalog/models/create_data_asset_details.py
new file mode 100644
index 0000000000..6ee094cf9d
--- /dev/null
+++ b/src/oci/data_catalog/models/create_data_asset_details.py
@@ -0,0 +1,178 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateDataAssetDetails(object):
+ """
+ Properties used in data asset create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateDataAssetDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateDataAssetDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateDataAssetDetails.
+ :type description: str
+
+ :param type_key:
+ The value to assign to the type_key property of this CreateDataAssetDetails.
+ :type type_key: str
+
+ :param properties:
+ The value to assign to the properties property of this CreateDataAssetDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'type_key': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'type_key': 'typeKey',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._type_key = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateDataAssetDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateDataAssetDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateDataAssetDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateDataAssetDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateDataAssetDetails.
+ Detailed description of the data asset.
+
+
+ :return: The description of this CreateDataAssetDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateDataAssetDetails.
+ Detailed description of the data asset.
+
+
+ :param description: The description of this CreateDataAssetDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def type_key(self):
+ """
+ **[Required]** Gets the type_key of this CreateDataAssetDetails.
+ The key of the data asset type. This can be obtained via the '/types' endpoint.
+
+
+ :return: The type_key of this CreateDataAssetDetails.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this CreateDataAssetDetails.
+ The key of the data asset type. This can be obtained via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this CreateDataAssetDetails.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this CreateDataAssetDetails.
+ A map of maps that contains the properties which are specific to the data asset type. Each data asset type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data assets have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a data asset type, a query can be done on '/types?type=dataAsset' that returns a
+ collection of all data asset types. The appropriate data asset type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this CreateDataAssetDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateDataAssetDetails.
+ A map of maps that contains the properties which are specific to the data asset type. Each data asset type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data assets have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a data asset type, a query can be done on '/types?type=dataAsset' that returns a
+ collection of all data asset types. The appropriate data asset type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this CreateDataAssetDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_entity_details.py b/src/oci/data_catalog/models/create_entity_details.py
new file mode 100644
index 0000000000..0d9d9c3ba2
--- /dev/null
+++ b/src/oci/data_catalog/models/create_entity_details.py
@@ -0,0 +1,339 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateEntityDetails(object):
+ """
+ Properties used in data entity create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateEntityDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateEntityDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateEntityDetails.
+ :type description: str
+
+ :param time_external:
+ The value to assign to the time_external property of this CreateEntityDetails.
+ :type time_external: datetime
+
+ :param is_logical:
+ The value to assign to the is_logical property of this CreateEntityDetails.
+ :type is_logical: bool
+
+ :param is_partition:
+ The value to assign to the is_partition property of this CreateEntityDetails.
+ :type is_partition: bool
+
+ :param folder_key:
+ The value to assign to the folder_key property of this CreateEntityDetails.
+ :type folder_key: str
+
+ :param harvest_status:
+ The value to assign to the harvest_status property of this CreateEntityDetails.
+ :type harvest_status: str
+
+ :param last_job_key:
+ The value to assign to the last_job_key property of this CreateEntityDetails.
+ :type last_job_key: str
+
+ :param properties:
+ The value to assign to the properties property of this CreateEntityDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_external': 'datetime',
+ 'is_logical': 'bool',
+ 'is_partition': 'bool',
+ 'folder_key': 'str',
+ 'harvest_status': 'str',
+ 'last_job_key': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_external': 'timeExternal',
+ 'is_logical': 'isLogical',
+ 'is_partition': 'isPartition',
+ 'folder_key': 'folderKey',
+ 'harvest_status': 'harvestStatus',
+ 'last_job_key': 'lastJobKey',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._time_external = None
+ self._is_logical = None
+ self._is_partition = None
+ self._folder_key = None
+ self._harvest_status = None
+ self._last_job_key = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateEntityDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateEntityDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateEntityDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateEntityDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateEntityDetails.
+ Detailed description of a data entity.
+
+
+ :return: The description of this CreateEntityDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateEntityDetails.
+ Detailed description of a data entity.
+
+
+ :param description: The description of this CreateEntityDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_external(self):
+ """
+ **[Required]** Gets the time_external of this CreateEntityDetails.
+ Last modified timestamp of the object in the external system.
+
+
+ :return: The time_external of this CreateEntityDetails.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this CreateEntityDetails.
+ Last modified timestamp of the object in the external system.
+
+
+ :param time_external: The time_external of this CreateEntityDetails.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def is_logical(self):
+ """
+ Gets the is_logical of this CreateEntityDetails.
+ Property to indicate if the object is a physical materialized object or virtual. For example, View.
+
+
+ :return: The is_logical of this CreateEntityDetails.
+ :rtype: bool
+ """
+ return self._is_logical
+
+ @is_logical.setter
+ def is_logical(self, is_logical):
+ """
+ Sets the is_logical of this CreateEntityDetails.
+ Property to indicate if the object is a physical materialized object or virtual. For example, View.
+
+
+ :param is_logical: The is_logical of this CreateEntityDetails.
+ :type: bool
+ """
+ self._is_logical = is_logical
+
+ @property
+ def is_partition(self):
+ """
+ Gets the is_partition of this CreateEntityDetails.
+ Property to indicate if the object is a sub object of a parent physical object.
+
+
+ :return: The is_partition of this CreateEntityDetails.
+ :rtype: bool
+ """
+ return self._is_partition
+
+ @is_partition.setter
+ def is_partition(self, is_partition):
+ """
+ Sets the is_partition of this CreateEntityDetails.
+ Property to indicate if the object is a sub object of a parent physical object.
+
+
+ :param is_partition: The is_partition of this CreateEntityDetails.
+ :type: bool
+ """
+ self._is_partition = is_partition
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this CreateEntityDetails.
+ Key of the associated folder.
+
+
+ :return: The folder_key of this CreateEntityDetails.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this CreateEntityDetails.
+ Key of the associated folder.
+
+
+ :param folder_key: The folder_key of this CreateEntityDetails.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def harvest_status(self):
+ """
+ Gets the harvest_status of this CreateEntityDetails.
+ Status of the object as updated by the harvest process. When an entity object is created , it's harvest status
+ will indicate if the entity's metadata has been fully harvested or not. The harvest process can perform
+ shallow harvesting to allow users to browse the metadata and can on-demand deep harvest on any object
+ This requires a harvest status indicator for catalog objects.
+
+
+ :return: The harvest_status of this CreateEntityDetails.
+ :rtype: str
+ """
+ return self._harvest_status
+
+ @harvest_status.setter
+ def harvest_status(self, harvest_status):
+ """
+ Sets the harvest_status of this CreateEntityDetails.
+ Status of the object as updated by the harvest process. When an entity object is created , it's harvest status
+ will indicate if the entity's metadata has been fully harvested or not. The harvest process can perform
+ shallow harvesting to allow users to browse the metadata and can on-demand deep harvest on any object
+ This requires a harvest status indicator for catalog objects.
+
+
+ :param harvest_status: The harvest_status of this CreateEntityDetails.
+ :type: str
+ """
+ self._harvest_status = harvest_status
+
+ @property
+ def last_job_key(self):
+ """
+ Gets the last_job_key of this CreateEntityDetails.
+ Key of the last harvest process to update this object.
+
+
+ :return: The last_job_key of this CreateEntityDetails.
+ :rtype: str
+ """
+ return self._last_job_key
+
+ @last_job_key.setter
+ def last_job_key(self, last_job_key):
+ """
+ Sets the last_job_key of this CreateEntityDetails.
+ Key of the last harvest process to update this object.
+
+
+ :param last_job_key: The last_job_key of this CreateEntityDetails.
+ :type: str
+ """
+ self._last_job_key = last_job_key
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this CreateEntityDetails.
+ A map of maps that contains the properties which are specific to the entity type. Each entity type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ entities have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an entity type, a query can be done on '/types?type=dataEntity' that returns a
+ collection of all entity types. The appropriate entity type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this CreateEntityDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateEntityDetails.
+ A map of maps that contains the properties which are specific to the entity type. Each entity type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ entities have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an entity type, a query can be done on '/types?type=dataEntity' that returns a
+ collection of all entity types. The appropriate entity type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this CreateEntityDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_folder_details.py b/src/oci/data_catalog/models/create_folder_details.py
new file mode 100644
index 0000000000..ac837a62da
--- /dev/null
+++ b/src/oci/data_catalog/models/create_folder_details.py
@@ -0,0 +1,271 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateFolderDetails(object):
+ """
+ Properties used in folder create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateFolderDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateFolderDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateFolderDetails.
+ :type description: str
+
+ :param properties:
+ The value to assign to the properties property of this CreateFolderDetails.
+ :type properties: dict(str, dict(str, str))
+
+ :param parent_folder_key:
+ The value to assign to the parent_folder_key property of this CreateFolderDetails.
+ :type parent_folder_key: str
+
+ :param time_external:
+ The value to assign to the time_external property of this CreateFolderDetails.
+ :type time_external: datetime
+
+ :param last_job_key:
+ The value to assign to the last_job_key property of this CreateFolderDetails.
+ :type last_job_key: str
+
+ :param harvest_status:
+ The value to assign to the harvest_status property of this CreateFolderDetails.
+ :type harvest_status: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'properties': 'dict(str, dict(str, str))',
+ 'parent_folder_key': 'str',
+ 'time_external': 'datetime',
+ 'last_job_key': 'str',
+ 'harvest_status': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'properties': 'properties',
+ 'parent_folder_key': 'parentFolderKey',
+ 'time_external': 'timeExternal',
+ 'last_job_key': 'lastJobKey',
+ 'harvest_status': 'harvestStatus'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._properties = None
+ self._parent_folder_key = None
+ self._time_external = None
+ self._last_job_key = None
+ self._harvest_status = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateFolderDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateFolderDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateFolderDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateFolderDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateFolderDetails.
+ Detailed description of a folder.
+
+
+ :return: The description of this CreateFolderDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateFolderDetails.
+ Detailed description of a folder.
+
+
+ :param description: The description of this CreateFolderDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this CreateFolderDetails.
+ A map of maps that contains the properties which are specific to the folder type. Each folder type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ folders have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a folder type, a query can be done on '/types?type=folder' that returns a
+ collection of all folder types. The appropriate folder type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this CreateFolderDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateFolderDetails.
+ A map of maps that contains the properties which are specific to the folder type. Each folder type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ folders have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a folder type, a query can be done on '/types?type=folder' that returns a
+ collection of all folder types. The appropriate folder type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this CreateFolderDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ @property
+ def parent_folder_key(self):
+ """
+ Gets the parent_folder_key of this CreateFolderDetails.
+ The key of the containing folder or null if there isn't a parent folder.
+
+
+ :return: The parent_folder_key of this CreateFolderDetails.
+ :rtype: str
+ """
+ return self._parent_folder_key
+
+ @parent_folder_key.setter
+ def parent_folder_key(self, parent_folder_key):
+ """
+ Sets the parent_folder_key of this CreateFolderDetails.
+ The key of the containing folder or null if there isn't a parent folder.
+
+
+ :param parent_folder_key: The parent_folder_key of this CreateFolderDetails.
+ :type: str
+ """
+ self._parent_folder_key = parent_folder_key
+
+ @property
+ def time_external(self):
+ """
+ **[Required]** Gets the time_external of this CreateFolderDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this CreateFolderDetails.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this CreateFolderDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this CreateFolderDetails.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def last_job_key(self):
+ """
+ Gets the last_job_key of this CreateFolderDetails.
+ The job key of the harvest process that updated the folder definition from the source system.
+
+
+ :return: The last_job_key of this CreateFolderDetails.
+ :rtype: str
+ """
+ return self._last_job_key
+
+ @last_job_key.setter
+ def last_job_key(self, last_job_key):
+ """
+ Sets the last_job_key of this CreateFolderDetails.
+ The job key of the harvest process that updated the folder definition from the source system.
+
+
+ :param last_job_key: The last_job_key of this CreateFolderDetails.
+ :type: str
+ """
+ self._last_job_key = last_job_key
+
+ @property
+ def harvest_status(self):
+ """
+ Gets the harvest_status of this CreateFolderDetails.
+ Folder harvesting status.
+
+
+ :return: The harvest_status of this CreateFolderDetails.
+ :rtype: str
+ """
+ return self._harvest_status
+
+ @harvest_status.setter
+ def harvest_status(self, harvest_status):
+ """
+ Sets the harvest_status of this CreateFolderDetails.
+ Folder harvesting status.
+
+
+ :param harvest_status: The harvest_status of this CreateFolderDetails.
+ :type: str
+ """
+ self._harvest_status = harvest_status
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_glossary_details.py b/src/oci/data_catalog/models/create_glossary_details.py
new file mode 100644
index 0000000000..536e1c078f
--- /dev/null
+++ b/src/oci/data_catalog/models/create_glossary_details.py
@@ -0,0 +1,164 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateGlossaryDetails(object):
+ """
+ Properties used in glossary create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateGlossaryDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateGlossaryDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateGlossaryDetails.
+ :type description: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this CreateGlossaryDetails.
+ :type workflow_status: str
+
+ :param owner:
+ The value to assign to the owner property of this CreateGlossaryDetails.
+ :type owner: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'workflow_status': 'str',
+ 'owner': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'workflow_status': 'workflowStatus',
+ 'owner': 'owner'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._workflow_status = None
+ self._owner = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateGlossaryDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateGlossaryDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateGlossaryDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateGlossaryDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateGlossaryDetails.
+ Detailed description of the glossary.
+
+
+ :return: The description of this CreateGlossaryDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateGlossaryDetails.
+ Detailed description of the glossary.
+
+
+ :param description: The description of this CreateGlossaryDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this CreateGlossaryDetails.
+ Status of the approval process workflow for this business glossary.
+
+
+ :return: The workflow_status of this CreateGlossaryDetails.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this CreateGlossaryDetails.
+ Status of the approval process workflow for this business glossary.
+
+
+ :param workflow_status: The workflow_status of this CreateGlossaryDetails.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ @property
+ def owner(self):
+ """
+ Gets the owner of this CreateGlossaryDetails.
+ OCID of the user who is the owner of the glossary.
+
+
+ :return: The owner of this CreateGlossaryDetails.
+ :rtype: str
+ """
+ return self._owner
+
+ @owner.setter
+ def owner(self, owner):
+ """
+ Sets the owner of this CreateGlossaryDetails.
+ OCID of the user who is the owner of the glossary.
+
+
+ :param owner: The owner of this CreateGlossaryDetails.
+ :type: str
+ """
+ self._owner = owner
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_job_definition_details.py b/src/oci/data_catalog/models/create_job_definition_details.py
new file mode 100644
index 0000000000..3dcc946dea
--- /dev/null
+++ b/src/oci/data_catalog/models/create_job_definition_details.py
@@ -0,0 +1,329 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateJobDefinitionDetails(object):
+ """
+ Representation of a job definition Resource. Job definitions define the harvest scope and includes the list of
+ objects to be harvested along with a schedule. The list of objects is usually specified through a combination of
+ object type, regular expressions, or specific names of objects and a sample size for the data harvested.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateJobDefinitionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateJobDefinitionDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateJobDefinitionDetails.
+ :type description: str
+
+ :param job_type:
+ The value to assign to the job_type property of this CreateJobDefinitionDetails.
+ :type job_type: str
+
+ :param is_incremental:
+ The value to assign to the is_incremental property of this CreateJobDefinitionDetails.
+ :type is_incremental: bool
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this CreateJobDefinitionDetails.
+ :type data_asset_key: str
+
+ :param connection_key:
+ The value to assign to the connection_key property of this CreateJobDefinitionDetails.
+ :type connection_key: str
+
+ :param is_sample_data_extracted:
+ The value to assign to the is_sample_data_extracted property of this CreateJobDefinitionDetails.
+ :type is_sample_data_extracted: bool
+
+ :param sample_data_size_in_mbs:
+ The value to assign to the sample_data_size_in_mbs property of this CreateJobDefinitionDetails.
+ :type sample_data_size_in_mbs: int
+
+ :param properties:
+ The value to assign to the properties property of this CreateJobDefinitionDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'job_type': 'str',
+ 'is_incremental': 'bool',
+ 'data_asset_key': 'str',
+ 'connection_key': 'str',
+ 'is_sample_data_extracted': 'bool',
+ 'sample_data_size_in_mbs': 'int',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'job_type': 'jobType',
+ 'is_incremental': 'isIncremental',
+ 'data_asset_key': 'dataAssetKey',
+ 'connection_key': 'connectionKey',
+ 'is_sample_data_extracted': 'isSampleDataExtracted',
+ 'sample_data_size_in_mbs': 'sampleDataSizeInMBs',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._job_type = None
+ self._is_incremental = None
+ self._data_asset_key = None
+ self._connection_key = None
+ self._is_sample_data_extracted = None
+ self._sample_data_size_in_mbs = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateJobDefinitionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateJobDefinitionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateJobDefinitionDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateJobDefinitionDetails.
+ Detailed description of the job definition.
+
+
+ :return: The description of this CreateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateJobDefinitionDetails.
+ Detailed description of the job definition.
+
+
+ :param description: The description of this CreateJobDefinitionDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def job_type(self):
+ """
+ **[Required]** Gets the job_type of this CreateJobDefinitionDetails.
+ Type of the job definition.
+
+
+ :return: The job_type of this CreateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this CreateJobDefinitionDetails.
+ Type of the job definition.
+
+
+ :param job_type: The job_type of this CreateJobDefinitionDetails.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def is_incremental(self):
+ """
+ Gets the is_incremental of this CreateJobDefinitionDetails.
+ Specifies if the job definition is incremental or full.
+
+
+ :return: The is_incremental of this CreateJobDefinitionDetails.
+ :rtype: bool
+ """
+ return self._is_incremental
+
+ @is_incremental.setter
+ def is_incremental(self, is_incremental):
+ """
+ Sets the is_incremental of this CreateJobDefinitionDetails.
+ Specifies if the job definition is incremental or full.
+
+
+ :param is_incremental: The is_incremental of this CreateJobDefinitionDetails.
+ :type: bool
+ """
+ self._is_incremental = is_incremental
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this CreateJobDefinitionDetails.
+ The key of the data asset for which the job is defined.
+
+
+ :return: The data_asset_key of this CreateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this CreateJobDefinitionDetails.
+ The key of the data asset for which the job is defined.
+
+
+ :param data_asset_key: The data_asset_key of this CreateJobDefinitionDetails.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def connection_key(self):
+ """
+ Gets the connection_key of this CreateJobDefinitionDetails.
+ The key of the connection resource to be used for the job.
+
+
+ :return: The connection_key of this CreateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._connection_key
+
+ @connection_key.setter
+ def connection_key(self, connection_key):
+ """
+ Sets the connection_key of this CreateJobDefinitionDetails.
+ The key of the connection resource to be used for the job.
+
+
+ :param connection_key: The connection_key of this CreateJobDefinitionDetails.
+ :type: str
+ """
+ self._connection_key = connection_key
+
+ @property
+ def is_sample_data_extracted(self):
+ """
+ Gets the is_sample_data_extracted of this CreateJobDefinitionDetails.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :return: The is_sample_data_extracted of this CreateJobDefinitionDetails.
+ :rtype: bool
+ """
+ return self._is_sample_data_extracted
+
+ @is_sample_data_extracted.setter
+ def is_sample_data_extracted(self, is_sample_data_extracted):
+ """
+ Sets the is_sample_data_extracted of this CreateJobDefinitionDetails.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :param is_sample_data_extracted: The is_sample_data_extracted of this CreateJobDefinitionDetails.
+ :type: bool
+ """
+ self._is_sample_data_extracted = is_sample_data_extracted
+
+ @property
+ def sample_data_size_in_mbs(self):
+ """
+ Gets the sample_data_size_in_mbs of this CreateJobDefinitionDetails.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :return: The sample_data_size_in_mbs of this CreateJobDefinitionDetails.
+ :rtype: int
+ """
+ return self._sample_data_size_in_mbs
+
+ @sample_data_size_in_mbs.setter
+ def sample_data_size_in_mbs(self, sample_data_size_in_mbs):
+ """
+ Sets the sample_data_size_in_mbs of this CreateJobDefinitionDetails.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :param sample_data_size_in_mbs: The sample_data_size_in_mbs of this CreateJobDefinitionDetails.
+ :type: int
+ """
+ self._sample_data_size_in_mbs = sample_data_size_in_mbs
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this CreateJobDefinitionDetails.
+ A map of maps that contains the properties which are specific to the job type. Each job type
+ definition may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job definitions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this CreateJobDefinitionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateJobDefinitionDetails.
+ A map of maps that contains the properties which are specific to the job type. Each job type
+ definition may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job definitions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this CreateJobDefinitionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_job_details.py b/src/oci/data_catalog/models/create_job_details.py
new file mode 100644
index 0000000000..fb6d225bc9
--- /dev/null
+++ b/src/oci/data_catalog/models/create_job_details.py
@@ -0,0 +1,271 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateJobDetails(object):
+ """
+ Properties used to create a job.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateJobDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateJobDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateJobDetails.
+ :type description: str
+
+ :param schedule_cron_expression:
+ The value to assign to the schedule_cron_expression property of this CreateJobDetails.
+ :type schedule_cron_expression: str
+
+ :param time_schedule_begin:
+ The value to assign to the time_schedule_begin property of this CreateJobDetails.
+ :type time_schedule_begin: datetime
+
+ :param time_schedule_end:
+ The value to assign to the time_schedule_end property of this CreateJobDetails.
+ :type time_schedule_end: datetime
+
+ :param connection_key:
+ The value to assign to the connection_key property of this CreateJobDetails.
+ :type connection_key: str
+
+ :param job_definition_key:
+ The value to assign to the job_definition_key property of this CreateJobDetails.
+ :type job_definition_key: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'schedule_cron_expression': 'str',
+ 'time_schedule_begin': 'datetime',
+ 'time_schedule_end': 'datetime',
+ 'connection_key': 'str',
+ 'job_definition_key': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'schedule_cron_expression': 'scheduleCronExpression',
+ 'time_schedule_begin': 'timeScheduleBegin',
+ 'time_schedule_end': 'timeScheduleEnd',
+ 'connection_key': 'connectionKey',
+ 'job_definition_key': 'jobDefinitionKey'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._schedule_cron_expression = None
+ self._time_schedule_begin = None
+ self._time_schedule_end = None
+ self._connection_key = None
+ self._job_definition_key = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateJobDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateJobDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateJobDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateJobDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateJobDetails.
+ Detailed description of the job.
+
+
+ :return: The description of this CreateJobDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateJobDetails.
+ Detailed description of the job.
+
+
+ :param description: The description of this CreateJobDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def schedule_cron_expression(self):
+ """
+ Gets the schedule_cron_expression of this CreateJobDetails.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :return: The schedule_cron_expression of this CreateJobDetails.
+ :rtype: str
+ """
+ return self._schedule_cron_expression
+
+ @schedule_cron_expression.setter
+ def schedule_cron_expression(self, schedule_cron_expression):
+ """
+ Sets the schedule_cron_expression of this CreateJobDetails.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :param schedule_cron_expression: The schedule_cron_expression of this CreateJobDetails.
+ :type: str
+ """
+ self._schedule_cron_expression = schedule_cron_expression
+
+ @property
+ def time_schedule_begin(self):
+ """
+ Gets the time_schedule_begin of this CreateJobDetails.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_begin of this CreateJobDetails.
+ :rtype: datetime
+ """
+ return self._time_schedule_begin
+
+ @time_schedule_begin.setter
+ def time_schedule_begin(self, time_schedule_begin):
+ """
+ Sets the time_schedule_begin of this CreateJobDetails.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_begin: The time_schedule_begin of this CreateJobDetails.
+ :type: datetime
+ """
+ self._time_schedule_begin = time_schedule_begin
+
+ @property
+ def time_schedule_end(self):
+ """
+ Gets the time_schedule_end of this CreateJobDetails.
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_end of this CreateJobDetails.
+ :rtype: datetime
+ """
+ return self._time_schedule_end
+
+ @time_schedule_end.setter
+ def time_schedule_end(self, time_schedule_end):
+ """
+ Sets the time_schedule_end of this CreateJobDetails.
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_end: The time_schedule_end of this CreateJobDetails.
+ :type: datetime
+ """
+ self._time_schedule_end = time_schedule_end
+
+ @property
+ def connection_key(self):
+ """
+ Gets the connection_key of this CreateJobDetails.
+ The key of the connection used by the job. This connection will override the default connection specified in
+ the associated job definition. All executions will use this connection.
+
+
+ :return: The connection_key of this CreateJobDetails.
+ :rtype: str
+ """
+ return self._connection_key
+
+ @connection_key.setter
+ def connection_key(self, connection_key):
+ """
+ Sets the connection_key of this CreateJobDetails.
+ The key of the connection used by the job. This connection will override the default connection specified in
+ the associated job definition. All executions will use this connection.
+
+
+ :param connection_key: The connection_key of this CreateJobDetails.
+ :type: str
+ """
+ self._connection_key = connection_key
+
+ @property
+ def job_definition_key(self):
+ """
+ **[Required]** Gets the job_definition_key of this CreateJobDetails.
+ The unique key of the job definition that defined the scope of this job.
+
+
+ :return: The job_definition_key of this CreateJobDetails.
+ :rtype: str
+ """
+ return self._job_definition_key
+
+ @job_definition_key.setter
+ def job_definition_key(self, job_definition_key):
+ """
+ Sets the job_definition_key of this CreateJobDetails.
+ The unique key of the job definition that defined the scope of this job.
+
+
+ :param job_definition_key: The job_definition_key of this CreateJobDetails.
+ :type: str
+ """
+ self._job_definition_key = job_definition_key
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_job_execution_details.py b/src/oci/data_catalog/models/create_job_execution_details.py
new file mode 100644
index 0000000000..90c7f2793b
--- /dev/null
+++ b/src/oci/data_catalog/models/create_job_execution_details.py
@@ -0,0 +1,490 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateJobExecutionDetails(object):
+ """
+ Properties for creating a new job execution.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateJobExecutionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param sub_type:
+ The value to assign to the sub_type property of this CreateJobExecutionDetails.
+ :type sub_type: str
+
+ :param job_type:
+ The value to assign to the job_type property of this CreateJobExecutionDetails.
+ :type job_type: str
+
+ :param parent_key:
+ The value to assign to the parent_key property of this CreateJobExecutionDetails.
+ :type parent_key: str
+
+ :param time_started:
+ The value to assign to the time_started property of this CreateJobExecutionDetails.
+ :type time_started: datetime
+
+ :param time_ended:
+ The value to assign to the time_ended property of this CreateJobExecutionDetails.
+ :type time_ended: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this CreateJobExecutionDetails.
+ :type lifecycle_state: str
+
+ :param error_code:
+ The value to assign to the error_code property of this CreateJobExecutionDetails.
+ :type error_code: str
+
+ :param error_message:
+ The value to assign to the error_message property of this CreateJobExecutionDetails.
+ :type error_message: str
+
+ :param schedule_instance_key:
+ The value to assign to the schedule_instance_key property of this CreateJobExecutionDetails.
+ :type schedule_instance_key: str
+
+ :param process_key:
+ The value to assign to the process_key property of this CreateJobExecutionDetails.
+ :type process_key: str
+
+ :param external_url:
+ The value to assign to the external_url property of this CreateJobExecutionDetails.
+ :type external_url: str
+
+ :param event_key:
+ The value to assign to the event_key property of this CreateJobExecutionDetails.
+ :type event_key: str
+
+ :param data_entity_key:
+ The value to assign to the data_entity_key property of this CreateJobExecutionDetails.
+ :type data_entity_key: str
+
+ :param properties:
+ The value to assign to the properties property of this CreateJobExecutionDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'sub_type': 'str',
+ 'job_type': 'str',
+ 'parent_key': 'str',
+ 'time_started': 'datetime',
+ 'time_ended': 'datetime',
+ 'lifecycle_state': 'str',
+ 'error_code': 'str',
+ 'error_message': 'str',
+ 'schedule_instance_key': 'str',
+ 'process_key': 'str',
+ 'external_url': 'str',
+ 'event_key': 'str',
+ 'data_entity_key': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'sub_type': 'subType',
+ 'job_type': 'jobType',
+ 'parent_key': 'parentKey',
+ 'time_started': 'timeStarted',
+ 'time_ended': 'timeEnded',
+ 'lifecycle_state': 'lifecycleState',
+ 'error_code': 'errorCode',
+ 'error_message': 'errorMessage',
+ 'schedule_instance_key': 'scheduleInstanceKey',
+ 'process_key': 'processKey',
+ 'external_url': 'externalUrl',
+ 'event_key': 'eventKey',
+ 'data_entity_key': 'dataEntityKey',
+ 'properties': 'properties'
+ }
+
+ self._sub_type = None
+ self._job_type = None
+ self._parent_key = None
+ self._time_started = None
+ self._time_ended = None
+ self._lifecycle_state = None
+ self._error_code = None
+ self._error_message = None
+ self._schedule_instance_key = None
+ self._process_key = None
+ self._external_url = None
+ self._event_key = None
+ self._data_entity_key = None
+ self._properties = None
+
+ @property
+ def sub_type(self):
+ """
+ Gets the sub_type of this CreateJobExecutionDetails.
+ Sub-type of this job execution.
+
+
+ :return: The sub_type of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._sub_type
+
+ @sub_type.setter
+ def sub_type(self, sub_type):
+ """
+ Sets the sub_type of this CreateJobExecutionDetails.
+ Sub-type of this job execution.
+
+
+ :param sub_type: The sub_type of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._sub_type = sub_type
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this CreateJobExecutionDetails.
+ Type of the job execution.
+
+
+ :return: The job_type of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this CreateJobExecutionDetails.
+ Type of the job execution.
+
+
+ :param job_type: The job_type of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def parent_key(self):
+ """
+ Gets the parent_key of this CreateJobExecutionDetails.
+ The unique key of the parent execution or null if this job execution has no parent.
+
+
+ :return: The parent_key of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._parent_key
+
+ @parent_key.setter
+ def parent_key(self, parent_key):
+ """
+ Sets the parent_key of this CreateJobExecutionDetails.
+ The unique key of the parent execution or null if this job execution has no parent.
+
+
+ :param parent_key: The parent_key of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._parent_key = parent_key
+
+ @property
+ def time_started(self):
+ """
+ Gets the time_started of this CreateJobExecutionDetails.
+ Time that job execution started. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_started of this CreateJobExecutionDetails.
+ :rtype: datetime
+ """
+ return self._time_started
+
+ @time_started.setter
+ def time_started(self, time_started):
+ """
+ Sets the time_started of this CreateJobExecutionDetails.
+ Time that job execution started. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_started: The time_started of this CreateJobExecutionDetails.
+ :type: datetime
+ """
+ self._time_started = time_started
+
+ @property
+ def time_ended(self):
+ """
+ Gets the time_ended of this CreateJobExecutionDetails.
+ Time that the job execution ended or null if it hasn't yet completed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_ended of this CreateJobExecutionDetails.
+ :rtype: datetime
+ """
+ return self._time_ended
+
+ @time_ended.setter
+ def time_ended(self, time_ended):
+ """
+ Sets the time_ended of this CreateJobExecutionDetails.
+ Time that the job execution ended or null if it hasn't yet completed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_ended: The time_ended of this CreateJobExecutionDetails.
+ :type: datetime
+ """
+ self._time_ended = time_ended
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this CreateJobExecutionDetails.
+ Status of the job execution, such as running, paused, or completed.
+
+
+ :return: The lifecycle_state of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this CreateJobExecutionDetails.
+ Status of the job execution, such as running, paused, or completed.
+
+
+ :param lifecycle_state: The lifecycle_state of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def error_code(self):
+ """
+ Gets the error_code of this CreateJobExecutionDetails.
+ Error code returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :return: The error_code of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._error_code
+
+ @error_code.setter
+ def error_code(self, error_code):
+ """
+ Sets the error_code of this CreateJobExecutionDetails.
+ Error code returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :param error_code: The error_code of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._error_code = error_code
+
+ @property
+ def error_message(self):
+ """
+ Gets the error_message of this CreateJobExecutionDetails.
+ Error message returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :return: The error_message of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._error_message
+
+ @error_message.setter
+ def error_message(self, error_message):
+ """
+ Sets the error_message of this CreateJobExecutionDetails.
+ Error message returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :param error_message: The error_message of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._error_message = error_message
+
+ @property
+ def schedule_instance_key(self):
+ """
+ Gets the schedule_instance_key of this CreateJobExecutionDetails.
+ The unique key of the triggering external scheduler resource or null if this job execution is not externally triggered.
+
+
+ :return: The schedule_instance_key of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._schedule_instance_key
+
+ @schedule_instance_key.setter
+ def schedule_instance_key(self, schedule_instance_key):
+ """
+ Sets the schedule_instance_key of this CreateJobExecutionDetails.
+ The unique key of the triggering external scheduler resource or null if this job execution is not externally triggered.
+
+
+ :param schedule_instance_key: The schedule_instance_key of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._schedule_instance_key = schedule_instance_key
+
+ @property
+ def process_key(self):
+ """
+ Gets the process_key of this CreateJobExecutionDetails.
+ Process identifier related to the job execution if the job is an external job.
+
+
+ :return: The process_key of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._process_key
+
+ @process_key.setter
+ def process_key(self, process_key):
+ """
+ Sets the process_key of this CreateJobExecutionDetails.
+ Process identifier related to the job execution if the job is an external job.
+
+
+ :param process_key: The process_key of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._process_key = process_key
+
+ @property
+ def external_url(self):
+ """
+ Gets the external_url of this CreateJobExecutionDetails.
+ If the job is an external process, then a URL of the job for accessing this resource and its status.
+
+
+ :return: The external_url of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._external_url
+
+ @external_url.setter
+ def external_url(self, external_url):
+ """
+ Sets the external_url of this CreateJobExecutionDetails.
+ If the job is an external process, then a URL of the job for accessing this resource and its status.
+
+
+ :param external_url: The external_url of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._external_url = external_url
+
+ @property
+ def event_key(self):
+ """
+ Gets the event_key of this CreateJobExecutionDetails.
+ An identifier used for log message correlation.
+
+
+ :return: The event_key of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._event_key
+
+ @event_key.setter
+ def event_key(self, event_key):
+ """
+ Sets the event_key of this CreateJobExecutionDetails.
+ An identifier used for log message correlation.
+
+
+ :param event_key: The event_key of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._event_key = event_key
+
+ @property
+ def data_entity_key(self):
+ """
+ Gets the data_entity_key of this CreateJobExecutionDetails.
+ The key of the associated data entity resource.
+
+
+ :return: The data_entity_key of this CreateJobExecutionDetails.
+ :rtype: str
+ """
+ return self._data_entity_key
+
+ @data_entity_key.setter
+ def data_entity_key(self, data_entity_key):
+ """
+ Sets the data_entity_key of this CreateJobExecutionDetails.
+ The key of the associated data entity resource.
+
+
+ :param data_entity_key: The data_entity_key of this CreateJobExecutionDetails.
+ :type: str
+ """
+ self._data_entity_key = data_entity_key
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this CreateJobExecutionDetails.
+ A map of maps that contains the execution context properties which are specific to a job execution. Each job
+ execution may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job executions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this CreateJobExecutionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this CreateJobExecutionDetails.
+ A map of maps that contains the execution context properties which are specific to a job execution. Each job
+ execution may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job executions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this CreateJobExecutionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_tag_details.py b/src/oci/data_catalog/models/create_tag_details.py
new file mode 100644
index 0000000000..8a45d57d07
--- /dev/null
+++ b/src/oci/data_catalog/models/create_tag_details.py
@@ -0,0 +1,102 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateTagDetails(object):
+ """
+ Properties used in tag create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateTagDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this CreateTagDetails.
+ :type name: str
+
+ :param term_key:
+ The value to assign to the term_key property of this CreateTagDetails.
+ :type term_key: str
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'term_key': 'str'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'term_key': 'termKey'
+ }
+
+ self._name = None
+ self._term_key = None
+
+ @property
+ def name(self):
+ """
+ Gets the name of this CreateTagDetails.
+ The name of the tag in the case of a free form tag.
+ When linking to a glossary term, this field is not specified.
+
+
+ :return: The name of this CreateTagDetails.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this CreateTagDetails.
+ The name of the tag in the case of a free form tag.
+ When linking to a glossary term, this field is not specified.
+
+
+ :param name: The name of this CreateTagDetails.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this CreateTagDetails.
+ Unique key of the related term or null in the case of a free form tag.
+
+
+ :return: The term_key of this CreateTagDetails.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this CreateTagDetails.
+ Unique key of the related term or null in the case of a free form tag.
+
+
+ :param term_key: The term_key of this CreateTagDetails.
+ :type: str
+ """
+ self._term_key = term_key
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_term_details.py b/src/oci/data_catalog/models/create_term_details.py
new file mode 100644
index 0000000000..e3371db03a
--- /dev/null
+++ b/src/oci/data_catalog/models/create_term_details.py
@@ -0,0 +1,226 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateTermDetails(object):
+ """
+ Properties used in term create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateTermDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateTermDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateTermDetails.
+ :type description: str
+
+ :param is_allowed_to_have_child_terms:
+ The value to assign to the is_allowed_to_have_child_terms property of this CreateTermDetails.
+ :type is_allowed_to_have_child_terms: bool
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this CreateTermDetails.
+ :type parent_term_key: str
+
+ :param owner:
+ The value to assign to the owner property of this CreateTermDetails.
+ :type owner: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this CreateTermDetails.
+ :type workflow_status: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'is_allowed_to_have_child_terms': 'bool',
+ 'parent_term_key': 'str',
+ 'owner': 'str',
+ 'workflow_status': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'is_allowed_to_have_child_terms': 'isAllowedToHaveChildTerms',
+ 'parent_term_key': 'parentTermKey',
+ 'owner': 'owner',
+ 'workflow_status': 'workflowStatus'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._is_allowed_to_have_child_terms = None
+ self._parent_term_key = None
+ self._owner = None
+ self._workflow_status = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateTermDetails.
+ A user-friendly display name. Is changeable. The combination of 'displayName' and 'parentTermKey'
+ must be unique. Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateTermDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateTermDetails.
+ A user-friendly display name. Is changeable. The combination of 'displayName' and 'parentTermKey'
+ must be unique. Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateTermDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateTermDetails.
+ Detailed description of the term.
+
+
+ :return: The description of this CreateTermDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateTermDetails.
+ Detailed description of the term.
+
+
+ :param description: The description of this CreateTermDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def is_allowed_to_have_child_terms(self):
+ """
+ Gets the is_allowed_to_have_child_terms of this CreateTermDetails.
+ Indicates whether a term may contain child terms.
+
+
+ :return: The is_allowed_to_have_child_terms of this CreateTermDetails.
+ :rtype: bool
+ """
+ return self._is_allowed_to_have_child_terms
+
+ @is_allowed_to_have_child_terms.setter
+ def is_allowed_to_have_child_terms(self, is_allowed_to_have_child_terms):
+ """
+ Sets the is_allowed_to_have_child_terms of this CreateTermDetails.
+ Indicates whether a term may contain child terms.
+
+
+ :param is_allowed_to_have_child_terms: The is_allowed_to_have_child_terms of this CreateTermDetails.
+ :type: bool
+ """
+ self._is_allowed_to_have_child_terms = is_allowed_to_have_child_terms
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this CreateTermDetails.
+ The terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this CreateTermDetails.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this CreateTermDetails.
+ The terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this CreateTermDetails.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def owner(self):
+ """
+ Gets the owner of this CreateTermDetails.
+ OCID of the user who is the owner of this business terminology.
+
+
+ :return: The owner of this CreateTermDetails.
+ :rtype: str
+ """
+ return self._owner
+
+ @owner.setter
+ def owner(self, owner):
+ """
+ Sets the owner of this CreateTermDetails.
+ OCID of the user who is the owner of this business terminology.
+
+
+ :param owner: The owner of this CreateTermDetails.
+ :type: str
+ """
+ self._owner = owner
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this CreateTermDetails.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :return: The workflow_status of this CreateTermDetails.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this CreateTermDetails.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :param workflow_status: The workflow_status of this CreateTermDetails.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/create_term_relationship_details.py b/src/oci/data_catalog/models/create_term_relationship_details.py
new file mode 100644
index 0000000000..3f04ef7198
--- /dev/null
+++ b/src/oci/data_catalog/models/create_term_relationship_details.py
@@ -0,0 +1,133 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateTermRelationshipDetails(object):
+ """
+ Properties used in term relationship create operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateTermRelationshipDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateTermRelationshipDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this CreateTermRelationshipDetails.
+ :type description: str
+
+ :param related_term_key:
+ The value to assign to the related_term_key property of this CreateTermRelationshipDetails.
+ :type related_term_key: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'related_term_key': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'related_term_key': 'relatedTermKey'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._related_term_key = None
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateTermRelationshipDetails.
+ A user-friendly display name. Is changeable. The combination of 'displayName' and 'parentTermKey'
+ must be unique. Avoid entering confidential information. This is the same as 'relationshipType' for 'termRelationship'.
+
+
+ :return: The display_name of this CreateTermRelationshipDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateTermRelationshipDetails.
+ A user-friendly display name. Is changeable. The combination of 'displayName' and 'parentTermKey'
+ must be unique. Avoid entering confidential information. This is the same as 'relationshipType' for 'termRelationship'.
+
+
+ :param display_name: The display_name of this CreateTermRelationshipDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateTermRelationshipDetails.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :return: The description of this CreateTermRelationshipDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateTermRelationshipDetails.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :param description: The description of this CreateTermRelationshipDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def related_term_key(self):
+ """
+ **[Required]** Gets the related_term_key of this CreateTermRelationshipDetails.
+ Unique id of the related term.
+
+
+ :return: The related_term_key of this CreateTermRelationshipDetails.
+ :rtype: str
+ """
+ return self._related_term_key
+
+ @related_term_key.setter
+ def related_term_key(self, related_term_key):
+ """
+ Sets the related_term_key of this CreateTermRelationshipDetails.
+ Unique id of the related term.
+
+
+ :param related_term_key: The related_term_key of this CreateTermRelationshipDetails.
+ :type: str
+ """
+ self._related_term_key = related_term_key
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset.py b/src/oci/data_catalog/models/data_asset.py
new file mode 100644
index 0000000000..2f449d06be
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset.py
@@ -0,0 +1,463 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAsset(object):
+ """
+ Data asset representation. A physical store, or stream, of data known to the data catalog and containing
+ one or many data entities, possibly in an organized structure of folders. A data asset is often synonymous
+ with a 'System', such as a database, or may be a file container or a message stream.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAsset object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this DataAsset.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this DataAsset.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this DataAsset.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this DataAsset.
+ :type catalog_id: str
+
+ :param external_key:
+ The value to assign to the external_key property of this DataAsset.
+ :type external_key: str
+
+ :param type_key:
+ The value to assign to the type_key property of this DataAsset.
+ :type type_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this DataAsset.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DataAsset.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this DataAsset.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this DataAsset.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this DataAsset.
+ :type updated_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this DataAsset.
+ :type uri: str
+
+ :param properties:
+ The value to assign to the properties property of this DataAsset.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'external_key': 'str',
+ 'type_key': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'uri': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'external_key': 'externalKey',
+ 'type_key': 'typeKey',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'uri': 'uri',
+ 'properties': 'properties'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._catalog_id = None
+ self._external_key = None
+ self._type_key = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._uri = None
+ self._properties = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataAsset.
+ Unique data asset key that is immutable.
+
+
+ :return: The key of this DataAsset.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataAsset.
+ Unique data asset key that is immutable.
+
+
+ :param key: The key of this DataAsset.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this DataAsset.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this DataAsset.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this DataAsset.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this DataAsset.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this DataAsset.
+ Detailed description of the data asset.
+
+
+ :return: The description of this DataAsset.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this DataAsset.
+ Detailed description of the data asset.
+
+
+ :param description: The description of this DataAsset.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this DataAsset.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this DataAsset.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this DataAsset.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this DataAsset.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this DataAsset.
+ External URI that can be used to reference the object. Format will differ based on the type of object.
+
+
+ :return: The external_key of this DataAsset.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this DataAsset.
+ External URI that can be used to reference the object. Format will differ based on the type of object.
+
+
+ :param external_key: The external_key of this DataAsset.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def type_key(self):
+ """
+ Gets the type_key of this DataAsset.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :return: The type_key of this DataAsset.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this DataAsset.
+ The key of the object type. Type key's can be found via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this DataAsset.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this DataAsset.
+ The current state of the data asset.
+
+
+ :return: The lifecycle_state of this DataAsset.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this DataAsset.
+ The current state of the data asset.
+
+
+ :param lifecycle_state: The lifecycle_state of this DataAsset.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this DataAsset.
+ The date and time the data asset was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this DataAsset.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DataAsset.
+ The date and time the data asset was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this DataAsset.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this DataAsset.
+ The last time that any change was made to the data asset. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this DataAsset.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this DataAsset.
+ The last time that any change was made to the data asset. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this DataAsset.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this DataAsset.
+ OCID of the user who created the data asset.
+
+
+ :return: The created_by_id of this DataAsset.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this DataAsset.
+ OCID of the user who created the data asset.
+
+
+ :param created_by_id: The created_by_id of this DataAsset.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this DataAsset.
+ OCID of the user who last modified the data asset.
+
+
+ :return: The updated_by_id of this DataAsset.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this DataAsset.
+ OCID of the user who last modified the data asset.
+
+
+ :param updated_by_id: The updated_by_id of this DataAsset.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this DataAsset.
+ URI to the data asset instance in the API.
+
+
+ :return: The uri of this DataAsset.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this DataAsset.
+ URI to the data asset instance in the API.
+
+
+ :param uri: The uri of this DataAsset.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this DataAsset.
+ A map of maps that contains the properties which are specific to the asset type. Each data asset type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data assets have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this DataAsset.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this DataAsset.
+ A map of maps that contains the properties which are specific to the asset type. Each data asset type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data assets have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this DataAsset.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset_collection.py b/src/oci/data_catalog/models/data_asset_collection.py
new file mode 100644
index 0000000000..6a8ee5689c
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAssetCollection(object):
+ """
+ Results of a data assets listing. A data asset is often synonymous with a 'System', such as a database, or may be a file container or a message stream.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAssetCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this DataAssetCollection.
+ :type items: list[DataAssetSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[DataAssetSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this DataAssetCollection.
+ Collection of data asset summaries.
+
+
+ :return: The items of this DataAssetCollection.
+ :rtype: list[DataAssetSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this DataAssetCollection.
+ Collection of data asset summaries.
+
+
+ :param items: The items of this DataAssetCollection.
+ :type: list[DataAssetSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset_permissions_summary.py b/src/oci/data_catalog/models/data_asset_permissions_summary.py
new file mode 100644
index 0000000000..bbed05cac1
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset_permissions_summary.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAssetPermissionsSummary(object):
+ """
+ Permissions object for data assets.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAssetPermissionsSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this DataAssetPermissionsSummary.
+ :type data_asset_key: str
+
+ :param user_permissions:
+ The value to assign to the user_permissions property of this DataAssetPermissionsSummary.
+ :type user_permissions: list[str]
+
+ """
+ self.swagger_types = {
+ 'data_asset_key': 'str',
+ 'user_permissions': 'list[str]'
+ }
+
+ self.attribute_map = {
+ 'data_asset_key': 'dataAssetKey',
+ 'user_permissions': 'userPermissions'
+ }
+
+ self._data_asset_key = None
+ self._user_permissions = None
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this DataAssetPermissionsSummary.
+ The unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this DataAssetPermissionsSummary.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this DataAssetPermissionsSummary.
+ The unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this DataAssetPermissionsSummary.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def user_permissions(self):
+ """
+ Gets the user_permissions of this DataAssetPermissionsSummary.
+ An array of permissions.
+
+
+ :return: The user_permissions of this DataAssetPermissionsSummary.
+ :rtype: list[str]
+ """
+ return self._user_permissions
+
+ @user_permissions.setter
+ def user_permissions(self, user_permissions):
+ """
+ Sets the user_permissions of this DataAssetPermissionsSummary.
+ An array of permissions.
+
+
+ :param user_permissions: The user_permissions of this DataAssetPermissionsSummary.
+ :type: list[str]
+ """
+ self._user_permissions = user_permissions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset_summary.py b/src/oci/data_catalog/models/data_asset_summary.py
new file mode 100644
index 0000000000..abe6338b0a
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset_summary.py
@@ -0,0 +1,327 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAssetSummary(object):
+ """
+ Summary of a data asset. A physical store, or stream, of data known to the data catalog and containing one or
+ many data entities, possibly in an organized structure of folders. A data asset is often synonymous with
+ a 'System', such as a database, or may be a file container or a message stream.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAssetSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this DataAssetSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this DataAssetSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this DataAssetSummary.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this DataAssetSummary.
+ :type catalog_id: str
+
+ :param external_key:
+ The value to assign to the external_key property of this DataAssetSummary.
+ :type external_key: str
+
+ :param uri:
+ The value to assign to the uri property of this DataAssetSummary.
+ :type uri: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DataAssetSummary.
+ :type time_created: datetime
+
+ :param type_key:
+ The value to assign to the type_key property of this DataAssetSummary.
+ :type type_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this DataAssetSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'external_key': 'str',
+ 'uri': 'str',
+ 'time_created': 'datetime',
+ 'type_key': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'external_key': 'externalKey',
+ 'uri': 'uri',
+ 'time_created': 'timeCreated',
+ 'type_key': 'typeKey',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._catalog_id = None
+ self._external_key = None
+ self._uri = None
+ self._time_created = None
+ self._type_key = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataAssetSummary.
+ Unique data asset key that is immutable.
+
+
+ :return: The key of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataAssetSummary.
+ Unique data asset key that is immutable.
+
+
+ :param key: The key of this DataAssetSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this DataAssetSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this DataAssetSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this DataAssetSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this DataAssetSummary.
+ Detailed description of the data asset.
+
+
+ :return: The description of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this DataAssetSummary.
+ Detailed description of the data asset.
+
+
+ :param description: The description of this DataAssetSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this DataAssetSummary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this DataAssetSummary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this DataAssetSummary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this DataAssetSummary.
+ External URI that can be used to reference the object. Format will differ based on the type of object.
+
+
+ :return: The external_key of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this DataAssetSummary.
+ External URI that can be used to reference the object. Format will differ based on the type of object.
+
+
+ :param external_key: The external_key of this DataAssetSummary.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this DataAssetSummary.
+ URI to the data asset instance in the API.
+
+
+ :return: The uri of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this DataAssetSummary.
+ URI to the data asset instance in the API.
+
+
+ :param uri: The uri of this DataAssetSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this DataAssetSummary.
+ The date and time the data asset was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this DataAssetSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DataAssetSummary.
+ The date and time the data asset was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this DataAssetSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def type_key(self):
+ """
+ Gets the type_key of this DataAssetSummary.
+ The key of the object type. Type keys's can be found via the '/types' endpoint.
+
+
+ :return: The type_key of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this DataAssetSummary.
+ The key of the object type. Type keys's can be found via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this DataAssetSummary.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this DataAssetSummary.
+ State of the data asset.
+
+
+ :return: The lifecycle_state of this DataAssetSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this DataAssetSummary.
+ State of the data asset.
+
+
+ :param lifecycle_state: The lifecycle_state of this DataAssetSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset_tag.py b/src/oci/data_catalog/models/data_asset_tag.py
new file mode 100644
index 0000000000..10cc40fb4b
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset_tag.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAssetTag(object):
+ """
+ Represents an association of a data asset to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAssetTag object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this DataAssetTag.
+ :type data_asset_key: str
+
+ :param key:
+ The value to assign to the key property of this DataAssetTag.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this DataAssetTag.
+ :type name: str
+
+ :param term_key:
+ The value to assign to the term_key property of this DataAssetTag.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this DataAssetTag.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this DataAssetTag.
+ :type term_description: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this DataAssetTag.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DataAssetTag.
+ :type time_created: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this DataAssetTag.
+ :type created_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this DataAssetTag.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'data_asset_key': 'str',
+ 'key': 'str',
+ 'name': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'created_by_id': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'data_asset_key': 'dataAssetKey',
+ 'key': 'key',
+ 'name': 'name',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'created_by_id': 'createdById',
+ 'uri': 'uri'
+ }
+
+ self._data_asset_key = None
+ self._key = None
+ self._name = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._created_by_id = None
+ self._uri = None
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this DataAssetTag.
+ The unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this DataAssetTag.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this DataAssetTag.
+ The unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this DataAssetTag.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataAssetTag.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this DataAssetTag.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataAssetTag.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this DataAssetTag.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this DataAssetTag.
+ Name of the tag which matches the term name.
+
+
+ :return: The name of this DataAssetTag.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DataAssetTag.
+ Name of the tag which matches the term name.
+
+
+ :param name: The name of this DataAssetTag.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this DataAssetTag.
+ Unique key of the related term.
+
+
+ :return: The term_key of this DataAssetTag.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this DataAssetTag.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this DataAssetTag.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this DataAssetTag.
+ Path of the related term.
+
+
+ :return: The term_path of this DataAssetTag.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this DataAssetTag.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this DataAssetTag.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this DataAssetTag.
+ Description of the related term.
+
+
+ :return: The term_description of this DataAssetTag.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this DataAssetTag.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this DataAssetTag.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this DataAssetTag.
+ The current state of the tag.
+
+
+ :return: The lifecycle_state of this DataAssetTag.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this DataAssetTag.
+ The current state of the tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this DataAssetTag.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this DataAssetTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this DataAssetTag.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DataAssetTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this DataAssetTag.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this DataAssetTag.
+ OCID of the user who created the tag.
+
+
+ :return: The created_by_id of this DataAssetTag.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this DataAssetTag.
+ OCID of the user who created the tag.
+
+
+ :param created_by_id: The created_by_id of this DataAssetTag.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this DataAssetTag.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this DataAssetTag.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this DataAssetTag.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this DataAssetTag.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset_tag_collection.py b/src/oci/data_catalog/models/data_asset_tag_collection.py
new file mode 100644
index 0000000000..700f7b2e6c
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset_tag_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAssetTagCollection(object):
+ """
+ Results of a data asset tag listing. Data asset tags represent an association of a data asset to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAssetTagCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this DataAssetTagCollection.
+ :type items: list[DataAssetTagSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[DataAssetTagSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this DataAssetTagCollection.
+ Collection of data asset tags.
+
+
+ :return: The items of this DataAssetTagCollection.
+ :rtype: list[DataAssetTagSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this DataAssetTagCollection.
+ Collection of data asset tags.
+
+
+ :param items: The items of this DataAssetTagCollection.
+ :type: list[DataAssetTagSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/data_asset_tag_summary.py b/src/oci/data_catalog/models/data_asset_tag_summary.py
new file mode 100644
index 0000000000..6daa553f71
--- /dev/null
+++ b/src/oci/data_catalog/models/data_asset_tag_summary.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class DataAssetTagSummary(object):
+ """
+ Summary of a data asset tag.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new DataAssetTagSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this DataAssetTagSummary.
+ :type data_asset_key: str
+
+ :param key:
+ The value to assign to the key property of this DataAssetTagSummary.
+ :type key: str
+
+ :param time_created:
+ The value to assign to the time_created property of this DataAssetTagSummary.
+ :type time_created: datetime
+
+ :param name:
+ The value to assign to the name property of this DataAssetTagSummary.
+ :type name: str
+
+ :param uri:
+ The value to assign to the uri property of this DataAssetTagSummary.
+ :type uri: str
+
+ :param term_key:
+ The value to assign to the term_key property of this DataAssetTagSummary.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this DataAssetTagSummary.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this DataAssetTagSummary.
+ :type term_description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this DataAssetTagSummary.
+ :type glossary_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this DataAssetTagSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'data_asset_key': 'str',
+ 'key': 'str',
+ 'time_created': 'datetime',
+ 'name': 'str',
+ 'uri': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'glossary_key': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'data_asset_key': 'dataAssetKey',
+ 'key': 'key',
+ 'time_created': 'timeCreated',
+ 'name': 'name',
+ 'uri': 'uri',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'glossary_key': 'glossaryKey',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._data_asset_key = None
+ self._key = None
+ self._time_created = None
+ self._name = None
+ self._uri = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._glossary_key = None
+ self._lifecycle_state = None
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this DataAssetTagSummary.
+ The unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this DataAssetTagSummary.
+ The unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this DataAssetTagSummary.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this DataAssetTagSummary.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this DataAssetTagSummary.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this DataAssetTagSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this DataAssetTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this DataAssetTagSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this DataAssetTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this DataAssetTagSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def name(self):
+ """
+ Gets the name of this DataAssetTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :return: The name of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this DataAssetTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :param name: The name of this DataAssetTagSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this DataAssetTagSummary.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this DataAssetTagSummary.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this DataAssetTagSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this DataAssetTagSummary.
+ Unique key of the related term.
+
+
+ :return: The term_key of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this DataAssetTagSummary.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this DataAssetTagSummary.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this DataAssetTagSummary.
+ Path of the related term.
+
+
+ :return: The term_path of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this DataAssetTagSummary.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this DataAssetTagSummary.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this DataAssetTagSummary.
+ Description of the related term.
+
+
+ :return: The term_description of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this DataAssetTagSummary.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this DataAssetTagSummary.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this DataAssetTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :return: The glossary_key of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this DataAssetTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :param glossary_key: The glossary_key of this DataAssetTagSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this DataAssetTagSummary.
+ State of the Tag.
+
+
+ :return: The lifecycle_state of this DataAssetTagSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this DataAssetTagSummary.
+ State of the Tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this DataAssetTagSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/entity.py b/src/oci/data_catalog/models/entity.py
new file mode 100644
index 0000000000..ab94835571
--- /dev/null
+++ b/src/oci/data_catalog/models/entity.py
@@ -0,0 +1,717 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Entity(object):
+ """
+ Data entity details. A representation of data with a set of attributes, normally representing a single
+ business entity. Synonymous with 'table' or 'view' in a database, or a single logical file structure
+ that one or many files may match.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Entity object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Entity.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Entity.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Entity.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Entity.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Entity.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Entity.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Entity.
+ :type updated_by_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Entity.
+ :type lifecycle_state: str
+
+ :param external_key:
+ The value to assign to the external_key property of this Entity.
+ :type external_key: str
+
+ :param time_external:
+ The value to assign to the time_external property of this Entity.
+ :type time_external: datetime
+
+ :param time_status_updated:
+ The value to assign to the time_status_updated property of this Entity.
+ :type time_status_updated: datetime
+
+ :param is_logical:
+ The value to assign to the is_logical property of this Entity.
+ :type is_logical: bool
+
+ :param is_partition:
+ The value to assign to the is_partition property of this Entity.
+ :type is_partition: bool
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this Entity.
+ :type data_asset_key: str
+
+ :param folder_key:
+ The value to assign to the folder_key property of this Entity.
+ :type folder_key: str
+
+ :param path:
+ The value to assign to the path property of this Entity.
+ :type path: str
+
+ :param harvest_status:
+ The value to assign to the harvest_status property of this Entity.
+ :type harvest_status: str
+
+ :param last_job_key:
+ The value to assign to the last_job_key property of this Entity.
+ :type last_job_key: str
+
+ :param type_key:
+ The value to assign to the type_key property of this Entity.
+ :type type_key: str
+
+ :param uri:
+ The value to assign to the uri property of this Entity.
+ :type uri: str
+
+ :param properties:
+ The value to assign to the properties property of this Entity.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'lifecycle_state': 'str',
+ 'external_key': 'str',
+ 'time_external': 'datetime',
+ 'time_status_updated': 'datetime',
+ 'is_logical': 'bool',
+ 'is_partition': 'bool',
+ 'data_asset_key': 'str',
+ 'folder_key': 'str',
+ 'path': 'str',
+ 'harvest_status': 'str',
+ 'last_job_key': 'str',
+ 'type_key': 'str',
+ 'uri': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'lifecycle_state': 'lifecycleState',
+ 'external_key': 'externalKey',
+ 'time_external': 'timeExternal',
+ 'time_status_updated': 'timeStatusUpdated',
+ 'is_logical': 'isLogical',
+ 'is_partition': 'isPartition',
+ 'data_asset_key': 'dataAssetKey',
+ 'folder_key': 'folderKey',
+ 'path': 'path',
+ 'harvest_status': 'harvestStatus',
+ 'last_job_key': 'lastJobKey',
+ 'type_key': 'typeKey',
+ 'uri': 'uri',
+ 'properties': 'properties'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._lifecycle_state = None
+ self._external_key = None
+ self._time_external = None
+ self._time_status_updated = None
+ self._is_logical = None
+ self._is_partition = None
+ self._data_asset_key = None
+ self._folder_key = None
+ self._path = None
+ self._harvest_status = None
+ self._last_job_key = None
+ self._type_key = None
+ self._uri = None
+ self._properties = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Entity.
+ Unique data entity key that is immutable.
+
+
+ :return: The key of this Entity.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Entity.
+ Unique data entity key that is immutable.
+
+
+ :param key: The key of this Entity.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Entity.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Entity.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Entity.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Entity.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Entity.
+ Detailed description of a data entity.
+
+
+ :return: The description of this Entity.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Entity.
+ Detailed description of a data entity.
+
+
+ :param description: The description of this Entity.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Entity.
+ The date and time the data entity was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Entity.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Entity.
+ The date and time the data entity was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Entity.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Entity.
+ The last time that any change was made to the data entity. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Entity.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Entity.
+ The last time that any change was made to the data entity. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Entity.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Entity.
+ OCID of the user who created this object in the data catalog.
+
+
+ :return: The created_by_id of this Entity.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Entity.
+ OCID of the user who created this object in the data catalog.
+
+
+ :param created_by_id: The created_by_id of this Entity.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Entity.
+ OCID of the user who updated this object in the data catalog.
+
+
+ :return: The updated_by_id of this Entity.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Entity.
+ OCID of the user who updated this object in the data catalog.
+
+
+ :param updated_by_id: The updated_by_id of this Entity.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Entity.
+ The current state of the data entity.
+
+
+ :return: The lifecycle_state of this Entity.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Entity.
+ The current state of the data entity.
+
+
+ :param lifecycle_state: The lifecycle_state of this Entity.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this Entity.
+ Unique external key of this object in the source system.
+
+
+ :return: The external_key of this Entity.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this Entity.
+ Unique external key of this object in the source system.
+
+
+ :param external_key: The external_key of this Entity.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this Entity.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this Entity.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this Entity.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this Entity.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def time_status_updated(self):
+ """
+ Gets the time_status_updated of this Entity.
+ Time that the data entities status was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_status_updated of this Entity.
+ :rtype: datetime
+ """
+ return self._time_status_updated
+
+ @time_status_updated.setter
+ def time_status_updated(self, time_status_updated):
+ """
+ Sets the time_status_updated of this Entity.
+ Time that the data entities status was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_status_updated: The time_status_updated of this Entity.
+ :type: datetime
+ """
+ self._time_status_updated = time_status_updated
+
+ @property
+ def is_logical(self):
+ """
+ Gets the is_logical of this Entity.
+ Property that identifies if the object is a physical object (materialized) or virtual/logical object
+ defined on other objects.
+
+
+ :return: The is_logical of this Entity.
+ :rtype: bool
+ """
+ return self._is_logical
+
+ @is_logical.setter
+ def is_logical(self, is_logical):
+ """
+ Sets the is_logical of this Entity.
+ Property that identifies if the object is a physical object (materialized) or virtual/logical object
+ defined on other objects.
+
+
+ :param is_logical: The is_logical of this Entity.
+ :type: bool
+ """
+ self._is_logical = is_logical
+
+ @property
+ def is_partition(self):
+ """
+ Gets the is_partition of this Entity.
+ Property that identifies if an object is a sub object of a physical or materialized parent object.
+
+
+ :return: The is_partition of this Entity.
+ :rtype: bool
+ """
+ return self._is_partition
+
+ @is_partition.setter
+ def is_partition(self, is_partition):
+ """
+ Sets the is_partition of this Entity.
+ Property that identifies if an object is a sub object of a physical or materialized parent object.
+
+
+ :param is_partition: The is_partition of this Entity.
+ :type: bool
+ """
+ self._is_partition = is_partition
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this Entity.
+ Unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this Entity.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this Entity.
+ Unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this Entity.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this Entity.
+ Key of the associated folder.
+
+
+ :return: The folder_key of this Entity.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this Entity.
+ Key of the associated folder.
+
+
+ :param folder_key: The folder_key of this Entity.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def path(self):
+ """
+ Gets the path of this Entity.
+ Full path of the data entity.
+
+
+ :return: The path of this Entity.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this Entity.
+ Full path of the data entity.
+
+
+ :param path: The path of this Entity.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def harvest_status(self):
+ """
+ Gets the harvest_status of this Entity.
+ Status of the object as updated by the harvest process.
+
+
+ :return: The harvest_status of this Entity.
+ :rtype: str
+ """
+ return self._harvest_status
+
+ @harvest_status.setter
+ def harvest_status(self, harvest_status):
+ """
+ Sets the harvest_status of this Entity.
+ Status of the object as updated by the harvest process.
+
+
+ :param harvest_status: The harvest_status of this Entity.
+ :type: str
+ """
+ self._harvest_status = harvest_status
+
+ @property
+ def last_job_key(self):
+ """
+ Gets the last_job_key of this Entity.
+ Key of the last harvest process to update this object.
+
+
+ :return: The last_job_key of this Entity.
+ :rtype: str
+ """
+ return self._last_job_key
+
+ @last_job_key.setter
+ def last_job_key(self, last_job_key):
+ """
+ Sets the last_job_key of this Entity.
+ Key of the last harvest process to update this object.
+
+
+ :param last_job_key: The last_job_key of this Entity.
+ :type: str
+ """
+ self._last_job_key = last_job_key
+
+ @property
+ def type_key(self):
+ """
+ Gets the type_key of this Entity.
+ The type of data entity object. Type key's can be found via the '/types' endpoint.
+
+
+ :return: The type_key of this Entity.
+ :rtype: str
+ """
+ return self._type_key
+
+ @type_key.setter
+ def type_key(self, type_key):
+ """
+ Sets the type_key of this Entity.
+ The type of data entity object. Type key's can be found via the '/types' endpoint.
+
+
+ :param type_key: The type_key of this Entity.
+ :type: str
+ """
+ self._type_key = type_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Entity.
+ URI to the data entity instance in the API.
+
+
+ :return: The uri of this Entity.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Entity.
+ URI to the data entity instance in the API.
+
+
+ :param uri: The uri of this Entity.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this Entity.
+ A map of maps that contains the properties which are specific to the entity type. Each entity type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data entities have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this Entity.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this Entity.
+ A map of maps that contains the properties which are specific to the entity type. Each entity type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data entities have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this Entity.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/entity_collection.py b/src/oci/data_catalog/models/entity_collection.py
new file mode 100644
index 0000000000..f5174231da
--- /dev/null
+++ b/src/oci/data_catalog/models/entity_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class EntityCollection(object):
+ """
+ Results of a data entities listing. Data entities are representation of a dataset with a set of attributes.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new EntityCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this EntityCollection.
+ :type items: list[EntitySummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[EntitySummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this EntityCollection.
+ Collection of data entities.
+
+
+ :return: The items of this EntityCollection.
+ :rtype: list[EntitySummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this EntityCollection.
+ Collection of data entities.
+
+
+ :param items: The items of this EntityCollection.
+ :type: list[EntitySummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/entity_summary.py b/src/oci/data_catalog/models/entity_summary.py
new file mode 100644
index 0000000000..d97616b374
--- /dev/null
+++ b/src/oci/data_catalog/models/entity_summary.py
@@ -0,0 +1,424 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class EntitySummary(object):
+ """
+ Summary of an data entity. A representation of data with a set of attributes, normally representing a single
+ business entity. Synonymous with 'table' or 'view' in a database, or a single logical file structure
+ that one or many files may match.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new EntitySummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this EntitySummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this EntitySummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this EntitySummary.
+ :type description: str
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this EntitySummary.
+ :type data_asset_key: str
+
+ :param folder_key:
+ The value to assign to the folder_key property of this EntitySummary.
+ :type folder_key: str
+
+ :param external_key:
+ The value to assign to the external_key property of this EntitySummary.
+ :type external_key: str
+
+ :param path:
+ The value to assign to the path property of this EntitySummary.
+ :type path: str
+
+ :param time_created:
+ The value to assign to the time_created property of this EntitySummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this EntitySummary.
+ :type time_updated: datetime
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this EntitySummary.
+ :type updated_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this EntitySummary.
+ :type uri: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this EntitySummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'data_asset_key': 'str',
+ 'folder_key': 'str',
+ 'external_key': 'str',
+ 'path': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'updated_by_id': 'str',
+ 'uri': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'data_asset_key': 'dataAssetKey',
+ 'folder_key': 'folderKey',
+ 'external_key': 'externalKey',
+ 'path': 'path',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'updated_by_id': 'updatedById',
+ 'uri': 'uri',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._data_asset_key = None
+ self._folder_key = None
+ self._external_key = None
+ self._path = None
+ self._time_created = None
+ self._time_updated = None
+ self._updated_by_id = None
+ self._uri = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this EntitySummary.
+ Unique data entity key that is immutable.
+
+
+ :return: The key of this EntitySummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this EntitySummary.
+ Unique data entity key that is immutable.
+
+
+ :param key: The key of this EntitySummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this EntitySummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this EntitySummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this EntitySummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this EntitySummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this EntitySummary.
+ Detailed description of a data entity.
+
+
+ :return: The description of this EntitySummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this EntitySummary.
+ Detailed description of a data entity.
+
+
+ :param description: The description of this EntitySummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this EntitySummary.
+ Unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this EntitySummary.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this EntitySummary.
+ Unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this EntitySummary.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this EntitySummary.
+ Key of the associated folder.
+
+
+ :return: The folder_key of this EntitySummary.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this EntitySummary.
+ Key of the associated folder.
+
+
+ :param folder_key: The folder_key of this EntitySummary.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this EntitySummary.
+ Unique external key of this object in the source system.
+
+
+ :return: The external_key of this EntitySummary.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this EntitySummary.
+ Unique external key of this object in the source system.
+
+
+ :param external_key: The external_key of this EntitySummary.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def path(self):
+ """
+ Gets the path of this EntitySummary.
+ Full path of the data entity.
+
+
+ :return: The path of this EntitySummary.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this EntitySummary.
+ Full path of the data entity.
+
+
+ :param path: The path of this EntitySummary.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this EntitySummary.
+ The date and time the data entity was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this EntitySummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this EntitySummary.
+ The date and time the data entity was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this EntitySummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this EntitySummary.
+ The last time that any change was made to the data entity. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this EntitySummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this EntitySummary.
+ The last time that any change was made to the data entity. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this EntitySummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this EntitySummary.
+ OCID of the user who updated this object in the data catalog.
+
+
+ :return: The updated_by_id of this EntitySummary.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this EntitySummary.
+ OCID of the user who updated this object in the data catalog.
+
+
+ :param updated_by_id: The updated_by_id of this EntitySummary.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this EntitySummary.
+ URI to the data entity instance in the API.
+
+
+ :return: The uri of this EntitySummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this EntitySummary.
+ URI to the data entity instance in the API.
+
+
+ :param uri: The uri of this EntitySummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this EntitySummary.
+ State of the data entity.
+
+
+ :return: The lifecycle_state of this EntitySummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this EntitySummary.
+ State of the data entity.
+
+
+ :param lifecycle_state: The lifecycle_state of this EntitySummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/entity_tag.py b/src/oci/data_catalog/models/entity_tag.py
new file mode 100644
index 0000000000..4bc746ef86
--- /dev/null
+++ b/src/oci/data_catalog/models/entity_tag.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class EntityTag(object):
+ """
+ Represents an association of an entity to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new EntityTag object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param entity_key:
+ The value to assign to the entity_key property of this EntityTag.
+ :type entity_key: str
+
+ :param key:
+ The value to assign to the key property of this EntityTag.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this EntityTag.
+ :type name: str
+
+ :param term_key:
+ The value to assign to the term_key property of this EntityTag.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this EntityTag.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this EntityTag.
+ :type term_description: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this EntityTag.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this EntityTag.
+ :type time_created: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this EntityTag.
+ :type created_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this EntityTag.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'entity_key': 'str',
+ 'key': 'str',
+ 'name': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'created_by_id': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'entity_key': 'entityKey',
+ 'key': 'key',
+ 'name': 'name',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'created_by_id': 'createdById',
+ 'uri': 'uri'
+ }
+
+ self._entity_key = None
+ self._key = None
+ self._name = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._created_by_id = None
+ self._uri = None
+
+ @property
+ def entity_key(self):
+ """
+ Gets the entity_key of this EntityTag.
+ The unique key of the parent entity.
+
+
+ :return: The entity_key of this EntityTag.
+ :rtype: str
+ """
+ return self._entity_key
+
+ @entity_key.setter
+ def entity_key(self, entity_key):
+ """
+ Sets the entity_key of this EntityTag.
+ The unique key of the parent entity.
+
+
+ :param entity_key: The entity_key of this EntityTag.
+ :type: str
+ """
+ self._entity_key = entity_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this EntityTag.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this EntityTag.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this EntityTag.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this EntityTag.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this EntityTag.
+ Name of the tag which matches the term name.
+
+
+ :return: The name of this EntityTag.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this EntityTag.
+ Name of the tag which matches the term name.
+
+
+ :param name: The name of this EntityTag.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this EntityTag.
+ Unique key of the related term.
+
+
+ :return: The term_key of this EntityTag.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this EntityTag.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this EntityTag.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this EntityTag.
+ Path of the related term.
+
+
+ :return: The term_path of this EntityTag.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this EntityTag.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this EntityTag.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this EntityTag.
+ Description of the related term.
+
+
+ :return: The term_description of this EntityTag.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this EntityTag.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this EntityTag.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this EntityTag.
+ The current state of the tag.
+
+
+ :return: The lifecycle_state of this EntityTag.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this EntityTag.
+ The current state of the tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this EntityTag.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this EntityTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this EntityTag.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this EntityTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this EntityTag.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this EntityTag.
+ OCID of the user who created the tag.
+
+
+ :return: The created_by_id of this EntityTag.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this EntityTag.
+ OCID of the user who created the tag.
+
+
+ :param created_by_id: The created_by_id of this EntityTag.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this EntityTag.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this EntityTag.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this EntityTag.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this EntityTag.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/entity_tag_collection.py b/src/oci/data_catalog/models/entity_tag_collection.py
new file mode 100644
index 0000000000..a8df5b02ec
--- /dev/null
+++ b/src/oci/data_catalog/models/entity_tag_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class EntityTagCollection(object):
+ """
+ Results of an entity tags listing. Entity tags allow assciation of business terms with entities.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new EntityTagCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this EntityTagCollection.
+ :type items: list[EntityTagSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[EntityTagSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this EntityTagCollection.
+ Collection of entity tags.
+
+
+ :return: The items of this EntityTagCollection.
+ :rtype: list[EntityTagSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this EntityTagCollection.
+ Collection of entity tags.
+
+
+ :param items: The items of this EntityTagCollection.
+ :type: list[EntityTagSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/entity_tag_summary.py b/src/oci/data_catalog/models/entity_tag_summary.py
new file mode 100644
index 0000000000..defeca47db
--- /dev/null
+++ b/src/oci/data_catalog/models/entity_tag_summary.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class EntityTagSummary(object):
+ """
+ Summary of an entity tag.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new EntityTagSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param entity_key:
+ The value to assign to the entity_key property of this EntityTagSummary.
+ :type entity_key: str
+
+ :param key:
+ The value to assign to the key property of this EntityTagSummary.
+ :type key: str
+
+ :param time_created:
+ The value to assign to the time_created property of this EntityTagSummary.
+ :type time_created: datetime
+
+ :param name:
+ The value to assign to the name property of this EntityTagSummary.
+ :type name: str
+
+ :param uri:
+ The value to assign to the uri property of this EntityTagSummary.
+ :type uri: str
+
+ :param term_key:
+ The value to assign to the term_key property of this EntityTagSummary.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this EntityTagSummary.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this EntityTagSummary.
+ :type term_description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this EntityTagSummary.
+ :type glossary_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this EntityTagSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'entity_key': 'str',
+ 'key': 'str',
+ 'time_created': 'datetime',
+ 'name': 'str',
+ 'uri': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'glossary_key': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'entity_key': 'entityKey',
+ 'key': 'key',
+ 'time_created': 'timeCreated',
+ 'name': 'name',
+ 'uri': 'uri',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'glossary_key': 'glossaryKey',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._entity_key = None
+ self._key = None
+ self._time_created = None
+ self._name = None
+ self._uri = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._glossary_key = None
+ self._lifecycle_state = None
+
+ @property
+ def entity_key(self):
+ """
+ Gets the entity_key of this EntityTagSummary.
+ The unique key of the parent entity.
+
+
+ :return: The entity_key of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._entity_key
+
+ @entity_key.setter
+ def entity_key(self, entity_key):
+ """
+ Sets the entity_key of this EntityTagSummary.
+ The unique key of the parent entity.
+
+
+ :param entity_key: The entity_key of this EntityTagSummary.
+ :type: str
+ """
+ self._entity_key = entity_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this EntityTagSummary.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this EntityTagSummary.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this EntityTagSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this EntityTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this EntityTagSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this EntityTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this EntityTagSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def name(self):
+ """
+ Gets the name of this EntityTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :return: The name of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this EntityTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :param name: The name of this EntityTagSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this EntityTagSummary.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this EntityTagSummary.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this EntityTagSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this EntityTagSummary.
+ Unique key of the related term.
+
+
+ :return: The term_key of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this EntityTagSummary.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this EntityTagSummary.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this EntityTagSummary.
+ Path of the related term.
+
+
+ :return: The term_path of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this EntityTagSummary.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this EntityTagSummary.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this EntityTagSummary.
+ Description of the related term.
+
+
+ :return: The term_description of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this EntityTagSummary.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this EntityTagSummary.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this EntityTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :return: The glossary_key of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this EntityTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :param glossary_key: The glossary_key of this EntityTagSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this EntityTagSummary.
+ State of the Tag.
+
+
+ :return: The lifecycle_state of this EntityTagSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this EntityTagSummary.
+ State of the Tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this EntityTagSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/folder.py b/src/oci/data_catalog/models/folder.py
new file mode 100644
index 0000000000..53e404cd6d
--- /dev/null
+++ b/src/oci/data_catalog/models/folder.py
@@ -0,0 +1,588 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Folder(object):
+ """
+ A generic term used in the data catalog for an external organization concept used for a collection of data entities
+ or processes within a data asset. This term is an internal term which models multiple external types of folder,
+ such as file directories, database schemas, and so on. Some data assets, such as Object Store containers, may contain
+ many levels of folders.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Folder object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Folder.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Folder.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Folder.
+ :type description: str
+
+ :param parent_folder_key:
+ The value to assign to the parent_folder_key property of this Folder.
+ :type parent_folder_key: str
+
+ :param path:
+ The value to assign to the path property of this Folder.
+ :type path: str
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this Folder.
+ :type data_asset_key: str
+
+ :param properties:
+ The value to assign to the properties property of this Folder.
+ :type properties: dict(str, dict(str, str))
+
+ :param external_key:
+ The value to assign to the external_key property of this Folder.
+ :type external_key: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Folder.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Folder.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Folder.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Folder.
+ :type updated_by_id: str
+
+ :param time_external:
+ The value to assign to the time_external property of this Folder.
+ :type time_external: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Folder.
+ :type lifecycle_state: str
+
+ :param harvest_status:
+ The value to assign to the harvest_status property of this Folder.
+ :type harvest_status: str
+
+ :param last_job_key:
+ The value to assign to the last_job_key property of this Folder.
+ :type last_job_key: str
+
+ :param uri:
+ The value to assign to the uri property of this Folder.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'parent_folder_key': 'str',
+ 'path': 'str',
+ 'data_asset_key': 'str',
+ 'properties': 'dict(str, dict(str, str))',
+ 'external_key': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'time_external': 'datetime',
+ 'lifecycle_state': 'str',
+ 'harvest_status': 'str',
+ 'last_job_key': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'parent_folder_key': 'parentFolderKey',
+ 'path': 'path',
+ 'data_asset_key': 'dataAssetKey',
+ 'properties': 'properties',
+ 'external_key': 'externalKey',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'time_external': 'timeExternal',
+ 'lifecycle_state': 'lifecycleState',
+ 'harvest_status': 'harvestStatus',
+ 'last_job_key': 'lastJobKey',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._parent_folder_key = None
+ self._path = None
+ self._data_asset_key = None
+ self._properties = None
+ self._external_key = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._time_external = None
+ self._lifecycle_state = None
+ self._harvest_status = None
+ self._last_job_key = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Folder.
+ Unique folder key that is immutable.
+
+
+ :return: The key of this Folder.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Folder.
+ Unique folder key that is immutable.
+
+
+ :param key: The key of this Folder.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Folder.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Folder.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Folder.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Folder.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Folder.
+ Detailed description of a folder.
+
+
+ :return: The description of this Folder.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Folder.
+ Detailed description of a folder.
+
+
+ :param description: The description of this Folder.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def parent_folder_key(self):
+ """
+ Gets the parent_folder_key of this Folder.
+ The unique key of the containing folder or null if there is no parent folder.
+
+
+ :return: The parent_folder_key of this Folder.
+ :rtype: str
+ """
+ return self._parent_folder_key
+
+ @parent_folder_key.setter
+ def parent_folder_key(self, parent_folder_key):
+ """
+ Sets the parent_folder_key of this Folder.
+ The unique key of the containing folder or null if there is no parent folder.
+
+
+ :param parent_folder_key: The parent_folder_key of this Folder.
+ :type: str
+ """
+ self._parent_folder_key = parent_folder_key
+
+ @property
+ def path(self):
+ """
+ Gets the path of this Folder.
+ Full path of the folder.
+
+
+ :return: The path of this Folder.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this Folder.
+ Full path of the folder.
+
+
+ :param path: The path of this Folder.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this Folder.
+ The key of the associated data asset.
+
+
+ :return: The data_asset_key of this Folder.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this Folder.
+ The key of the associated data asset.
+
+
+ :param data_asset_key: The data_asset_key of this Folder.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this Folder.
+ A map of maps that contains the properties which are specific to the folder type. Each folder type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ folders have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this Folder.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this Folder.
+ A map of maps that contains the properties which are specific to the folder type. Each folder type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ folders have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this Folder.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this Folder.
+ Unique external key of this object in the source system.
+
+
+ :return: The external_key of this Folder.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this Folder.
+ Unique external key of this object in the source system.
+
+
+ :param external_key: The external_key of this Folder.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Folder.
+ The date and time the folder was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Folder.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Folder.
+ The date and time the folder was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Folder.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Folder.
+ The last time that any change was made to the folder. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Folder.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Folder.
+ The last time that any change was made to the folder. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Folder.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Folder.
+ OCID of the user who created the folder.
+
+
+ :return: The created_by_id of this Folder.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Folder.
+ OCID of the user who created the folder.
+
+
+ :param created_by_id: The created_by_id of this Folder.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Folder.
+ OCID of the user who modified the folder.
+
+
+ :return: The updated_by_id of this Folder.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Folder.
+ OCID of the user who modified the folder.
+
+
+ :param updated_by_id: The updated_by_id of this Folder.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this Folder.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this Folder.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this Folder.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this Folder.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Folder.
+ The current state of the folder.
+
+
+ :return: The lifecycle_state of this Folder.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Folder.
+ The current state of the folder.
+
+
+ :param lifecycle_state: The lifecycle_state of this Folder.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def harvest_status(self):
+ """
+ Gets the harvest_status of this Folder.
+ Status of the object as updated by the harvest process.
+
+
+ :return: The harvest_status of this Folder.
+ :rtype: str
+ """
+ return self._harvest_status
+
+ @harvest_status.setter
+ def harvest_status(self, harvest_status):
+ """
+ Sets the harvest_status of this Folder.
+ Status of the object as updated by the harvest process.
+
+
+ :param harvest_status: The harvest_status of this Folder.
+ :type: str
+ """
+ self._harvest_status = harvest_status
+
+ @property
+ def last_job_key(self):
+ """
+ Gets the last_job_key of this Folder.
+ The key of the last harvest process to update the metadata of this object.
+
+
+ :return: The last_job_key of this Folder.
+ :rtype: str
+ """
+ return self._last_job_key
+
+ @last_job_key.setter
+ def last_job_key(self, last_job_key):
+ """
+ Sets the last_job_key of this Folder.
+ The key of the last harvest process to update the metadata of this object.
+
+
+ :param last_job_key: The last_job_key of this Folder.
+ :type: str
+ """
+ self._last_job_key = last_job_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Folder.
+ URI to the folder instance in the API.
+
+
+ :return: The uri of this Folder.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Folder.
+ URI to the folder instance in the API.
+
+
+ :param uri: The uri of this Folder.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/folder_collection.py b/src/oci/data_catalog/models/folder_collection.py
new file mode 100644
index 0000000000..72fa760ef0
--- /dev/null
+++ b/src/oci/data_catalog/models/folder_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FolderCollection(object):
+ """
+ Results of a folders listing. Folders are external organization concept that groups data entities.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FolderCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this FolderCollection.
+ :type items: list[FolderSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[FolderSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this FolderCollection.
+ Collection of folders.
+
+
+ :return: The items of this FolderCollection.
+ :rtype: list[FolderSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this FolderCollection.
+ Collection of folders.
+
+
+ :param items: The items of this FolderCollection.
+ :type: list[FolderSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/folder_summary.py b/src/oci/data_catalog/models/folder_summary.py
new file mode 100644
index 0000000000..7fd8c3f47b
--- /dev/null
+++ b/src/oci/data_catalog/models/folder_summary.py
@@ -0,0 +1,391 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FolderSummary(object):
+ """
+ Summary of a folder.
+ A generic term used in the data catalog for an external organization concept used for a collection of data entities
+ or processes within a data asset. This term is an internal term which models multiple external types of folder,
+ such as file directories, database schemas, and so on. Some data assets, such as Object Store containers,
+ may contain many levels of folders.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FolderSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this FolderSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this FolderSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this FolderSummary.
+ :type description: str
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this FolderSummary.
+ :type data_asset_key: str
+
+ :param parent_folder_key:
+ The value to assign to the parent_folder_key property of this FolderSummary.
+ :type parent_folder_key: str
+
+ :param path:
+ The value to assign to the path property of this FolderSummary.
+ :type path: str
+
+ :param external_key:
+ The value to assign to the external_key property of this FolderSummary.
+ :type external_key: str
+
+ :param time_external:
+ The value to assign to the time_external property of this FolderSummary.
+ :type time_external: datetime
+
+ :param time_created:
+ The value to assign to the time_created property of this FolderSummary.
+ :type time_created: datetime
+
+ :param uri:
+ The value to assign to the uri property of this FolderSummary.
+ :type uri: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this FolderSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'data_asset_key': 'str',
+ 'parent_folder_key': 'str',
+ 'path': 'str',
+ 'external_key': 'str',
+ 'time_external': 'datetime',
+ 'time_created': 'datetime',
+ 'uri': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'data_asset_key': 'dataAssetKey',
+ 'parent_folder_key': 'parentFolderKey',
+ 'path': 'path',
+ 'external_key': 'externalKey',
+ 'time_external': 'timeExternal',
+ 'time_created': 'timeCreated',
+ 'uri': 'uri',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._data_asset_key = None
+ self._parent_folder_key = None
+ self._path = None
+ self._external_key = None
+ self._time_external = None
+ self._time_created = None
+ self._uri = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this FolderSummary.
+ Unique folder key that is immutable.
+
+
+ :return: The key of this FolderSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this FolderSummary.
+ Unique folder key that is immutable.
+
+
+ :param key: The key of this FolderSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this FolderSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this FolderSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this FolderSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this FolderSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this FolderSummary.
+ Detailed description of a folder.
+
+
+ :return: The description of this FolderSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this FolderSummary.
+ Detailed description of a folder.
+
+
+ :param description: The description of this FolderSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this FolderSummary.
+ The unique key of the parent data asset.
+
+
+ :return: The data_asset_key of this FolderSummary.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this FolderSummary.
+ The unique key of the parent data asset.
+
+
+ :param data_asset_key: The data_asset_key of this FolderSummary.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def parent_folder_key(self):
+ """
+ Gets the parent_folder_key of this FolderSummary.
+ The key of the containing folder or null if there is no parent.
+
+
+ :return: The parent_folder_key of this FolderSummary.
+ :rtype: str
+ """
+ return self._parent_folder_key
+
+ @parent_folder_key.setter
+ def parent_folder_key(self, parent_folder_key):
+ """
+ Sets the parent_folder_key of this FolderSummary.
+ The key of the containing folder or null if there is no parent.
+
+
+ :param parent_folder_key: The parent_folder_key of this FolderSummary.
+ :type: str
+ """
+ self._parent_folder_key = parent_folder_key
+
+ @property
+ def path(self):
+ """
+ Gets the path of this FolderSummary.
+ Full path of the folder.
+
+
+ :return: The path of this FolderSummary.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this FolderSummary.
+ Full path of the folder.
+
+
+ :param path: The path of this FolderSummary.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def external_key(self):
+ """
+ Gets the external_key of this FolderSummary.
+ Unique external key of this object from the source systems.
+
+
+ :return: The external_key of this FolderSummary.
+ :rtype: str
+ """
+ return self._external_key
+
+ @external_key.setter
+ def external_key(self, external_key):
+ """
+ Sets the external_key of this FolderSummary.
+ Unique external key of this object from the source systems.
+
+
+ :param external_key: The external_key of this FolderSummary.
+ :type: str
+ """
+ self._external_key = external_key
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this FolderSummary.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this FolderSummary.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this FolderSummary.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this FolderSummary.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this FolderSummary.
+ The date and time the folder was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this FolderSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this FolderSummary.
+ The date and time the folder was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this FolderSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this FolderSummary.
+ URI of the folder resource within the data catalog API.
+
+
+ :return: The uri of this FolderSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this FolderSummary.
+ URI of the folder resource within the data catalog API.
+
+
+ :param uri: The uri of this FolderSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this FolderSummary.
+ State of the folder.
+
+
+ :return: The lifecycle_state of this FolderSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this FolderSummary.
+ State of the folder.
+
+
+ :param lifecycle_state: The lifecycle_state of this FolderSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/folder_tag.py b/src/oci/data_catalog/models/folder_tag.py
new file mode 100644
index 0000000000..84957f58b4
--- /dev/null
+++ b/src/oci/data_catalog/models/folder_tag.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FolderTag(object):
+ """
+ Represents an association of a folder to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FolderTag object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param folder_key:
+ The value to assign to the folder_key property of this FolderTag.
+ :type folder_key: str
+
+ :param key:
+ The value to assign to the key property of this FolderTag.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this FolderTag.
+ :type name: str
+
+ :param term_key:
+ The value to assign to the term_key property of this FolderTag.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this FolderTag.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this FolderTag.
+ :type term_description: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this FolderTag.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this FolderTag.
+ :type time_created: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this FolderTag.
+ :type created_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this FolderTag.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'folder_key': 'str',
+ 'key': 'str',
+ 'name': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'created_by_id': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'folder_key': 'folderKey',
+ 'key': 'key',
+ 'name': 'name',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'created_by_id': 'createdById',
+ 'uri': 'uri'
+ }
+
+ self._folder_key = None
+ self._key = None
+ self._name = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._created_by_id = None
+ self._uri = None
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this FolderTag.
+ The unique key of the folder associated with this tag.
+
+
+ :return: The folder_key of this FolderTag.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this FolderTag.
+ The unique key of the folder associated with this tag.
+
+
+ :param folder_key: The folder_key of this FolderTag.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this FolderTag.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this FolderTag.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this FolderTag.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this FolderTag.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this FolderTag.
+ Name of the tag which matches the term name.
+
+
+ :return: The name of this FolderTag.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this FolderTag.
+ Name of the tag which matches the term name.
+
+
+ :param name: The name of this FolderTag.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this FolderTag.
+ Unique key of the related term.
+
+
+ :return: The term_key of this FolderTag.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this FolderTag.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this FolderTag.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this FolderTag.
+ Path of the related term.
+
+
+ :return: The term_path of this FolderTag.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this FolderTag.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this FolderTag.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this FolderTag.
+ Description of the related term.
+
+
+ :return: The term_description of this FolderTag.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this FolderTag.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this FolderTag.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this FolderTag.
+ The current state of the tag.
+
+
+ :return: The lifecycle_state of this FolderTag.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this FolderTag.
+ The current state of the tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this FolderTag.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this FolderTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this FolderTag.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this FolderTag.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this FolderTag.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this FolderTag.
+ OCID of the user who created the tag.
+
+
+ :return: The created_by_id of this FolderTag.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this FolderTag.
+ OCID of the user who created the tag.
+
+
+ :param created_by_id: The created_by_id of this FolderTag.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this FolderTag.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this FolderTag.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this FolderTag.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this FolderTag.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/folder_tag_collection.py b/src/oci/data_catalog/models/folder_tag_collection.py
new file mode 100644
index 0000000000..3c6ee74a00
--- /dev/null
+++ b/src/oci/data_catalog/models/folder_tag_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FolderTagCollection(object):
+ """
+ Results of a folders tag listing. Folder tags allow association of folder objects to business terms.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FolderTagCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this FolderTagCollection.
+ :type items: list[FolderTagSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[FolderTagSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this FolderTagCollection.
+ Collection of folder tags.
+
+
+ :return: The items of this FolderTagCollection.
+ :rtype: list[FolderTagSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this FolderTagCollection.
+ Collection of folder tags.
+
+
+ :param items: The items of this FolderTagCollection.
+ :type: list[FolderTagSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/folder_tag_summary.py b/src/oci/data_catalog/models/folder_tag_summary.py
new file mode 100644
index 0000000000..e62c031fed
--- /dev/null
+++ b/src/oci/data_catalog/models/folder_tag_summary.py
@@ -0,0 +1,354 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class FolderTagSummary(object):
+ """
+ Summary of a folder tag.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new FolderTagSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param folder_key:
+ The value to assign to the folder_key property of this FolderTagSummary.
+ :type folder_key: str
+
+ :param key:
+ The value to assign to the key property of this FolderTagSummary.
+ :type key: str
+
+ :param time_created:
+ The value to assign to the time_created property of this FolderTagSummary.
+ :type time_created: datetime
+
+ :param name:
+ The value to assign to the name property of this FolderTagSummary.
+ :type name: str
+
+ :param uri:
+ The value to assign to the uri property of this FolderTagSummary.
+ :type uri: str
+
+ :param term_key:
+ The value to assign to the term_key property of this FolderTagSummary.
+ :type term_key: str
+
+ :param term_path:
+ The value to assign to the term_path property of this FolderTagSummary.
+ :type term_path: str
+
+ :param term_description:
+ The value to assign to the term_description property of this FolderTagSummary.
+ :type term_description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this FolderTagSummary.
+ :type glossary_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this FolderTagSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'folder_key': 'str',
+ 'key': 'str',
+ 'time_created': 'datetime',
+ 'name': 'str',
+ 'uri': 'str',
+ 'term_key': 'str',
+ 'term_path': 'str',
+ 'term_description': 'str',
+ 'glossary_key': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'folder_key': 'folderKey',
+ 'key': 'key',
+ 'time_created': 'timeCreated',
+ 'name': 'name',
+ 'uri': 'uri',
+ 'term_key': 'termKey',
+ 'term_path': 'termPath',
+ 'term_description': 'termDescription',
+ 'glossary_key': 'glossaryKey',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._folder_key = None
+ self._key = None
+ self._time_created = None
+ self._name = None
+ self._uri = None
+ self._term_key = None
+ self._term_path = None
+ self._term_description = None
+ self._glossary_key = None
+ self._lifecycle_state = None
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this FolderTagSummary.
+ The unique key of the parent folder.
+
+
+ :return: The folder_key of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this FolderTagSummary.
+ The unique key of the parent folder.
+
+
+ :param folder_key: The folder_key of this FolderTagSummary.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this FolderTagSummary.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this FolderTagSummary.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this FolderTagSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this FolderTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this FolderTagSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this FolderTagSummary.
+ The date and time the tag was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this FolderTagSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def name(self):
+ """
+ Gets the name of this FolderTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :return: The name of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this FolderTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :param name: The name of this FolderTagSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this FolderTagSummary.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this FolderTagSummary.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this FolderTagSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def term_key(self):
+ """
+ Gets the term_key of this FolderTagSummary.
+ Unique key of the related term.
+
+
+ :return: The term_key of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._term_key
+
+ @term_key.setter
+ def term_key(self, term_key):
+ """
+ Sets the term_key of this FolderTagSummary.
+ Unique key of the related term.
+
+
+ :param term_key: The term_key of this FolderTagSummary.
+ :type: str
+ """
+ self._term_key = term_key
+
+ @property
+ def term_path(self):
+ """
+ Gets the term_path of this FolderTagSummary.
+ Path of the related term.
+
+
+ :return: The term_path of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._term_path
+
+ @term_path.setter
+ def term_path(self, term_path):
+ """
+ Sets the term_path of this FolderTagSummary.
+ Path of the related term.
+
+
+ :param term_path: The term_path of this FolderTagSummary.
+ :type: str
+ """
+ self._term_path = term_path
+
+ @property
+ def term_description(self):
+ """
+ Gets the term_description of this FolderTagSummary.
+ Description of the related term.
+
+
+ :return: The term_description of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._term_description
+
+ @term_description.setter
+ def term_description(self, term_description):
+ """
+ Sets the term_description of this FolderTagSummary.
+ Description of the related term.
+
+
+ :param term_description: The term_description of this FolderTagSummary.
+ :type: str
+ """
+ self._term_description = term_description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this FolderTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :return: The glossary_key of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this FolderTagSummary.
+ Unique id of the parent glossary of the term.
+
+
+ :param glossary_key: The glossary_key of this FolderTagSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this FolderTagSummary.
+ State of the Tag.
+
+
+ :return: The lifecycle_state of this FolderTagSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this FolderTagSummary.
+ State of the Tag.
+
+
+ :param lifecycle_state: The lifecycle_state of this FolderTagSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/glossary.py b/src/oci/data_catalog/models/glossary.py
new file mode 100644
index 0000000000..aacd1f753d
--- /dev/null
+++ b/src/oci/data_catalog/models/glossary.py
@@ -0,0 +1,429 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Glossary(object):
+ """
+ Full glossary details. A glossary of business terms, such as 'Customer', 'Account', 'Contact' , 'Address',
+ or 'Product', with definitions, used to provide common meaning across disparate data assets. Business glossaries
+ may be hierarchical where some terms may contain child terms to allow them to be used as 'taxonomies'.
+ By linking data assets, data entities, and attributes to glossaries and glossary terms, the glossary can act as a
+ way of organizing data catalog objects in a hierarchy to make a large number of objects more navigable and easier to
+ consume. Objects in the data aatalog, such as data assets or data entities, may be linked to any level in the
+ glossary, so that the glossary can be used to browse the available data according to the business model of the
+ organization.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Glossary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Glossary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Glossary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Glossary.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this Glossary.
+ :type catalog_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Glossary.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Glossary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Glossary.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Glossary.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Glossary.
+ :type updated_by_id: str
+
+ :param owner:
+ The value to assign to the owner property of this Glossary.
+ :type owner: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this Glossary.
+ :type workflow_status: str
+
+ :param uri:
+ The value to assign to the uri property of this Glossary.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'owner': 'str',
+ 'workflow_status': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'owner': 'owner',
+ 'workflow_status': 'workflowStatus',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._catalog_id = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._owner = None
+ self._workflow_status = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Glossary.
+ Unique glossary key that is immutable.
+
+
+ :return: The key of this Glossary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Glossary.
+ Unique glossary key that is immutable.
+
+
+ :param key: The key of this Glossary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Glossary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Glossary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Glossary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Glossary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Glossary.
+ Detailed description of the glossary.
+
+
+ :return: The description of this Glossary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Glossary.
+ Detailed description of the glossary.
+
+
+ :param description: The description of this Glossary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this Glossary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this Glossary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this Glossary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this Glossary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Glossary.
+ The current state of the glossary.
+
+
+ :return: The lifecycle_state of this Glossary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Glossary.
+ The current state of the glossary.
+
+
+ :param lifecycle_state: The lifecycle_state of this Glossary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Glossary.
+ The date and time the glossary was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Glossary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Glossary.
+ The date and time the glossary was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Glossary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Glossary.
+ The last time that any change was made to the glossary. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Glossary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Glossary.
+ The last time that any change was made to the glossary. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Glossary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Glossary.
+ OCID of the user who created this metadata element.
+
+
+ :return: The created_by_id of this Glossary.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Glossary.
+ OCID of the user who created this metadata element.
+
+
+ :param created_by_id: The created_by_id of this Glossary.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Glossary.
+ OCID of the user who updated this metadata element.
+
+
+ :return: The updated_by_id of this Glossary.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Glossary.
+ OCID of the user who updated this metadata element.
+
+
+ :param updated_by_id: The updated_by_id of this Glossary.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def owner(self):
+ """
+ Gets the owner of this Glossary.
+ OCID of the user who is the owner of the glossary.
+
+
+ :return: The owner of this Glossary.
+ :rtype: str
+ """
+ return self._owner
+
+ @owner.setter
+ def owner(self, owner):
+ """
+ Sets the owner of this Glossary.
+ OCID of the user who is the owner of the glossary.
+
+
+ :param owner: The owner of this Glossary.
+ :type: str
+ """
+ self._owner = owner
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this Glossary.
+ Status of the approval process workflow for this business glossary.
+
+
+ :return: The workflow_status of this Glossary.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this Glossary.
+ Status of the approval process workflow for this business glossary.
+
+
+ :param workflow_status: The workflow_status of this Glossary.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Glossary.
+ URI to the tag instance in the API.
+
+
+ :return: The uri of this Glossary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Glossary.
+ URI to the tag instance in the API.
+
+
+ :param uri: The uri of this Glossary.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/glossary_collection.py b/src/oci/data_catalog/models/glossary_collection.py
new file mode 100644
index 0000000000..48bed32cf5
--- /dev/null
+++ b/src/oci/data_catalog/models/glossary_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class GlossaryCollection(object):
+ """
+ Results of a glossaries listing. Glossary is an organizing concept for business terms to provide a unified semantic model across disparate data assets.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new GlossaryCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this GlossaryCollection.
+ :type items: list[GlossarySummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[GlossarySummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this GlossaryCollection.
+ Collection of glossaries.
+
+
+ :return: The items of this GlossaryCollection.
+ :rtype: list[GlossarySummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this GlossaryCollection.
+ Collection of glossaries.
+
+
+ :param items: The items of this GlossaryCollection.
+ :type: list[GlossarySummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/glossary_permissions_summary.py b/src/oci/data_catalog/models/glossary_permissions_summary.py
new file mode 100644
index 0000000000..402b2ac300
--- /dev/null
+++ b/src/oci/data_catalog/models/glossary_permissions_summary.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class GlossaryPermissionsSummary(object):
+ """
+ Permissions object for glosssaries.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new GlossaryPermissionsSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this GlossaryPermissionsSummary.
+ :type glossary_key: str
+
+ :param user_permissions:
+ The value to assign to the user_permissions property of this GlossaryPermissionsSummary.
+ :type user_permissions: list[str]
+
+ """
+ self.swagger_types = {
+ 'glossary_key': 'str',
+ 'user_permissions': 'list[str]'
+ }
+
+ self.attribute_map = {
+ 'glossary_key': 'glossaryKey',
+ 'user_permissions': 'userPermissions'
+ }
+
+ self._glossary_key = None
+ self._user_permissions = None
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this GlossaryPermissionsSummary.
+ The unique key of the parent glossary.
+
+
+ :return: The glossary_key of this GlossaryPermissionsSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this GlossaryPermissionsSummary.
+ The unique key of the parent glossary.
+
+
+ :param glossary_key: The glossary_key of this GlossaryPermissionsSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def user_permissions(self):
+ """
+ Gets the user_permissions of this GlossaryPermissionsSummary.
+ An array of permissions.
+
+
+ :return: The user_permissions of this GlossaryPermissionsSummary.
+ :rtype: list[str]
+ """
+ return self._user_permissions
+
+ @user_permissions.setter
+ def user_permissions(self, user_permissions):
+ """
+ Sets the user_permissions of this GlossaryPermissionsSummary.
+ An array of permissions.
+
+
+ :param user_permissions: The user_permissions of this GlossaryPermissionsSummary.
+ :type: list[str]
+ """
+ self._user_permissions = user_permissions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/glossary_summary.py b/src/oci/data_catalog/models/glossary_summary.py
new file mode 100644
index 0000000000..63749a5ebc
--- /dev/null
+++ b/src/oci/data_catalog/models/glossary_summary.py
@@ -0,0 +1,301 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class GlossarySummary(object):
+ """
+ Summary of a glossary. A glossary of business terms, such as 'Customer', 'Account', 'Contact', 'Address',
+ or 'Product', with definitions, used to provide common meaning across disparate data assets. Business glossaries
+ may be hierarchical where some terms may contain child terms to allow them to be used as 'taxonomies'.
+ By linking data assets, data entities, and attributes to glossaries and glossary terms, the glossary can act as a
+ way of organizing data catalog objects in a hierarchy to make a large number of objects more navigable and easier to
+ consume. Objects in the data catalog, such as data assets or data entities, may be linked to any level in the
+ glossary, so that the glossary can be used to browse the available data according to the business model of the
+ organization.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new GlossarySummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this GlossarySummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this GlossarySummary.
+ :type display_name: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this GlossarySummary.
+ :type catalog_id: str
+
+ :param time_created:
+ The value to assign to the time_created property of this GlossarySummary.
+ :type time_created: datetime
+
+ :param description:
+ The value to assign to the description property of this GlossarySummary.
+ :type description: str
+
+ :param uri:
+ The value to assign to the uri property of this GlossarySummary.
+ :type uri: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this GlossarySummary.
+ :type workflow_status: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this GlossarySummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'catalog_id': 'str',
+ 'time_created': 'datetime',
+ 'description': 'str',
+ 'uri': 'str',
+ 'workflow_status': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'catalog_id': 'catalogId',
+ 'time_created': 'timeCreated',
+ 'description': 'description',
+ 'uri': 'uri',
+ 'workflow_status': 'workflowStatus',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._catalog_id = None
+ self._time_created = None
+ self._description = None
+ self._uri = None
+ self._workflow_status = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this GlossarySummary.
+ Unique glossary key that is immutable.
+
+
+ :return: The key of this GlossarySummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this GlossarySummary.
+ Unique glossary key that is immutable.
+
+
+ :param key: The key of this GlossarySummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this GlossarySummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this GlossarySummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this GlossarySummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this GlossarySummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this GlossarySummary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this GlossarySummary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this GlossarySummary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this GlossarySummary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this GlossarySummary.
+ The date and time the glossary was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this GlossarySummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this GlossarySummary.
+ The date and time the glossary was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this GlossarySummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def description(self):
+ """
+ Gets the description of this GlossarySummary.
+ Detailed description of the glossary.
+
+
+ :return: The description of this GlossarySummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this GlossarySummary.
+ Detailed description of the glossary.
+
+
+ :param description: The description of this GlossarySummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this GlossarySummary.
+ URI to the glossary instance in the API.
+
+
+ :return: The uri of this GlossarySummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this GlossarySummary.
+ URI to the glossary instance in the API.
+
+
+ :param uri: The uri of this GlossarySummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this GlossarySummary.
+ Status of the approval process workflow for this business glossary.
+
+
+ :return: The workflow_status of this GlossarySummary.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this GlossarySummary.
+ Status of the approval process workflow for this business glossary.
+
+
+ :param workflow_status: The workflow_status of this GlossarySummary.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this GlossarySummary.
+ State of the Glossary.
+
+
+ :return: The lifecycle_state of this GlossarySummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this GlossarySummary.
+ State of the Glossary.
+
+
+ :param lifecycle_state: The lifecycle_state of this GlossarySummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/glossary_tree_element.py b/src/oci/data_catalog/models/glossary_tree_element.py
new file mode 100644
index 0000000000..80ffb57a35
--- /dev/null
+++ b/src/oci/data_catalog/models/glossary_tree_element.py
@@ -0,0 +1,449 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class GlossaryTreeElement(object):
+ """
+ Glossary tree element with child terms.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new GlossaryTreeElement object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param child_terms:
+ The value to assign to the child_terms property of this GlossaryTreeElement.
+ :type child_terms: list[GlossaryTreeElement]
+
+ :param key:
+ The value to assign to the key property of this GlossaryTreeElement.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this GlossaryTreeElement.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this GlossaryTreeElement.
+ :type description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this GlossaryTreeElement.
+ :type glossary_key: str
+
+ :param uri:
+ The value to assign to the uri property of this GlossaryTreeElement.
+ :type uri: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this GlossaryTreeElement.
+ :type parent_term_key: str
+
+ :param is_allowed_to_have_child_terms:
+ The value to assign to the is_allowed_to_have_child_terms property of this GlossaryTreeElement.
+ :type is_allowed_to_have_child_terms: bool
+
+ :param path:
+ The value to assign to the path property of this GlossaryTreeElement.
+ :type path: str
+
+ :param time_created:
+ The value to assign to the time_created property of this GlossaryTreeElement.
+ :type time_created: datetime
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this GlossaryTreeElement.
+ :type workflow_status: str
+
+ :param associated_object_count:
+ The value to assign to the associated_object_count property of this GlossaryTreeElement.
+ :type associated_object_count: int
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this GlossaryTreeElement.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'child_terms': 'list[GlossaryTreeElement]',
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'glossary_key': 'str',
+ 'uri': 'str',
+ 'parent_term_key': 'str',
+ 'is_allowed_to_have_child_terms': 'bool',
+ 'path': 'str',
+ 'time_created': 'datetime',
+ 'workflow_status': 'str',
+ 'associated_object_count': 'int',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'child_terms': 'childTerms',
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'glossary_key': 'glossaryKey',
+ 'uri': 'uri',
+ 'parent_term_key': 'parentTermKey',
+ 'is_allowed_to_have_child_terms': 'isAllowedToHaveChildTerms',
+ 'path': 'path',
+ 'time_created': 'timeCreated',
+ 'workflow_status': 'workflowStatus',
+ 'associated_object_count': 'associatedObjectCount',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._child_terms = None
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._glossary_key = None
+ self._uri = None
+ self._parent_term_key = None
+ self._is_allowed_to_have_child_terms = None
+ self._path = None
+ self._time_created = None
+ self._workflow_status = None
+ self._associated_object_count = None
+ self._lifecycle_state = None
+
+ @property
+ def child_terms(self):
+ """
+ Gets the child_terms of this GlossaryTreeElement.
+ An array of child terms.
+
+
+ :return: The child_terms of this GlossaryTreeElement.
+ :rtype: list[GlossaryTreeElement]
+ """
+ return self._child_terms
+
+ @child_terms.setter
+ def child_terms(self, child_terms):
+ """
+ Sets the child_terms of this GlossaryTreeElement.
+ An array of child terms.
+
+
+ :param child_terms: The child_terms of this GlossaryTreeElement.
+ :type: list[GlossaryTreeElement]
+ """
+ self._child_terms = child_terms
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this GlossaryTreeElement.
+ Unique term key that is immutable.
+
+
+ :return: The key of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this GlossaryTreeElement.
+ Unique term key that is immutable.
+
+
+ :param key: The key of this GlossaryTreeElement.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this GlossaryTreeElement.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this GlossaryTreeElement.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this GlossaryTreeElement.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this GlossaryTreeElement.
+ Detailed description of the term.
+
+
+ :return: The description of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this GlossaryTreeElement.
+ Detailed description of the term.
+
+
+ :param description: The description of this GlossaryTreeElement.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this GlossaryTreeElement.
+ Unique id of the parent glossary.
+
+
+ :return: The glossary_key of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this GlossaryTreeElement.
+ Unique id of the parent glossary.
+
+
+ :param glossary_key: The glossary_key of this GlossaryTreeElement.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this GlossaryTreeElement.
+ URI to the term instance in the API.
+
+
+ :return: The uri of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this GlossaryTreeElement.
+ URI to the term instance in the API.
+
+
+ :param uri: The uri of this GlossaryTreeElement.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this GlossaryTreeElement.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this GlossaryTreeElement.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this GlossaryTreeElement.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def is_allowed_to_have_child_terms(self):
+ """
+ Gets the is_allowed_to_have_child_terms of this GlossaryTreeElement.
+ Indicates whether a term may contain child terms.
+
+
+ :return: The is_allowed_to_have_child_terms of this GlossaryTreeElement.
+ :rtype: bool
+ """
+ return self._is_allowed_to_have_child_terms
+
+ @is_allowed_to_have_child_terms.setter
+ def is_allowed_to_have_child_terms(self, is_allowed_to_have_child_terms):
+ """
+ Sets the is_allowed_to_have_child_terms of this GlossaryTreeElement.
+ Indicates whether a term may contain child terms.
+
+
+ :param is_allowed_to_have_child_terms: The is_allowed_to_have_child_terms of this GlossaryTreeElement.
+ :type: bool
+ """
+ self._is_allowed_to_have_child_terms = is_allowed_to_have_child_terms
+
+ @property
+ def path(self):
+ """
+ Gets the path of this GlossaryTreeElement.
+ Absolute path of the term.
+
+
+ :return: The path of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this GlossaryTreeElement.
+ Absolute path of the term.
+
+
+ :param path: The path of this GlossaryTreeElement.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this GlossaryTreeElement.
+ The date and time the term was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this GlossaryTreeElement.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this GlossaryTreeElement.
+ The date and time the term was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this GlossaryTreeElement.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this GlossaryTreeElement.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :return: The workflow_status of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this GlossaryTreeElement.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :param workflow_status: The workflow_status of this GlossaryTreeElement.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ @property
+ def associated_object_count(self):
+ """
+ Gets the associated_object_count of this GlossaryTreeElement.
+ The number of objects tagged with this term.
+
+
+ :return: The associated_object_count of this GlossaryTreeElement.
+ :rtype: int
+ """
+ return self._associated_object_count
+
+ @associated_object_count.setter
+ def associated_object_count(self, associated_object_count):
+ """
+ Sets the associated_object_count of this GlossaryTreeElement.
+ The number of objects tagged with this term.
+
+
+ :param associated_object_count: The associated_object_count of this GlossaryTreeElement.
+ :type: int
+ """
+ self._associated_object_count = associated_object_count
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this GlossaryTreeElement.
+ State of the term.
+
+
+ :return: The lifecycle_state of this GlossaryTreeElement.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this GlossaryTreeElement.
+ State of the term.
+
+
+ :param lifecycle_state: The lifecycle_state of this GlossaryTreeElement.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/import_connection_details.py b/src/oci/data_catalog/models/import_connection_details.py
new file mode 100644
index 0000000000..6e5f17ace9
--- /dev/null
+++ b/src/oci/data_catalog/models/import_connection_details.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ImportConnectionDetails(object):
+ """
+ Import connection from the connection metadata and oracle wallet file.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ImportConnectionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param connection_detail:
+ The value to assign to the connection_detail property of this ImportConnectionDetails.
+ :type connection_detail: CreateConnectionDetails
+
+ :param connection_payload:
+ The value to assign to the connection_payload property of this ImportConnectionDetails.
+ :type connection_payload: str
+
+ """
+ self.swagger_types = {
+ 'connection_detail': 'CreateConnectionDetails',
+ 'connection_payload': 'str'
+ }
+
+ self.attribute_map = {
+ 'connection_detail': 'connectionDetail',
+ 'connection_payload': 'connectionPayload'
+ }
+
+ self._connection_detail = None
+ self._connection_payload = None
+
+ @property
+ def connection_detail(self):
+ """
+ Gets the connection_detail of this ImportConnectionDetails.
+
+ :return: The connection_detail of this ImportConnectionDetails.
+ :rtype: CreateConnectionDetails
+ """
+ return self._connection_detail
+
+ @connection_detail.setter
+ def connection_detail(self, connection_detail):
+ """
+ Sets the connection_detail of this ImportConnectionDetails.
+
+ :param connection_detail: The connection_detail of this ImportConnectionDetails.
+ :type: CreateConnectionDetails
+ """
+ self._connection_detail = connection_detail
+
+ @property
+ def connection_payload(self):
+ """
+ **[Required]** Gets the connection_payload of this ImportConnectionDetails.
+ The information used to import the connection.
+
+
+ :return: The connection_payload of this ImportConnectionDetails.
+ :rtype: str
+ """
+ return self._connection_payload
+
+ @connection_payload.setter
+ def connection_payload(self, connection_payload):
+ """
+ Sets the connection_payload of this ImportConnectionDetails.
+ The information used to import the connection.
+
+
+ :param connection_payload: The connection_payload of this ImportConnectionDetails.
+ :type: str
+ """
+ self._connection_payload = connection_payload
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/import_glossary_details.py b/src/oci/data_catalog/models/import_glossary_details.py
new file mode 100644
index 0000000000..94ab5e2242
--- /dev/null
+++ b/src/oci/data_catalog/models/import_glossary_details.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ImportGlossaryDetails(object):
+ """
+ Import glossary from the contents of the glossary definition file.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ImportGlossaryDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param glossary_file_contents:
+ The value to assign to the glossary_file_contents property of this ImportGlossaryDetails.
+ :type glossary_file_contents: str
+
+ """
+ self.swagger_types = {
+ 'glossary_file_contents': 'str'
+ }
+
+ self.attribute_map = {
+ 'glossary_file_contents': 'glossaryFileContents'
+ }
+
+ self._glossary_file_contents = None
+
+ @property
+ def glossary_file_contents(self):
+ """
+ Gets the glossary_file_contents of this ImportGlossaryDetails.
+ The file contents used for the import of glossary.
+
+
+ :return: The glossary_file_contents of this ImportGlossaryDetails.
+ :rtype: str
+ """
+ return self._glossary_file_contents
+
+ @glossary_file_contents.setter
+ def glossary_file_contents(self, glossary_file_contents):
+ """
+ Sets the glossary_file_contents of this ImportGlossaryDetails.
+ The file contents used for the import of glossary.
+
+
+ :param glossary_file_contents: The glossary_file_contents of this ImportGlossaryDetails.
+ :type: str
+ """
+ self._glossary_file_contents = glossary_file_contents
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job.py b/src/oci/data_catalog/models/job.py
new file mode 100644
index 0000000000..b3a67b908b
--- /dev/null
+++ b/src/oci/data_catalog/models/job.py
@@ -0,0 +1,690 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Job(object):
+ """
+ Details of a job. Jobs are scheduled instances of a job definition.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Job object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Job.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Job.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Job.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this Job.
+ :type catalog_id: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Job.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Job.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Job.
+ :type time_updated: datetime
+
+ :param job_type:
+ The value to assign to the job_type property of this Job.
+ :type job_type: str
+
+ :param schedule_cron_expression:
+ The value to assign to the schedule_cron_expression property of this Job.
+ :type schedule_cron_expression: str
+
+ :param time_schedule_begin:
+ The value to assign to the time_schedule_begin property of this Job.
+ :type time_schedule_begin: datetime
+
+ :param time_schedule_end:
+ The value to assign to the time_schedule_end property of this Job.
+ :type time_schedule_end: datetime
+
+ :param schedule_type:
+ The value to assign to the schedule_type property of this Job.
+ :type schedule_type: str
+
+ :param connection_key:
+ The value to assign to the connection_key property of this Job.
+ :type connection_key: str
+
+ :param job_definition_key:
+ The value to assign to the job_definition_key property of this Job.
+ :type job_definition_key: str
+
+ :param internal_version:
+ The value to assign to the internal_version property of this Job.
+ :type internal_version: str
+
+ :param execution_count:
+ The value to assign to the execution_count property of this Job.
+ :type execution_count: int
+
+ :param time_of_latest_execution:
+ The value to assign to the time_of_latest_execution property of this Job.
+ :type time_of_latest_execution: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Job.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Job.
+ :type updated_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this Job.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'job_type': 'str',
+ 'schedule_cron_expression': 'str',
+ 'time_schedule_begin': 'datetime',
+ 'time_schedule_end': 'datetime',
+ 'schedule_type': 'str',
+ 'connection_key': 'str',
+ 'job_definition_key': 'str',
+ 'internal_version': 'str',
+ 'execution_count': 'int',
+ 'time_of_latest_execution': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'job_type': 'jobType',
+ 'schedule_cron_expression': 'scheduleCronExpression',
+ 'time_schedule_begin': 'timeScheduleBegin',
+ 'time_schedule_end': 'timeScheduleEnd',
+ 'schedule_type': 'scheduleType',
+ 'connection_key': 'connectionKey',
+ 'job_definition_key': 'jobDefinitionKey',
+ 'internal_version': 'internalVersion',
+ 'execution_count': 'executionCount',
+ 'time_of_latest_execution': 'timeOfLatestExecution',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._catalog_id = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_updated = None
+ self._job_type = None
+ self._schedule_cron_expression = None
+ self._time_schedule_begin = None
+ self._time_schedule_end = None
+ self._schedule_type = None
+ self._connection_key = None
+ self._job_definition_key = None
+ self._internal_version = None
+ self._execution_count = None
+ self._time_of_latest_execution = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Job.
+ Unique key of the job resource.
+
+
+ :return: The key of this Job.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Job.
+ Unique key of the job resource.
+
+
+ :param key: The key of this Job.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Job.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Job.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Job.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Job.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Job.
+ Detailed description of the job.
+
+
+ :return: The description of this Job.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Job.
+ Detailed description of the job.
+
+
+ :param description: The description of this Job.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this Job.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this Job.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this Job.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this Job.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Job.
+ Lifecycle state for job.
+
+
+ :return: The lifecycle_state of this Job.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Job.
+ Lifecycle state for job.
+
+
+ :param lifecycle_state: The lifecycle_state of this Job.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Job.
+ The date and time the job was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Job.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Job.
+ The date and time the job was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Job.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Job.
+ Time that this job was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Job.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Job.
+ Time that this job was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Job.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this Job.
+ Type of the job.
+
+
+ :return: The job_type of this Job.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this Job.
+ Type of the job.
+
+
+ :param job_type: The job_type of this Job.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def schedule_cron_expression(self):
+ """
+ Gets the schedule_cron_expression of this Job.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :return: The schedule_cron_expression of this Job.
+ :rtype: str
+ """
+ return self._schedule_cron_expression
+
+ @schedule_cron_expression.setter
+ def schedule_cron_expression(self, schedule_cron_expression):
+ """
+ Sets the schedule_cron_expression of this Job.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :param schedule_cron_expression: The schedule_cron_expression of this Job.
+ :type: str
+ """
+ self._schedule_cron_expression = schedule_cron_expression
+
+ @property
+ def time_schedule_begin(self):
+ """
+ Gets the time_schedule_begin of this Job.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_begin of this Job.
+ :rtype: datetime
+ """
+ return self._time_schedule_begin
+
+ @time_schedule_begin.setter
+ def time_schedule_begin(self, time_schedule_begin):
+ """
+ Sets the time_schedule_begin of this Job.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_begin: The time_schedule_begin of this Job.
+ :type: datetime
+ """
+ self._time_schedule_begin = time_schedule_begin
+
+ @property
+ def time_schedule_end(self):
+ """
+ Gets the time_schedule_end of this Job.
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_end of this Job.
+ :rtype: datetime
+ """
+ return self._time_schedule_end
+
+ @time_schedule_end.setter
+ def time_schedule_end(self, time_schedule_end):
+ """
+ Sets the time_schedule_end of this Job.
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_end: The time_schedule_end of this Job.
+ :type: datetime
+ """
+ self._time_schedule_end = time_schedule_end
+
+ @property
+ def schedule_type(self):
+ """
+ Gets the schedule_type of this Job.
+ Type of job schedule that is inferred from the scheduling properties.
+
+
+ :return: The schedule_type of this Job.
+ :rtype: str
+ """
+ return self._schedule_type
+
+ @schedule_type.setter
+ def schedule_type(self, schedule_type):
+ """
+ Sets the schedule_type of this Job.
+ Type of job schedule that is inferred from the scheduling properties.
+
+
+ :param schedule_type: The schedule_type of this Job.
+ :type: str
+ """
+ self._schedule_type = schedule_type
+
+ @property
+ def connection_key(self):
+ """
+ Gets the connection_key of this Job.
+ The key of the connection used by the job. This connection will override the default connection specified in
+ the associated job definition. All executions will use this connection.
+
+
+ :return: The connection_key of this Job.
+ :rtype: str
+ """
+ return self._connection_key
+
+ @connection_key.setter
+ def connection_key(self, connection_key):
+ """
+ Sets the connection_key of this Job.
+ The key of the connection used by the job. This connection will override the default connection specified in
+ the associated job definition. All executions will use this connection.
+
+
+ :param connection_key: The connection_key of this Job.
+ :type: str
+ """
+ self._connection_key = connection_key
+
+ @property
+ def job_definition_key(self):
+ """
+ Gets the job_definition_key of this Job.
+ The unique key of the job definition resource that defined the scope of this job.
+
+
+ :return: The job_definition_key of this Job.
+ :rtype: str
+ """
+ return self._job_definition_key
+
+ @job_definition_key.setter
+ def job_definition_key(self, job_definition_key):
+ """
+ Sets the job_definition_key of this Job.
+ The unique key of the job definition resource that defined the scope of this job.
+
+
+ :param job_definition_key: The job_definition_key of this Job.
+ :type: str
+ """
+ self._job_definition_key = job_definition_key
+
+ @property
+ def internal_version(self):
+ """
+ Gets the internal_version of this Job.
+ Internal version of the job resource.
+
+
+ :return: The internal_version of this Job.
+ :rtype: str
+ """
+ return self._internal_version
+
+ @internal_version.setter
+ def internal_version(self, internal_version):
+ """
+ Sets the internal_version of this Job.
+ Internal version of the job resource.
+
+
+ :param internal_version: The internal_version of this Job.
+ :type: str
+ """
+ self._internal_version = internal_version
+
+ @property
+ def execution_count(self):
+ """
+ Gets the execution_count of this Job.
+ The total number of executions for this job schedule.
+
+
+ :return: The execution_count of this Job.
+ :rtype: int
+ """
+ return self._execution_count
+
+ @execution_count.setter
+ def execution_count(self, execution_count):
+ """
+ Sets the execution_count of this Job.
+ The total number of executions for this job schedule.
+
+
+ :param execution_count: The execution_count of this Job.
+ :type: int
+ """
+ self._execution_count = execution_count
+
+ @property
+ def time_of_latest_execution(self):
+ """
+ Gets the time_of_latest_execution of this Job.
+ The date and time of the most recent execution for this Job, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_of_latest_execution of this Job.
+ :rtype: datetime
+ """
+ return self._time_of_latest_execution
+
+ @time_of_latest_execution.setter
+ def time_of_latest_execution(self, time_of_latest_execution):
+ """
+ Sets the time_of_latest_execution of this Job.
+ The date and time of the most recent execution for this Job, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_of_latest_execution: The time_of_latest_execution of this Job.
+ :type: datetime
+ """
+ self._time_of_latest_execution = time_of_latest_execution
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Job.
+ OCID of the user who created this job.
+
+
+ :return: The created_by_id of this Job.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Job.
+ OCID of the user who created this job.
+
+
+ :param created_by_id: The created_by_id of this Job.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Job.
+ OCID of the user who updated this job.
+
+
+ :return: The updated_by_id of this Job.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Job.
+ OCID of the user who updated this job.
+
+
+ :param updated_by_id: The updated_by_id of this Job.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Job.
+ URI to the job instance in the API.
+
+
+ :return: The uri of this Job.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Job.
+ URI to the job instance in the API.
+
+
+ :param uri: The uri of this Job.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_collection.py b/src/oci/data_catalog/models/job_collection.py
new file mode 100644
index 0000000000..8450f8c672
--- /dev/null
+++ b/src/oci/data_catalog/models/job_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobCollection(object):
+ """
+ Results of a jobs listing. Jobs are scheduled instances of a job definition.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this JobCollection.
+ :type items: list[JobSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[JobSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this JobCollection.
+ Collection of jobs.
+
+
+ :return: The items of this JobCollection.
+ :rtype: list[JobSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this JobCollection.
+ Collection of jobs.
+
+
+ :param items: The items of this JobCollection.
+ :type: list[JobSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_definition.py b/src/oci/data_catalog/models/job_definition.py
new file mode 100644
index 0000000000..c46bcbd9ff
--- /dev/null
+++ b/src/oci/data_catalog/models/job_definition.py
@@ -0,0 +1,620 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobDefinition(object):
+ """
+ Representation of a job definition resource. Job definitions define the harvest scope and includes the list
+ of objects to be harvested along with a schedule. The list of objects is usually specified through a combination
+ of object type, regular expressions, or specific names of objects and a sample size for the data harvested.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobDefinition object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobDefinition.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this JobDefinition.
+ :type display_name: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this JobDefinition.
+ :type catalog_id: str
+
+ :param job_type:
+ The value to assign to the job_type property of this JobDefinition.
+ :type job_type: str
+
+ :param is_incremental:
+ The value to assign to the is_incremental property of this JobDefinition.
+ :type is_incremental: bool
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this JobDefinition.
+ :type data_asset_key: str
+
+ :param description:
+ The value to assign to the description property of this JobDefinition.
+ :type description: str
+
+ :param connection_key:
+ The value to assign to the connection_key property of this JobDefinition.
+ :type connection_key: str
+
+ :param internal_version:
+ The value to assign to the internal_version property of this JobDefinition.
+ :type internal_version: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this JobDefinition.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobDefinition.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this JobDefinition.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this JobDefinition.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this JobDefinition.
+ :type updated_by_id: str
+
+ :param uri:
+ The value to assign to the uri property of this JobDefinition.
+ :type uri: str
+
+ :param is_sample_data_extracted:
+ The value to assign to the is_sample_data_extracted property of this JobDefinition.
+ :type is_sample_data_extracted: bool
+
+ :param sample_data_size_in_mbs:
+ The value to assign to the sample_data_size_in_mbs property of this JobDefinition.
+ :type sample_data_size_in_mbs: int
+
+ :param properties:
+ The value to assign to the properties property of this JobDefinition.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'catalog_id': 'str',
+ 'job_type': 'str',
+ 'is_incremental': 'bool',
+ 'data_asset_key': 'str',
+ 'description': 'str',
+ 'connection_key': 'str',
+ 'internal_version': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'uri': 'str',
+ 'is_sample_data_extracted': 'bool',
+ 'sample_data_size_in_mbs': 'int',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'catalog_id': 'catalogId',
+ 'job_type': 'jobType',
+ 'is_incremental': 'isIncremental',
+ 'data_asset_key': 'dataAssetKey',
+ 'description': 'description',
+ 'connection_key': 'connectionKey',
+ 'internal_version': 'internalVersion',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'uri': 'uri',
+ 'is_sample_data_extracted': 'isSampleDataExtracted',
+ 'sample_data_size_in_mbs': 'sampleDataSizeInMBs',
+ 'properties': 'properties'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._catalog_id = None
+ self._job_type = None
+ self._is_incremental = None
+ self._data_asset_key = None
+ self._description = None
+ self._connection_key = None
+ self._internal_version = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._uri = None
+ self._is_sample_data_extracted = None
+ self._sample_data_size_in_mbs = None
+ self._properties = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobDefinition.
+ Unique key of the job definition resource that is immutable.
+
+
+ :return: The key of this JobDefinition.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobDefinition.
+ Unique key of the job definition resource that is immutable.
+
+
+ :param key: The key of this JobDefinition.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this JobDefinition.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this JobDefinition.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this JobDefinition.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this JobDefinition.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this JobDefinition.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this JobDefinition.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this JobDefinition.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this JobDefinition.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this JobDefinition.
+ Type of the job definition.
+
+
+ :return: The job_type of this JobDefinition.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this JobDefinition.
+ Type of the job definition.
+
+
+ :param job_type: The job_type of this JobDefinition.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def is_incremental(self):
+ """
+ Gets the is_incremental of this JobDefinition.
+ Specifies if the job definition is incremental or full.
+
+
+ :return: The is_incremental of this JobDefinition.
+ :rtype: bool
+ """
+ return self._is_incremental
+
+ @is_incremental.setter
+ def is_incremental(self, is_incremental):
+ """
+ Sets the is_incremental of this JobDefinition.
+ Specifies if the job definition is incremental or full.
+
+
+ :param is_incremental: The is_incremental of this JobDefinition.
+ :type: bool
+ """
+ self._is_incremental = is_incremental
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this JobDefinition.
+ The key of the data asset for which the job is defined.
+
+
+ :return: The data_asset_key of this JobDefinition.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this JobDefinition.
+ The key of the data asset for which the job is defined.
+
+
+ :param data_asset_key: The data_asset_key of this JobDefinition.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def description(self):
+ """
+ Gets the description of this JobDefinition.
+ Detailed description of the job definition.
+
+
+ :return: The description of this JobDefinition.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this JobDefinition.
+ Detailed description of the job definition.
+
+
+ :param description: The description of this JobDefinition.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def connection_key(self):
+ """
+ Gets the connection_key of this JobDefinition.
+ The key of the default connection resource to be used for harvest, sampling, profiling jobs.
+ This may be overridden in each job instance.
+
+
+ :return: The connection_key of this JobDefinition.
+ :rtype: str
+ """
+ return self._connection_key
+
+ @connection_key.setter
+ def connection_key(self, connection_key):
+ """
+ Sets the connection_key of this JobDefinition.
+ The key of the default connection resource to be used for harvest, sampling, profiling jobs.
+ This may be overridden in each job instance.
+
+
+ :param connection_key: The connection_key of this JobDefinition.
+ :type: str
+ """
+ self._connection_key = connection_key
+
+ @property
+ def internal_version(self):
+ """
+ Gets the internal_version of this JobDefinition.
+ Version of the job definition object. Used internally but can be visible to users.
+
+
+ :return: The internal_version of this JobDefinition.
+ :rtype: str
+ """
+ return self._internal_version
+
+ @internal_version.setter
+ def internal_version(self, internal_version):
+ """
+ Sets the internal_version of this JobDefinition.
+ Version of the job definition object. Used internally but can be visible to users.
+
+
+ :param internal_version: The internal_version of this JobDefinition.
+ :type: str
+ """
+ self._internal_version = internal_version
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this JobDefinition.
+ Lifecycle state of the job definition.
+
+
+ :return: The lifecycle_state of this JobDefinition.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this JobDefinition.
+ Lifecycle state of the job definition.
+
+
+ :param lifecycle_state: The lifecycle_state of this JobDefinition.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobDefinition.
+ The date and time the job definition was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobDefinition.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobDefinition.
+ The date and time the job definition was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobDefinition.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this JobDefinition.
+ The last time that any change was made to the data asset. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this JobDefinition.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this JobDefinition.
+ The last time that any change was made to the data asset. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this JobDefinition.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this JobDefinition.
+ OCID of the user who created this job definition.
+
+
+ :return: The created_by_id of this JobDefinition.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this JobDefinition.
+ OCID of the user who created this job definition.
+
+
+ :param created_by_id: The created_by_id of this JobDefinition.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this JobDefinition.
+ OCID of the user who updated this job definition.
+
+
+ :return: The updated_by_id of this JobDefinition.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this JobDefinition.
+ OCID of the user who updated this job definition.
+
+
+ :param updated_by_id: The updated_by_id of this JobDefinition.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobDefinition.
+ URI to the job definition instance in the API.
+
+
+ :return: The uri of this JobDefinition.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobDefinition.
+ URI to the job definition instance in the API.
+
+
+ :param uri: The uri of this JobDefinition.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def is_sample_data_extracted(self):
+ """
+ Gets the is_sample_data_extracted of this JobDefinition.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :return: The is_sample_data_extracted of this JobDefinition.
+ :rtype: bool
+ """
+ return self._is_sample_data_extracted
+
+ @is_sample_data_extracted.setter
+ def is_sample_data_extracted(self, is_sample_data_extracted):
+ """
+ Sets the is_sample_data_extracted of this JobDefinition.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :param is_sample_data_extracted: The is_sample_data_extracted of this JobDefinition.
+ :type: bool
+ """
+ self._is_sample_data_extracted = is_sample_data_extracted
+
+ @property
+ def sample_data_size_in_mbs(self):
+ """
+ Gets the sample_data_size_in_mbs of this JobDefinition.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :return: The sample_data_size_in_mbs of this JobDefinition.
+ :rtype: int
+ """
+ return self._sample_data_size_in_mbs
+
+ @sample_data_size_in_mbs.setter
+ def sample_data_size_in_mbs(self, sample_data_size_in_mbs):
+ """
+ Sets the sample_data_size_in_mbs of this JobDefinition.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :param sample_data_size_in_mbs: The sample_data_size_in_mbs of this JobDefinition.
+ :type: int
+ """
+ self._sample_data_size_in_mbs = sample_data_size_in_mbs
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this JobDefinition.
+ A map of maps that contains the properties which are specific to the job type. Each job type
+ definition may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job definitions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this JobDefinition.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this JobDefinition.
+ A map of maps that contains the properties which are specific to the job type. Each job type
+ definition may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job definitions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this JobDefinition.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_definition_collection.py b/src/oci/data_catalog/models/job_definition_collection.py
new file mode 100644
index 0000000000..dbbc4c660d
--- /dev/null
+++ b/src/oci/data_catalog/models/job_definition_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobDefinitionCollection(object):
+ """
+ Results of a job definition listing. Job definitions are resources that describe the scope and type of jobs (eg: harvest, profiling, sampling) that are defined by users in the system.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobDefinitionCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this JobDefinitionCollection.
+ :type items: list[JobDefinitionSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[JobDefinitionSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this JobDefinitionCollection.
+ Collection of job definitions.
+
+
+ :return: The items of this JobDefinitionCollection.
+ :rtype: list[JobDefinitionSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this JobDefinitionCollection.
+ Collection of job definitions.
+
+
+ :param items: The items of this JobDefinitionCollection.
+ :type: list[JobDefinitionSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_definition_permissions_summary.py b/src/oci/data_catalog/models/job_definition_permissions_summary.py
new file mode 100644
index 0000000000..1221eb9df0
--- /dev/null
+++ b/src/oci/data_catalog/models/job_definition_permissions_summary.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobDefinitionPermissionsSummary(object):
+ """
+ Permissions object for job definitions.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobDefinitionPermissionsSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param job_definition_key:
+ The value to assign to the job_definition_key property of this JobDefinitionPermissionsSummary.
+ :type job_definition_key: str
+
+ :param user_permissions:
+ The value to assign to the user_permissions property of this JobDefinitionPermissionsSummary.
+ :type user_permissions: list[str]
+
+ """
+ self.swagger_types = {
+ 'job_definition_key': 'str',
+ 'user_permissions': 'list[str]'
+ }
+
+ self.attribute_map = {
+ 'job_definition_key': 'jobDefinitionKey',
+ 'user_permissions': 'userPermissions'
+ }
+
+ self._job_definition_key = None
+ self._user_permissions = None
+
+ @property
+ def job_definition_key(self):
+ """
+ Gets the job_definition_key of this JobDefinitionPermissionsSummary.
+ The unique key of the parent job definition.
+
+
+ :return: The job_definition_key of this JobDefinitionPermissionsSummary.
+ :rtype: str
+ """
+ return self._job_definition_key
+
+ @job_definition_key.setter
+ def job_definition_key(self, job_definition_key):
+ """
+ Sets the job_definition_key of this JobDefinitionPermissionsSummary.
+ The unique key of the parent job definition.
+
+
+ :param job_definition_key: The job_definition_key of this JobDefinitionPermissionsSummary.
+ :type: str
+ """
+ self._job_definition_key = job_definition_key
+
+ @property
+ def user_permissions(self):
+ """
+ Gets the user_permissions of this JobDefinitionPermissionsSummary.
+ An array of permissions.
+
+
+ :return: The user_permissions of this JobDefinitionPermissionsSummary.
+ :rtype: list[str]
+ """
+ return self._user_permissions
+
+ @user_permissions.setter
+ def user_permissions(self, user_permissions):
+ """
+ Sets the user_permissions of this JobDefinitionPermissionsSummary.
+ An array of permissions.
+
+
+ :param user_permissions: The user_permissions of this JobDefinitionPermissionsSummary.
+ :type: list[str]
+ """
+ self._user_permissions = user_permissions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_definition_scope.py b/src/oci/data_catalog/models/job_definition_scope.py
new file mode 100644
index 0000000000..0abd90e0af
--- /dev/null
+++ b/src/oci/data_catalog/models/job_definition_scope.py
@@ -0,0 +1,224 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobDefinitionScope(object):
+ """
+ Defines the rules or criteria based on which the scope for job definition is circumscribed.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobDefinitionScope object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param folder_name:
+ The value to assign to the folder_name property of this JobDefinitionScope.
+ :type folder_name: str
+
+ :param entity_name:
+ The value to assign to the entity_name property of this JobDefinitionScope.
+ :type entity_name: str
+
+ :param folder_name_filter:
+ The value to assign to the folder_name_filter property of this JobDefinitionScope.
+ :type folder_name_filter: str
+
+ :param entity_name_filter:
+ The value to assign to the entity_name_filter property of this JobDefinitionScope.
+ :type entity_name_filter: str
+
+ :param is_sample_data_extracted:
+ The value to assign to the is_sample_data_extracted property of this JobDefinitionScope.
+ :type is_sample_data_extracted: bool
+
+ :param sample_data_size_in_mbs:
+ The value to assign to the sample_data_size_in_mbs property of this JobDefinitionScope.
+ :type sample_data_size_in_mbs: int
+
+ """
+ self.swagger_types = {
+ 'folder_name': 'str',
+ 'entity_name': 'str',
+ 'folder_name_filter': 'str',
+ 'entity_name_filter': 'str',
+ 'is_sample_data_extracted': 'bool',
+ 'sample_data_size_in_mbs': 'int'
+ }
+
+ self.attribute_map = {
+ 'folder_name': 'folderName',
+ 'entity_name': 'entityName',
+ 'folder_name_filter': 'folderNameFilter',
+ 'entity_name_filter': 'entityNameFilter',
+ 'is_sample_data_extracted': 'isSampleDataExtracted',
+ 'sample_data_size_in_mbs': 'sampleDataSizeInMBs'
+ }
+
+ self._folder_name = None
+ self._entity_name = None
+ self._folder_name_filter = None
+ self._entity_name_filter = None
+ self._is_sample_data_extracted = None
+ self._sample_data_size_in_mbs = None
+
+ @property
+ def folder_name(self):
+ """
+ Gets the folder_name of this JobDefinitionScope.
+ Name of the folder or schema for this metadata harvest.
+
+
+ :return: The folder_name of this JobDefinitionScope.
+ :rtype: str
+ """
+ return self._folder_name
+
+ @folder_name.setter
+ def folder_name(self, folder_name):
+ """
+ Sets the folder_name of this JobDefinitionScope.
+ Name of the folder or schema for this metadata harvest.
+
+
+ :param folder_name: The folder_name of this JobDefinitionScope.
+ :type: str
+ """
+ self._folder_name = folder_name
+
+ @property
+ def entity_name(self):
+ """
+ Gets the entity_name of this JobDefinitionScope.
+ Name of the entity for this metadata harvest.
+
+
+ :return: The entity_name of this JobDefinitionScope.
+ :rtype: str
+ """
+ return self._entity_name
+
+ @entity_name.setter
+ def entity_name(self, entity_name):
+ """
+ Sets the entity_name of this JobDefinitionScope.
+ Name of the entity for this metadata harvest.
+
+
+ :param entity_name: The entity_name of this JobDefinitionScope.
+ :type: str
+ """
+ self._entity_name = entity_name
+
+ @property
+ def folder_name_filter(self):
+ """
+ Gets the folder_name_filter of this JobDefinitionScope.
+ Filter rules with regular expression to specify folder names for this metadata harvest.
+
+
+ :return: The folder_name_filter of this JobDefinitionScope.
+ :rtype: str
+ """
+ return self._folder_name_filter
+
+ @folder_name_filter.setter
+ def folder_name_filter(self, folder_name_filter):
+ """
+ Sets the folder_name_filter of this JobDefinitionScope.
+ Filter rules with regular expression to specify folder names for this metadata harvest.
+
+
+ :param folder_name_filter: The folder_name_filter of this JobDefinitionScope.
+ :type: str
+ """
+ self._folder_name_filter = folder_name_filter
+
+ @property
+ def entity_name_filter(self):
+ """
+ Gets the entity_name_filter of this JobDefinitionScope.
+ Filter rules with regular expression to specify entity names for this metadata harvest.
+
+
+ :return: The entity_name_filter of this JobDefinitionScope.
+ :rtype: str
+ """
+ return self._entity_name_filter
+
+ @entity_name_filter.setter
+ def entity_name_filter(self, entity_name_filter):
+ """
+ Sets the entity_name_filter of this JobDefinitionScope.
+ Filter rules with regular expression to specify entity names for this metadata harvest.
+
+
+ :param entity_name_filter: The entity_name_filter of this JobDefinitionScope.
+ :type: str
+ """
+ self._entity_name_filter = entity_name_filter
+
+ @property
+ def is_sample_data_extracted(self):
+ """
+ Gets the is_sample_data_extracted of this JobDefinitionScope.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :return: The is_sample_data_extracted of this JobDefinitionScope.
+ :rtype: bool
+ """
+ return self._is_sample_data_extracted
+
+ @is_sample_data_extracted.setter
+ def is_sample_data_extracted(self, is_sample_data_extracted):
+ """
+ Sets the is_sample_data_extracted of this JobDefinitionScope.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :param is_sample_data_extracted: The is_sample_data_extracted of this JobDefinitionScope.
+ :type: bool
+ """
+ self._is_sample_data_extracted = is_sample_data_extracted
+
+ @property
+ def sample_data_size_in_mbs(self):
+ """
+ Gets the sample_data_size_in_mbs of this JobDefinitionScope.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :return: The sample_data_size_in_mbs of this JobDefinitionScope.
+ :rtype: int
+ """
+ return self._sample_data_size_in_mbs
+
+ @sample_data_size_in_mbs.setter
+ def sample_data_size_in_mbs(self, sample_data_size_in_mbs):
+ """
+ Sets the sample_data_size_in_mbs of this JobDefinitionScope.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :param sample_data_size_in_mbs: The sample_data_size_in_mbs of this JobDefinitionScope.
+ :type: int
+ """
+ self._sample_data_size_in_mbs = sample_data_size_in_mbs
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_definition_summary.py b/src/oci/data_catalog/models/job_definition_summary.py
new file mode 100644
index 0000000000..f6e193c83f
--- /dev/null
+++ b/src/oci/data_catalog/models/job_definition_summary.py
@@ -0,0 +1,327 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobDefinitionSummary(object):
+ """
+ A list of job definition resources. Job definitions define the harvest scope and includes the list of objects
+ to be harvested along with a schedule. The list of objects is usually specified through a combination of object
+ type, regular expressions, or specific names of objects and a sample size for the data harvested.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobDefinitionSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobDefinitionSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this JobDefinitionSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this JobDefinitionSummary.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this JobDefinitionSummary.
+ :type catalog_id: str
+
+ :param uri:
+ The value to assign to the uri property of this JobDefinitionSummary.
+ :type uri: str
+
+ :param job_type:
+ The value to assign to the job_type property of this JobDefinitionSummary.
+ :type job_type: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this JobDefinitionSummary.
+ :type lifecycle_state: str
+
+ :param is_sample_data_extracted:
+ The value to assign to the is_sample_data_extracted property of this JobDefinitionSummary.
+ :type is_sample_data_extracted: bool
+
+ :param time_created:
+ The value to assign to the time_created property of this JobDefinitionSummary.
+ :type time_created: datetime
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'uri': 'str',
+ 'job_type': 'str',
+ 'lifecycle_state': 'str',
+ 'is_sample_data_extracted': 'bool',
+ 'time_created': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'uri': 'uri',
+ 'job_type': 'jobType',
+ 'lifecycle_state': 'lifecycleState',
+ 'is_sample_data_extracted': 'isSampleDataExtracted',
+ 'time_created': 'timeCreated'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._catalog_id = None
+ self._uri = None
+ self._job_type = None
+ self._lifecycle_state = None
+ self._is_sample_data_extracted = None
+ self._time_created = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobDefinitionSummary.
+ Unique key of the job definition resource that is immutable.
+
+
+ :return: The key of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobDefinitionSummary.
+ Unique key of the job definition resource that is immutable.
+
+
+ :param key: The key of this JobDefinitionSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this JobDefinitionSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this JobDefinitionSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this JobDefinitionSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this JobDefinitionSummary.
+ Detailed description of the job definition.
+
+
+ :return: The description of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this JobDefinitionSummary.
+ Detailed description of the job definition.
+
+
+ :param description: The description of this JobDefinitionSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this JobDefinitionSummary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this JobDefinitionSummary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this JobDefinitionSummary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobDefinitionSummary.
+ URI to the job definition instance in the API.
+
+
+ :return: The uri of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobDefinitionSummary.
+ URI to the job definition instance in the API.
+
+
+ :param uri: The uri of this JobDefinitionSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this JobDefinitionSummary.
+ Type of the job definition.
+
+
+ :return: The job_type of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this JobDefinitionSummary.
+ Type of the job definition.
+
+
+ :param job_type: The job_type of this JobDefinitionSummary.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this JobDefinitionSummary.
+ Lifecycle state of the job definition.
+
+
+ :return: The lifecycle_state of this JobDefinitionSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this JobDefinitionSummary.
+ Lifecycle state of the job definition.
+
+
+ :param lifecycle_state: The lifecycle_state of this JobDefinitionSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def is_sample_data_extracted(self):
+ """
+ Gets the is_sample_data_extracted of this JobDefinitionSummary.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :return: The is_sample_data_extracted of this JobDefinitionSummary.
+ :rtype: bool
+ """
+ return self._is_sample_data_extracted
+
+ @is_sample_data_extracted.setter
+ def is_sample_data_extracted(self, is_sample_data_extracted):
+ """
+ Sets the is_sample_data_extracted of this JobDefinitionSummary.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :param is_sample_data_extracted: The is_sample_data_extracted of this JobDefinitionSummary.
+ :type: bool
+ """
+ self._is_sample_data_extracted = is_sample_data_extracted
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobDefinitionSummary.
+ The date and time the job definition was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobDefinitionSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobDefinitionSummary.
+ The date and time the job definition was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobDefinitionSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_execution.py b/src/oci/data_catalog/models/job_execution.py
new file mode 100644
index 0000000000..29cbe98bb6
--- /dev/null
+++ b/src/oci/data_catalog/models/job_execution.py
@@ -0,0 +1,682 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobExecution(object):
+ """
+ A job execution is a unit of work being executed on behalf of a job.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobExecution object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobExecution.
+ :type key: str
+
+ :param job_key:
+ The value to assign to the job_key property of this JobExecution.
+ :type job_key: str
+
+ :param job_type:
+ The value to assign to the job_type property of this JobExecution.
+ :type job_type: str
+
+ :param sub_type:
+ The value to assign to the sub_type property of this JobExecution.
+ :type sub_type: str
+
+ :param parent_key:
+ The value to assign to the parent_key property of this JobExecution.
+ :type parent_key: str
+
+ :param schedule_instance_key:
+ The value to assign to the schedule_instance_key property of this JobExecution.
+ :type schedule_instance_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this JobExecution.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobExecution.
+ :type time_created: datetime
+
+ :param time_started:
+ The value to assign to the time_started property of this JobExecution.
+ :type time_started: datetime
+
+ :param time_ended:
+ The value to assign to the time_ended property of this JobExecution.
+ :type time_ended: datetime
+
+ :param error_code:
+ The value to assign to the error_code property of this JobExecution.
+ :type error_code: str
+
+ :param error_message:
+ The value to assign to the error_message property of this JobExecution.
+ :type error_message: str
+
+ :param process_key:
+ The value to assign to the process_key property of this JobExecution.
+ :type process_key: str
+
+ :param external_url:
+ The value to assign to the external_url property of this JobExecution.
+ :type external_url: str
+
+ :param event_key:
+ The value to assign to the event_key property of this JobExecution.
+ :type event_key: str
+
+ :param data_entity_key:
+ The value to assign to the data_entity_key property of this JobExecution.
+ :type data_entity_key: str
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this JobExecution.
+ :type created_by_id: str
+
+ :param updated_by:
+ The value to assign to the updated_by property of this JobExecution.
+ :type updated_by: str
+
+ :param uri:
+ The value to assign to the uri property of this JobExecution.
+ :type uri: str
+
+ :param properties:
+ The value to assign to the properties property of this JobExecution.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'job_key': 'str',
+ 'job_type': 'str',
+ 'sub_type': 'str',
+ 'parent_key': 'str',
+ 'schedule_instance_key': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_started': 'datetime',
+ 'time_ended': 'datetime',
+ 'error_code': 'str',
+ 'error_message': 'str',
+ 'process_key': 'str',
+ 'external_url': 'str',
+ 'event_key': 'str',
+ 'data_entity_key': 'str',
+ 'created_by_id': 'str',
+ 'updated_by': 'str',
+ 'uri': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'job_key': 'jobKey',
+ 'job_type': 'jobType',
+ 'sub_type': 'subType',
+ 'parent_key': 'parentKey',
+ 'schedule_instance_key': 'scheduleInstanceKey',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_started': 'timeStarted',
+ 'time_ended': 'timeEnded',
+ 'error_code': 'errorCode',
+ 'error_message': 'errorMessage',
+ 'process_key': 'processKey',
+ 'external_url': 'externalUrl',
+ 'event_key': 'eventKey',
+ 'data_entity_key': 'dataEntityKey',
+ 'created_by_id': 'createdById',
+ 'updated_by': 'updatedBy',
+ 'uri': 'uri',
+ 'properties': 'properties'
+ }
+
+ self._key = None
+ self._job_key = None
+ self._job_type = None
+ self._sub_type = None
+ self._parent_key = None
+ self._schedule_instance_key = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_started = None
+ self._time_ended = None
+ self._error_code = None
+ self._error_message = None
+ self._process_key = None
+ self._external_url = None
+ self._event_key = None
+ self._data_entity_key = None
+ self._created_by_id = None
+ self._updated_by = None
+ self._uri = None
+ self._properties = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobExecution.
+ Unique key of the job execution resource.
+
+
+ :return: The key of this JobExecution.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobExecution.
+ Unique key of the job execution resource.
+
+
+ :param key: The key of this JobExecution.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def job_key(self):
+ """
+ Gets the job_key of this JobExecution.
+ The unique key of the parent job.
+
+
+ :return: The job_key of this JobExecution.
+ :rtype: str
+ """
+ return self._job_key
+
+ @job_key.setter
+ def job_key(self, job_key):
+ """
+ Sets the job_key of this JobExecution.
+ The unique key of the parent job.
+
+
+ :param job_key: The job_key of this JobExecution.
+ :type: str
+ """
+ self._job_key = job_key
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this JobExecution.
+ Type of the job execution.
+
+
+ :return: The job_type of this JobExecution.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this JobExecution.
+ Type of the job execution.
+
+
+ :param job_type: The job_type of this JobExecution.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def sub_type(self):
+ """
+ Gets the sub_type of this JobExecution.
+ Sub-type of this job execution.
+
+
+ :return: The sub_type of this JobExecution.
+ :rtype: str
+ """
+ return self._sub_type
+
+ @sub_type.setter
+ def sub_type(self, sub_type):
+ """
+ Sets the sub_type of this JobExecution.
+ Sub-type of this job execution.
+
+
+ :param sub_type: The sub_type of this JobExecution.
+ :type: str
+ """
+ self._sub_type = sub_type
+
+ @property
+ def parent_key(self):
+ """
+ Gets the parent_key of this JobExecution.
+ The unique key of the parent execution or null if this job execution has no parent.
+
+
+ :return: The parent_key of this JobExecution.
+ :rtype: str
+ """
+ return self._parent_key
+
+ @parent_key.setter
+ def parent_key(self, parent_key):
+ """
+ Sets the parent_key of this JobExecution.
+ The unique key of the parent execution or null if this job execution has no parent.
+
+
+ :param parent_key: The parent_key of this JobExecution.
+ :type: str
+ """
+ self._parent_key = parent_key
+
+ @property
+ def schedule_instance_key(self):
+ """
+ Gets the schedule_instance_key of this JobExecution.
+ The unique key of the triggering external scheduler resource or null if this job execution is not externally triggered.
+
+
+ :return: The schedule_instance_key of this JobExecution.
+ :rtype: str
+ """
+ return self._schedule_instance_key
+
+ @schedule_instance_key.setter
+ def schedule_instance_key(self, schedule_instance_key):
+ """
+ Sets the schedule_instance_key of this JobExecution.
+ The unique key of the triggering external scheduler resource or null if this job execution is not externally triggered.
+
+
+ :param schedule_instance_key: The schedule_instance_key of this JobExecution.
+ :type: str
+ """
+ self._schedule_instance_key = schedule_instance_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this JobExecution.
+ Status of the job execution, such as running, paused, or completed.
+
+
+ :return: The lifecycle_state of this JobExecution.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this JobExecution.
+ Status of the job execution, such as running, paused, or completed.
+
+
+ :param lifecycle_state: The lifecycle_state of this JobExecution.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobExecution.
+ The date and time the job execution was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobExecution.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobExecution.
+ The date and time the job execution was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobExecution.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_started(self):
+ """
+ Gets the time_started of this JobExecution.
+ Time that job execution started. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_started of this JobExecution.
+ :rtype: datetime
+ """
+ return self._time_started
+
+ @time_started.setter
+ def time_started(self, time_started):
+ """
+ Sets the time_started of this JobExecution.
+ Time that job execution started. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_started: The time_started of this JobExecution.
+ :type: datetime
+ """
+ self._time_started = time_started
+
+ @property
+ def time_ended(self):
+ """
+ Gets the time_ended of this JobExecution.
+ Time that the job execution ended or null if it hasn't yet completed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_ended of this JobExecution.
+ :rtype: datetime
+ """
+ return self._time_ended
+
+ @time_ended.setter
+ def time_ended(self, time_ended):
+ """
+ Sets the time_ended of this JobExecution.
+ Time that the job execution ended or null if it hasn't yet completed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_ended: The time_ended of this JobExecution.
+ :type: datetime
+ """
+ self._time_ended = time_ended
+
+ @property
+ def error_code(self):
+ """
+ Gets the error_code of this JobExecution.
+ Error code returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :return: The error_code of this JobExecution.
+ :rtype: str
+ """
+ return self._error_code
+
+ @error_code.setter
+ def error_code(self, error_code):
+ """
+ Sets the error_code of this JobExecution.
+ Error code returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :param error_code: The error_code of this JobExecution.
+ :type: str
+ """
+ self._error_code = error_code
+
+ @property
+ def error_message(self):
+ """
+ Gets the error_message of this JobExecution.
+ Error message returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :return: The error_message of this JobExecution.
+ :rtype: str
+ """
+ return self._error_message
+
+ @error_message.setter
+ def error_message(self, error_message):
+ """
+ Sets the error_message of this JobExecution.
+ Error message returned from the job execution or null if job is still running or didn't return an error.
+
+
+ :param error_message: The error_message of this JobExecution.
+ :type: str
+ """
+ self._error_message = error_message
+
+ @property
+ def process_key(self):
+ """
+ Gets the process_key of this JobExecution.
+ Process identifier related to the job execution if the job is an external job.
+
+
+ :return: The process_key of this JobExecution.
+ :rtype: str
+ """
+ return self._process_key
+
+ @process_key.setter
+ def process_key(self, process_key):
+ """
+ Sets the process_key of this JobExecution.
+ Process identifier related to the job execution if the job is an external job.
+
+
+ :param process_key: The process_key of this JobExecution.
+ :type: str
+ """
+ self._process_key = process_key
+
+ @property
+ def external_url(self):
+ """
+ Gets the external_url of this JobExecution.
+ If the job is an external process, then a URL of the job for accessing this resource and its status.
+
+
+ :return: The external_url of this JobExecution.
+ :rtype: str
+ """
+ return self._external_url
+
+ @external_url.setter
+ def external_url(self, external_url):
+ """
+ Sets the external_url of this JobExecution.
+ If the job is an external process, then a URL of the job for accessing this resource and its status.
+
+
+ :param external_url: The external_url of this JobExecution.
+ :type: str
+ """
+ self._external_url = external_url
+
+ @property
+ def event_key(self):
+ """
+ Gets the event_key of this JobExecution.
+ An identifier used for log message correlation.
+
+
+ :return: The event_key of this JobExecution.
+ :rtype: str
+ """
+ return self._event_key
+
+ @event_key.setter
+ def event_key(self, event_key):
+ """
+ Sets the event_key of this JobExecution.
+ An identifier used for log message correlation.
+
+
+ :param event_key: The event_key of this JobExecution.
+ :type: str
+ """
+ self._event_key = event_key
+
+ @property
+ def data_entity_key(self):
+ """
+ Gets the data_entity_key of this JobExecution.
+ The key of the associated data entity resource.
+
+
+ :return: The data_entity_key of this JobExecution.
+ :rtype: str
+ """
+ return self._data_entity_key
+
+ @data_entity_key.setter
+ def data_entity_key(self, data_entity_key):
+ """
+ Sets the data_entity_key of this JobExecution.
+ The key of the associated data entity resource.
+
+
+ :param data_entity_key: The data_entity_key of this JobExecution.
+ :type: str
+ """
+ self._data_entity_key = data_entity_key
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this JobExecution.
+ OCID of the user who created the job execution.
+
+
+ :return: The created_by_id of this JobExecution.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this JobExecution.
+ OCID of the user who created the job execution.
+
+
+ :param created_by_id: The created_by_id of this JobExecution.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by(self):
+ """
+ Gets the updated_by of this JobExecution.
+ OCID of the user who updated the job execution.
+
+
+ :return: The updated_by of this JobExecution.
+ :rtype: str
+ """
+ return self._updated_by
+
+ @updated_by.setter
+ def updated_by(self, updated_by):
+ """
+ Sets the updated_by of this JobExecution.
+ OCID of the user who updated the job execution.
+
+
+ :param updated_by: The updated_by of this JobExecution.
+ :type: str
+ """
+ self._updated_by = updated_by
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobExecution.
+ URI to the job execution instance in the API.
+
+
+ :return: The uri of this JobExecution.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobExecution.
+ URI to the job execution instance in the API.
+
+
+ :param uri: The uri of this JobExecution.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this JobExecution.
+ A map of maps that contains the execution context properties which are specific to a job execution. Each job
+ execution may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job executions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this JobExecution.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this JobExecution.
+ A map of maps that contains the execution context properties which are specific to a job execution. Each job
+ execution may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job executions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this JobExecution.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_execution_collection.py b/src/oci/data_catalog/models/job_execution_collection.py
new file mode 100644
index 0000000000..3c2eb1cd87
--- /dev/null
+++ b/src/oci/data_catalog/models/job_execution_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobExecutionCollection(object):
+ """
+ Results of a job executions listing. Job executions are execution instances of a scheduled job.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobExecutionCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this JobExecutionCollection.
+ :type items: list[JobExecutionSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[JobExecutionSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this JobExecutionCollection.
+ Collection of job executions.
+
+
+ :return: The items of this JobExecutionCollection.
+ :rtype: list[JobExecutionSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this JobExecutionCollection.
+ Collection of job executions.
+
+
+ :param items: The items of this JobExecutionCollection.
+ :type: list[JobExecutionSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_execution_summary.py b/src/oci/data_catalog/models/job_execution_summary.py
new file mode 100644
index 0000000000..b11fdf0ac1
--- /dev/null
+++ b/src/oci/data_catalog/models/job_execution_summary.py
@@ -0,0 +1,364 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobExecutionSummary(object):
+ """
+ A list of job executions. A job execution is a unit of work being executed on behalf of a job.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobExecutionSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobExecutionSummary.
+ :type key: str
+
+ :param job_key:
+ The value to assign to the job_key property of this JobExecutionSummary.
+ :type job_key: str
+
+ :param job_type:
+ The value to assign to the job_type property of this JobExecutionSummary.
+ :type job_type: str
+
+ :param parent_key:
+ The value to assign to the parent_key property of this JobExecutionSummary.
+ :type parent_key: str
+
+ :param schedule_instance_key:
+ The value to assign to the schedule_instance_key property of this JobExecutionSummary.
+ :type schedule_instance_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this JobExecutionSummary.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobExecutionSummary.
+ :type time_created: datetime
+
+ :param time_started:
+ The value to assign to the time_started property of this JobExecutionSummary.
+ :type time_started: datetime
+
+ :param time_ended:
+ The value to assign to the time_ended property of this JobExecutionSummary.
+ :type time_ended: datetime
+
+ :param uri:
+ The value to assign to the uri property of this JobExecutionSummary.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'job_key': 'str',
+ 'job_type': 'str',
+ 'parent_key': 'str',
+ 'schedule_instance_key': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_started': 'datetime',
+ 'time_ended': 'datetime',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'job_key': 'jobKey',
+ 'job_type': 'jobType',
+ 'parent_key': 'parentKey',
+ 'schedule_instance_key': 'scheduleInstanceKey',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_started': 'timeStarted',
+ 'time_ended': 'timeEnded',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._job_key = None
+ self._job_type = None
+ self._parent_key = None
+ self._schedule_instance_key = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_started = None
+ self._time_ended = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobExecutionSummary.
+ Unique key of the job execution resource.
+
+
+ :return: The key of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobExecutionSummary.
+ Unique key of the job execution resource.
+
+
+ :param key: The key of this JobExecutionSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def job_key(self):
+ """
+ Gets the job_key of this JobExecutionSummary.
+ The unique key of the parent job.
+
+
+ :return: The job_key of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._job_key
+
+ @job_key.setter
+ def job_key(self, job_key):
+ """
+ Sets the job_key of this JobExecutionSummary.
+ The unique key of the parent job.
+
+
+ :param job_key: The job_key of this JobExecutionSummary.
+ :type: str
+ """
+ self._job_key = job_key
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this JobExecutionSummary.
+ Type of the job execution.
+
+
+ :return: The job_type of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this JobExecutionSummary.
+ Type of the job execution.
+
+
+ :param job_type: The job_type of this JobExecutionSummary.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def parent_key(self):
+ """
+ Gets the parent_key of this JobExecutionSummary.
+ The unique key of the parent execution or null if this job execution has no parent.
+
+
+ :return: The parent_key of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._parent_key
+
+ @parent_key.setter
+ def parent_key(self, parent_key):
+ """
+ Sets the parent_key of this JobExecutionSummary.
+ The unique key of the parent execution or null if this job execution has no parent.
+
+
+ :param parent_key: The parent_key of this JobExecutionSummary.
+ :type: str
+ """
+ self._parent_key = parent_key
+
+ @property
+ def schedule_instance_key(self):
+ """
+ Gets the schedule_instance_key of this JobExecutionSummary.
+ The unique key of the triggering external scheduler resource or null if this job execution is not externally triggered.
+
+
+ :return: The schedule_instance_key of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._schedule_instance_key
+
+ @schedule_instance_key.setter
+ def schedule_instance_key(self, schedule_instance_key):
+ """
+ Sets the schedule_instance_key of this JobExecutionSummary.
+ The unique key of the triggering external scheduler resource or null if this job execution is not externally triggered.
+
+
+ :param schedule_instance_key: The schedule_instance_key of this JobExecutionSummary.
+ :type: str
+ """
+ self._schedule_instance_key = schedule_instance_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this JobExecutionSummary.
+ Status of the job execution, such as running, paused, or completed.
+
+
+ :return: The lifecycle_state of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this JobExecutionSummary.
+ Status of the job execution, such as running, paused, or completed.
+
+
+ :param lifecycle_state: The lifecycle_state of this JobExecutionSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobExecutionSummary.
+ The date and time the job execution was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobExecutionSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobExecutionSummary.
+ The date and time the job execution was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobExecutionSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_started(self):
+ """
+ Gets the time_started of this JobExecutionSummary.
+ Time that job execution started. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_started of this JobExecutionSummary.
+ :rtype: datetime
+ """
+ return self._time_started
+
+ @time_started.setter
+ def time_started(self, time_started):
+ """
+ Sets the time_started of this JobExecutionSummary.
+ Time that job execution started. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_started: The time_started of this JobExecutionSummary.
+ :type: datetime
+ """
+ self._time_started = time_started
+
+ @property
+ def time_ended(self):
+ """
+ Gets the time_ended of this JobExecutionSummary.
+ Time that the job execution ended or null if it hasn't yet completed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_ended of this JobExecutionSummary.
+ :rtype: datetime
+ """
+ return self._time_ended
+
+ @time_ended.setter
+ def time_ended(self, time_ended):
+ """
+ Sets the time_ended of this JobExecutionSummary.
+ Time that the job execution ended or null if it hasn't yet completed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_ended: The time_ended of this JobExecutionSummary.
+ :type: datetime
+ """
+ self._time_ended = time_ended
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobExecutionSummary.
+ URI to the job execution instance in the API.
+
+
+ :return: The uri of this JobExecutionSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobExecutionSummary.
+ URI to the job execution instance in the API.
+
+
+ :param uri: The uri of this JobExecutionSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_log.py b/src/oci/data_catalog/models/job_log.py
new file mode 100644
index 0000000000..08cf2574f2
--- /dev/null
+++ b/src/oci/data_catalog/models/job_log.py
@@ -0,0 +1,327 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobLog(object):
+ """
+ Job log details. A job log is an audit log record inserted during the lifecycle of a job execution instance.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobLog object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobLog.
+ :type key: str
+
+ :param job_execution_key:
+ The value to assign to the job_execution_key property of this JobLog.
+ :type job_execution_key: str
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this JobLog.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this JobLog.
+ :type updated_by_id: str
+
+ :param time_updated:
+ The value to assign to the time_updated property of this JobLog.
+ :type time_updated: datetime
+
+ :param time_created:
+ The value to assign to the time_created property of this JobLog.
+ :type time_created: datetime
+
+ :param severity:
+ The value to assign to the severity property of this JobLog.
+ :type severity: str
+
+ :param log_message:
+ The value to assign to the log_message property of this JobLog.
+ :type log_message: str
+
+ :param uri:
+ The value to assign to the uri property of this JobLog.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'job_execution_key': 'str',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'time_updated': 'datetime',
+ 'time_created': 'datetime',
+ 'severity': 'str',
+ 'log_message': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'job_execution_key': 'jobExecutionKey',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'time_updated': 'timeUpdated',
+ 'time_created': 'timeCreated',
+ 'severity': 'severity',
+ 'log_message': 'logMessage',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._job_execution_key = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._time_updated = None
+ self._time_created = None
+ self._severity = None
+ self._log_message = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobLog.
+ Unique key of the job log that is immutable.
+
+
+ :return: The key of this JobLog.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobLog.
+ Unique key of the job log that is immutable.
+
+
+ :param key: The key of this JobLog.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def job_execution_key(self):
+ """
+ Gets the job_execution_key of this JobLog.
+ The unique key of the parent job execution for which the log resource was created.
+
+
+ :return: The job_execution_key of this JobLog.
+ :rtype: str
+ """
+ return self._job_execution_key
+
+ @job_execution_key.setter
+ def job_execution_key(self, job_execution_key):
+ """
+ Sets the job_execution_key of this JobLog.
+ The unique key of the parent job execution for which the log resource was created.
+
+
+ :param job_execution_key: The job_execution_key of this JobLog.
+ :type: str
+ """
+ self._job_execution_key = job_execution_key
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this JobLog.
+ OCID of the user who created the log record for this job. Usually the executor of the job instance.
+
+
+ :return: The created_by_id of this JobLog.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this JobLog.
+ OCID of the user who created the log record for this job. Usually the executor of the job instance.
+
+
+ :param created_by_id: The created_by_id of this JobLog.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this JobLog.
+ OCID of the user who created the log record for this job. Usually the executor of the job instance.
+
+
+ :return: The updated_by_id of this JobLog.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this JobLog.
+ OCID of the user who created the log record for this job. Usually the executor of the job instance.
+
+
+ :param updated_by_id: The updated_by_id of this JobLog.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this JobLog.
+ Job log update time. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this JobLog.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this JobLog.
+ Job log update time. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this JobLog.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobLog.
+ The date and time the job log was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobLog.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobLog.
+ The date and time the job log was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobLog.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def severity(self):
+ """
+ Gets the severity of this JobLog.
+ Severity level for this log.
+
+
+ :return: The severity of this JobLog.
+ :rtype: str
+ """
+ return self._severity
+
+ @severity.setter
+ def severity(self, severity):
+ """
+ Sets the severity of this JobLog.
+ Severity level for this log.
+
+
+ :param severity: The severity of this JobLog.
+ :type: str
+ """
+ self._severity = severity
+
+ @property
+ def log_message(self):
+ """
+ Gets the log_message of this JobLog.
+ Message for this job log.
+
+
+ :return: The log_message of this JobLog.
+ :rtype: str
+ """
+ return self._log_message
+
+ @log_message.setter
+ def log_message(self, log_message):
+ """
+ Sets the log_message of this JobLog.
+ Message for this job log.
+
+
+ :param log_message: The log_message of this JobLog.
+ :type: str
+ """
+ self._log_message = log_message
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobLog.
+ URI to the job log instance in the API.
+
+
+ :return: The uri of this JobLog.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobLog.
+ URI to the job log instance in the API.
+
+
+ :param uri: The uri of this JobLog.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_log_collection.py b/src/oci/data_catalog/models/job_log_collection.py
new file mode 100644
index 0000000000..2e52f081d0
--- /dev/null
+++ b/src/oci/data_catalog/models/job_log_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobLogCollection(object):
+ """
+ Results of a job logs Listing. A job log is an audit log record inserted during the lifecycle of a job execution instance.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobLogCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this JobLogCollection.
+ :type items: list[JobLogSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[JobLogSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this JobLogCollection.
+ Collection of Job logs.
+
+
+ :return: The items of this JobLogCollection.
+ :rtype: list[JobLogSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this JobLogCollection.
+ Collection of Job logs.
+
+
+ :param items: The items of this JobLogCollection.
+ :type: list[JobLogSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_log_summary.py b/src/oci/data_catalog/models/job_log_summary.py
new file mode 100644
index 0000000000..bd23aaa9e7
--- /dev/null
+++ b/src/oci/data_catalog/models/job_log_summary.py
@@ -0,0 +1,232 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobLogSummary(object):
+ """
+ A list of job execution logs.
+ A job log is an audit log record inserted during the lifecycle of a job execution instance.
+ There can be one or more logs for an execution instance.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobLogSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobLogSummary.
+ :type key: str
+
+ :param job_execution_key:
+ The value to assign to the job_execution_key property of this JobLogSummary.
+ :type job_execution_key: str
+
+ :param uri:
+ The value to assign to the uri property of this JobLogSummary.
+ :type uri: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobLogSummary.
+ :type time_created: datetime
+
+ :param severity:
+ The value to assign to the severity property of this JobLogSummary.
+ :type severity: str
+
+ :param log_message:
+ The value to assign to the log_message property of this JobLogSummary.
+ :type log_message: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'job_execution_key': 'str',
+ 'uri': 'str',
+ 'time_created': 'datetime',
+ 'severity': 'str',
+ 'log_message': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'job_execution_key': 'jobExecutionKey',
+ 'uri': 'uri',
+ 'time_created': 'timeCreated',
+ 'severity': 'severity',
+ 'log_message': 'logMessage'
+ }
+
+ self._key = None
+ self._job_execution_key = None
+ self._uri = None
+ self._time_created = None
+ self._severity = None
+ self._log_message = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobLogSummary.
+ Unique key of the job log that is immutable.
+
+
+ :return: The key of this JobLogSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobLogSummary.
+ Unique key of the job log that is immutable.
+
+
+ :param key: The key of this JobLogSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def job_execution_key(self):
+ """
+ Gets the job_execution_key of this JobLogSummary.
+ The unique key of the parent job execution for which the log resource was created.
+
+
+ :return: The job_execution_key of this JobLogSummary.
+ :rtype: str
+ """
+ return self._job_execution_key
+
+ @job_execution_key.setter
+ def job_execution_key(self, job_execution_key):
+ """
+ Sets the job_execution_key of this JobLogSummary.
+ The unique key of the parent job execution for which the log resource was created.
+
+
+ :param job_execution_key: The job_execution_key of this JobLogSummary.
+ :type: str
+ """
+ self._job_execution_key = job_execution_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobLogSummary.
+ URI to the job log instance in the API.
+
+
+ :return: The uri of this JobLogSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobLogSummary.
+ URI to the job log instance in the API.
+
+
+ :param uri: The uri of this JobLogSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobLogSummary.
+ The date and time the job log was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobLogSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobLogSummary.
+ The date and time the job log was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobLogSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def severity(self):
+ """
+ Gets the severity of this JobLogSummary.
+ Severity level for this log.
+
+
+ :return: The severity of this JobLogSummary.
+ :rtype: str
+ """
+ return self._severity
+
+ @severity.setter
+ def severity(self, severity):
+ """
+ Sets the severity of this JobLogSummary.
+ Severity level for this log.
+
+
+ :param severity: The severity of this JobLogSummary.
+ :type: str
+ """
+ self._severity = severity
+
+ @property
+ def log_message(self):
+ """
+ Gets the log_message of this JobLogSummary.
+ Message for this job log.
+
+
+ :return: The log_message of this JobLogSummary.
+ :rtype: str
+ """
+ return self._log_message
+
+ @log_message.setter
+ def log_message(self, log_message):
+ """
+ Sets the log_message of this JobLogSummary.
+ Message for this job log.
+
+
+ :param log_message: The log_message of this JobLogSummary.
+ :type: str
+ """
+ self._log_message = log_message
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_metric.py b/src/oci/data_catalog/models/job_metric.py
new file mode 100644
index 0000000000..e6be653685
--- /dev/null
+++ b/src/oci/data_catalog/models/job_metric.py
@@ -0,0 +1,523 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobMetric(object):
+ """
+ A set of metrics are collected periodically to assess the state and performance characteristics of the execution
+ instance of a job. The metrics are grouped based on their category and sub categories and aggregated based on
+ their batch information.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobMetric object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobMetric.
+ :type key: str
+
+ :param description:
+ The value to assign to the description property of this JobMetric.
+ :type description: str
+
+ :param job_execution_key:
+ The value to assign to the job_execution_key property of this JobMetric.
+ :type job_execution_key: str
+
+ :param time_inserted:
+ The value to assign to the time_inserted property of this JobMetric.
+ :type time_inserted: datetime
+
+ :param category:
+ The value to assign to the category property of this JobMetric.
+ :type category: str
+
+ :param display_name:
+ The value to assign to the display_name property of this JobMetric.
+ :type display_name: str
+
+ :param sub_category:
+ The value to assign to the sub_category property of this JobMetric.
+ :type sub_category: str
+
+ :param unit:
+ The value to assign to the unit property of this JobMetric.
+ :type unit: str
+
+ :param value:
+ The value to assign to the value property of this JobMetric.
+ :type value: str
+
+ :param batch_key:
+ The value to assign to the batch_key property of this JobMetric.
+ :type batch_key: str
+
+ :param uri:
+ The value to assign to the uri property of this JobMetric.
+ :type uri: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobMetric.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this JobMetric.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this JobMetric.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this JobMetric.
+ :type updated_by_id: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'description': 'str',
+ 'job_execution_key': 'str',
+ 'time_inserted': 'datetime',
+ 'category': 'str',
+ 'display_name': 'str',
+ 'sub_category': 'str',
+ 'unit': 'str',
+ 'value': 'str',
+ 'batch_key': 'str',
+ 'uri': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'description': 'description',
+ 'job_execution_key': 'jobExecutionKey',
+ 'time_inserted': 'timeInserted',
+ 'category': 'category',
+ 'display_name': 'displayName',
+ 'sub_category': 'subCategory',
+ 'unit': 'unit',
+ 'value': 'value',
+ 'batch_key': 'batchKey',
+ 'uri': 'uri',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById'
+ }
+
+ self._key = None
+ self._description = None
+ self._job_execution_key = None
+ self._time_inserted = None
+ self._category = None
+ self._display_name = None
+ self._sub_category = None
+ self._unit = None
+ self._value = None
+ self._batch_key = None
+ self._uri = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobMetric.
+ Key of the job metric that is immutable.
+
+
+ :return: The key of this JobMetric.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobMetric.
+ Key of the job metric that is immutable.
+
+
+ :param key: The key of this JobMetric.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def description(self):
+ """
+ Gets the description of this JobMetric.
+ Detailed description of the metric.
+
+
+ :return: The description of this JobMetric.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this JobMetric.
+ Detailed description of the metric.
+
+
+ :param description: The description of this JobMetric.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def job_execution_key(self):
+ """
+ Gets the job_execution_key of this JobMetric.
+ The unique key of the parent job execution for which the job metric resource is being created.
+
+
+ :return: The job_execution_key of this JobMetric.
+ :rtype: str
+ """
+ return self._job_execution_key
+
+ @job_execution_key.setter
+ def job_execution_key(self, job_execution_key):
+ """
+ Sets the job_execution_key of this JobMetric.
+ The unique key of the parent job execution for which the job metric resource is being created.
+
+
+ :param job_execution_key: The job_execution_key of this JobMetric.
+ :type: str
+ """
+ self._job_execution_key = job_execution_key
+
+ @property
+ def time_inserted(self):
+ """
+ Gets the time_inserted of this JobMetric.
+ The time the metric was logged or captured in the system where the job executed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_inserted of this JobMetric.
+ :rtype: datetime
+ """
+ return self._time_inserted
+
+ @time_inserted.setter
+ def time_inserted(self, time_inserted):
+ """
+ Sets the time_inserted of this JobMetric.
+ The time the metric was logged or captured in the system where the job executed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_inserted: The time_inserted of this JobMetric.
+ :type: datetime
+ """
+ self._time_inserted = time_inserted
+
+ @property
+ def category(self):
+ """
+ Gets the category of this JobMetric.
+ Category of this metric.
+
+
+ :return: The category of this JobMetric.
+ :rtype: str
+ """
+ return self._category
+
+ @category.setter
+ def category(self, category):
+ """
+ Sets the category of this JobMetric.
+ Category of this metric.
+
+
+ :param category: The category of this JobMetric.
+ :type: str
+ """
+ self._category = category
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this JobMetric.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this JobMetric.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this JobMetric.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this JobMetric.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def sub_category(self):
+ """
+ Gets the sub_category of this JobMetric.
+ Sub category of this metric under the category. Used for aggregating values. May be null.
+
+
+ :return: The sub_category of this JobMetric.
+ :rtype: str
+ """
+ return self._sub_category
+
+ @sub_category.setter
+ def sub_category(self, sub_category):
+ """
+ Sets the sub_category of this JobMetric.
+ Sub category of this metric under the category. Used for aggregating values. May be null.
+
+
+ :param sub_category: The sub_category of this JobMetric.
+ :type: str
+ """
+ self._sub_category = sub_category
+
+ @property
+ def unit(self):
+ """
+ Gets the unit of this JobMetric.
+ Unit of this metric.
+
+
+ :return: The unit of this JobMetric.
+ :rtype: str
+ """
+ return self._unit
+
+ @unit.setter
+ def unit(self, unit):
+ """
+ Sets the unit of this JobMetric.
+ Unit of this metric.
+
+
+ :param unit: The unit of this JobMetric.
+ :type: str
+ """
+ self._unit = unit
+
+ @property
+ def value(self):
+ """
+ Gets the value of this JobMetric.
+ Value of this metric.
+
+
+ :return: The value of this JobMetric.
+ :rtype: str
+ """
+ return self._value
+
+ @value.setter
+ def value(self, value):
+ """
+ Sets the value of this JobMetric.
+ Value of this metric.
+
+
+ :param value: The value of this JobMetric.
+ :type: str
+ """
+ self._value = value
+
+ @property
+ def batch_key(self):
+ """
+ Gets the batch_key of this JobMetric.
+ Batch key for grouping, may be null.
+
+
+ :return: The batch_key of this JobMetric.
+ :rtype: str
+ """
+ return self._batch_key
+
+ @batch_key.setter
+ def batch_key(self, batch_key):
+ """
+ Sets the batch_key of this JobMetric.
+ Batch key for grouping, may be null.
+
+
+ :param batch_key: The batch_key of this JobMetric.
+ :type: str
+ """
+ self._batch_key = batch_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobMetric.
+ URI to the job metric instance in the API.
+
+
+ :return: The uri of this JobMetric.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobMetric.
+ URI to the job metric instance in the API.
+
+
+ :param uri: The uri of this JobMetric.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobMetric.
+ The date and time the job metric was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobMetric.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobMetric.
+ The date and time the job metric was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobMetric.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this JobMetric.
+ The last time that this metric was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this JobMetric.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this JobMetric.
+ The last time that this metric was updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this JobMetric.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this JobMetric.
+ OCID of the user who created the metric for this job. Usually the executor of the job instance.
+
+
+ :return: The created_by_id of this JobMetric.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this JobMetric.
+ OCID of the user who created the metric for this job. Usually the executor of the job instance.
+
+
+ :param created_by_id: The created_by_id of this JobMetric.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this JobMetric.
+ OCID of the user who created the metric for this job. Usually the executor of the job instance.
+
+
+ :return: The updated_by_id of this JobMetric.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this JobMetric.
+ OCID of the user who created the metric for this job. Usually the executor of the job instance.
+
+
+ :param updated_by_id: The updated_by_id of this JobMetric.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_metric_collection.py b/src/oci/data_catalog/models/job_metric_collection.py
new file mode 100644
index 0000000000..0044cf8649
--- /dev/null
+++ b/src/oci/data_catalog/models/job_metric_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobMetricCollection(object):
+ """
+ Results of a job metrics listing. Job metrics are datum about a job execution in key value pairs.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobMetricCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this JobMetricCollection.
+ :type items: list[JobMetricSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[JobMetricSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this JobMetricCollection.
+ Collection of job metrics.
+
+
+ :return: The items of this JobMetricCollection.
+ :rtype: list[JobMetricSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this JobMetricCollection.
+ Collection of job metrics.
+
+
+ :param items: The items of this JobMetricCollection.
+ :type: list[JobMetricSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_metric_summary.py b/src/oci/data_catalog/models/job_metric_summary.py
new file mode 100644
index 0000000000..54fc9538fd
--- /dev/null
+++ b/src/oci/data_catalog/models/job_metric_summary.py
@@ -0,0 +1,424 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobMetricSummary(object):
+ """
+ Job metric summary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobMetricSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobMetricSummary.
+ :type key: str
+
+ :param description:
+ The value to assign to the description property of this JobMetricSummary.
+ :type description: str
+
+ :param job_execution_key:
+ The value to assign to the job_execution_key property of this JobMetricSummary.
+ :type job_execution_key: str
+
+ :param uri:
+ The value to assign to the uri property of this JobMetricSummary.
+ :type uri: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobMetricSummary.
+ :type time_created: datetime
+
+ :param time_inserted:
+ The value to assign to the time_inserted property of this JobMetricSummary.
+ :type time_inserted: datetime
+
+ :param category:
+ The value to assign to the category property of this JobMetricSummary.
+ :type category: str
+
+ :param display_name:
+ The value to assign to the display_name property of this JobMetricSummary.
+ :type display_name: str
+
+ :param sub_category:
+ The value to assign to the sub_category property of this JobMetricSummary.
+ :type sub_category: str
+
+ :param unit:
+ The value to assign to the unit property of this JobMetricSummary.
+ :type unit: str
+
+ :param value:
+ The value to assign to the value property of this JobMetricSummary.
+ :type value: str
+
+ :param batch_key:
+ The value to assign to the batch_key property of this JobMetricSummary.
+ :type batch_key: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'description': 'str',
+ 'job_execution_key': 'str',
+ 'uri': 'str',
+ 'time_created': 'datetime',
+ 'time_inserted': 'datetime',
+ 'category': 'str',
+ 'display_name': 'str',
+ 'sub_category': 'str',
+ 'unit': 'str',
+ 'value': 'str',
+ 'batch_key': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'description': 'description',
+ 'job_execution_key': 'jobExecutionKey',
+ 'uri': 'uri',
+ 'time_created': 'timeCreated',
+ 'time_inserted': 'timeInserted',
+ 'category': 'category',
+ 'display_name': 'displayName',
+ 'sub_category': 'subCategory',
+ 'unit': 'unit',
+ 'value': 'value',
+ 'batch_key': 'batchKey'
+ }
+
+ self._key = None
+ self._description = None
+ self._job_execution_key = None
+ self._uri = None
+ self._time_created = None
+ self._time_inserted = None
+ self._category = None
+ self._display_name = None
+ self._sub_category = None
+ self._unit = None
+ self._value = None
+ self._batch_key = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobMetricSummary.
+ Key of the job metric that is immutable.
+
+
+ :return: The key of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobMetricSummary.
+ Key of the job metric that is immutable.
+
+
+ :param key: The key of this JobMetricSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def description(self):
+ """
+ Gets the description of this JobMetricSummary.
+ Detailed description of the metric.
+
+
+ :return: The description of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this JobMetricSummary.
+ Detailed description of the metric.
+
+
+ :param description: The description of this JobMetricSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def job_execution_key(self):
+ """
+ Gets the job_execution_key of this JobMetricSummary.
+ The unique key of the parent job execution for which the job metric resource was created.
+
+
+ :return: The job_execution_key of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._job_execution_key
+
+ @job_execution_key.setter
+ def job_execution_key(self, job_execution_key):
+ """
+ Sets the job_execution_key of this JobMetricSummary.
+ The unique key of the parent job execution for which the job metric resource was created.
+
+
+ :param job_execution_key: The job_execution_key of this JobMetricSummary.
+ :type: str
+ """
+ self._job_execution_key = job_execution_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobMetricSummary.
+ URI to the job metric instance in the API.
+
+
+ :return: The uri of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobMetricSummary.
+ URI to the job metric instance in the API.
+
+
+ :param uri: The uri of this JobMetricSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobMetricSummary.
+ The date and time the job metric was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobMetricSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobMetricSummary.
+ The date and time the job metric was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobMetricSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_inserted(self):
+ """
+ Gets the time_inserted of this JobMetricSummary.
+ The time the metric was logged or captured in the system where the job executed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_inserted of this JobMetricSummary.
+ :rtype: datetime
+ """
+ return self._time_inserted
+
+ @time_inserted.setter
+ def time_inserted(self, time_inserted):
+ """
+ Sets the time_inserted of this JobMetricSummary.
+ The time the metric was logged or captured in the system where the job executed.
+ An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_inserted: The time_inserted of this JobMetricSummary.
+ :type: datetime
+ """
+ self._time_inserted = time_inserted
+
+ @property
+ def category(self):
+ """
+ Gets the category of this JobMetricSummary.
+ Category of this metric.
+
+
+ :return: The category of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._category
+
+ @category.setter
+ def category(self, category):
+ """
+ Sets the category of this JobMetricSummary.
+ Category of this metric.
+
+
+ :param category: The category of this JobMetricSummary.
+ :type: str
+ """
+ self._category = category
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this JobMetricSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this JobMetricSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this JobMetricSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def sub_category(self):
+ """
+ Gets the sub_category of this JobMetricSummary.
+ Sub category of this metric under the category. Used for aggregating values. May be null.
+
+
+ :return: The sub_category of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._sub_category
+
+ @sub_category.setter
+ def sub_category(self, sub_category):
+ """
+ Sets the sub_category of this JobMetricSummary.
+ Sub category of this metric under the category. Used for aggregating values. May be null.
+
+
+ :param sub_category: The sub_category of this JobMetricSummary.
+ :type: str
+ """
+ self._sub_category = sub_category
+
+ @property
+ def unit(self):
+ """
+ Gets the unit of this JobMetricSummary.
+ Unit of this metric.
+
+
+ :return: The unit of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._unit
+
+ @unit.setter
+ def unit(self, unit):
+ """
+ Sets the unit of this JobMetricSummary.
+ Unit of this metric.
+
+
+ :param unit: The unit of this JobMetricSummary.
+ :type: str
+ """
+ self._unit = unit
+
+ @property
+ def value(self):
+ """
+ Gets the value of this JobMetricSummary.
+ Value of this metric.
+
+
+ :return: The value of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._value
+
+ @value.setter
+ def value(self, value):
+ """
+ Sets the value of this JobMetricSummary.
+ Value of this metric.
+
+
+ :param value: The value of this JobMetricSummary.
+ :type: str
+ """
+ self._value = value
+
+ @property
+ def batch_key(self):
+ """
+ Gets the batch_key of this JobMetricSummary.
+ Batch key for grouping, may be null.
+
+
+ :return: The batch_key of this JobMetricSummary.
+ :rtype: str
+ """
+ return self._batch_key
+
+ @batch_key.setter
+ def batch_key(self, batch_key):
+ """
+ Sets the batch_key of this JobMetricSummary.
+ Batch key for grouping, may be null.
+
+
+ :param batch_key: The batch_key of this JobMetricSummary.
+ :type: str
+ """
+ self._batch_key = batch_key
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/job_summary.py b/src/oci/data_catalog/models/job_summary.py
new file mode 100644
index 0000000000..e84b183722
--- /dev/null
+++ b/src/oci/data_catalog/models/job_summary.py
@@ -0,0 +1,622 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class JobSummary(object):
+ """
+ Details of a job. Jobs are scheduled instances of a job definition.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new JobSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this JobSummary.
+ :type key: str
+
+ :param uri:
+ The value to assign to the uri property of this JobSummary.
+ :type uri: str
+
+ :param display_name:
+ The value to assign to the display_name property of this JobSummary.
+ :type display_name: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this JobSummary.
+ :type catalog_id: str
+
+ :param job_definition_key:
+ The value to assign to the job_definition_key property of this JobSummary.
+ :type job_definition_key: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this JobSummary.
+ :type lifecycle_state: str
+
+ :param job_type:
+ The value to assign to the job_type property of this JobSummary.
+ :type job_type: str
+
+ :param schedule_type:
+ The value to assign to the schedule_type property of this JobSummary.
+ :type schedule_type: str
+
+ :param description:
+ The value to assign to the description property of this JobSummary.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this JobSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this JobSummary.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this JobSummary.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this JobSummary.
+ :type updated_by_id: str
+
+ :param schedule_cron_expression:
+ The value to assign to the schedule_cron_expression property of this JobSummary.
+ :type schedule_cron_expression: str
+
+ :param time_schedule_begin:
+ The value to assign to the time_schedule_begin property of this JobSummary.
+ :type time_schedule_begin: datetime
+
+ :param execution_count:
+ The value to assign to the execution_count property of this JobSummary.
+ :type execution_count: int
+
+ :param time_of_latest_execution:
+ The value to assign to the time_of_latest_execution property of this JobSummary.
+ :type time_of_latest_execution: datetime
+
+ :param executions:
+ The value to assign to the executions property of this JobSummary.
+ :type executions: list[JobExecutionSummary]
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'uri': 'str',
+ 'display_name': 'str',
+ 'catalog_id': 'str',
+ 'job_definition_key': 'str',
+ 'lifecycle_state': 'str',
+ 'job_type': 'str',
+ 'schedule_type': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'schedule_cron_expression': 'str',
+ 'time_schedule_begin': 'datetime',
+ 'execution_count': 'int',
+ 'time_of_latest_execution': 'datetime',
+ 'executions': 'list[JobExecutionSummary]'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'uri': 'uri',
+ 'display_name': 'displayName',
+ 'catalog_id': 'catalogId',
+ 'job_definition_key': 'jobDefinitionKey',
+ 'lifecycle_state': 'lifecycleState',
+ 'job_type': 'jobType',
+ 'schedule_type': 'scheduleType',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'schedule_cron_expression': 'scheduleCronExpression',
+ 'time_schedule_begin': 'timeScheduleBegin',
+ 'execution_count': 'executionCount',
+ 'time_of_latest_execution': 'timeOfLatestExecution',
+ 'executions': 'executions'
+ }
+
+ self._key = None
+ self._uri = None
+ self._display_name = None
+ self._catalog_id = None
+ self._job_definition_key = None
+ self._lifecycle_state = None
+ self._job_type = None
+ self._schedule_type = None
+ self._description = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._schedule_cron_expression = None
+ self._time_schedule_begin = None
+ self._execution_count = None
+ self._time_of_latest_execution = None
+ self._executions = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this JobSummary.
+ Unique key of the job.
+
+
+ :return: The key of this JobSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this JobSummary.
+ Unique key of the job.
+
+
+ :param key: The key of this JobSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this JobSummary.
+ URI to the job instance in the API.
+
+
+ :return: The uri of this JobSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this JobSummary.
+ URI to the job instance in the API.
+
+
+ :param uri: The uri of this JobSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this JobSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this JobSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this JobSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this JobSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this JobSummary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this JobSummary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this JobSummary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this JobSummary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def job_definition_key(self):
+ """
+ Gets the job_definition_key of this JobSummary.
+ The unique key of the job definition resource that defined the scope of this job.
+
+
+ :return: The job_definition_key of this JobSummary.
+ :rtype: str
+ """
+ return self._job_definition_key
+
+ @job_definition_key.setter
+ def job_definition_key(self, job_definition_key):
+ """
+ Sets the job_definition_key of this JobSummary.
+ The unique key of the job definition resource that defined the scope of this job.
+
+
+ :param job_definition_key: The job_definition_key of this JobSummary.
+ :type: str
+ """
+ self._job_definition_key = job_definition_key
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this JobSummary.
+ Lifecycle state of the job, such as running, paused, or completed.
+
+
+ :return: The lifecycle_state of this JobSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this JobSummary.
+ Lifecycle state of the job, such as running, paused, or completed.
+
+
+ :param lifecycle_state: The lifecycle_state of this JobSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def job_type(self):
+ """
+ Gets the job_type of this JobSummary.
+ Type of the job.
+
+
+ :return: The job_type of this JobSummary.
+ :rtype: str
+ """
+ return self._job_type
+
+ @job_type.setter
+ def job_type(self, job_type):
+ """
+ Sets the job_type of this JobSummary.
+ Type of the job.
+
+
+ :param job_type: The job_type of this JobSummary.
+ :type: str
+ """
+ self._job_type = job_type
+
+ @property
+ def schedule_type(self):
+ """
+ Gets the schedule_type of this JobSummary.
+ Type of job schedule that is inferred from the scheduling properties.
+
+
+ :return: The schedule_type of this JobSummary.
+ :rtype: str
+ """
+ return self._schedule_type
+
+ @schedule_type.setter
+ def schedule_type(self, schedule_type):
+ """
+ Sets the schedule_type of this JobSummary.
+ Type of job schedule that is inferred from the scheduling properties.
+
+
+ :param schedule_type: The schedule_type of this JobSummary.
+ :type: str
+ """
+ self._schedule_type = schedule_type
+
+ @property
+ def description(self):
+ """
+ Gets the description of this JobSummary.
+ Detailed description of the job.
+
+
+ :return: The description of this JobSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this JobSummary.
+ Detailed description of the job.
+
+
+ :param description: The description of this JobSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this JobSummary.
+ The date and time the job was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this JobSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this JobSummary.
+ The date and time the job was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this JobSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this JobSummary.
+ Time that this job was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this JobSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this JobSummary.
+ Time that this job was last updated. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this JobSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this JobSummary.
+ OCID of the user who created this job.
+
+
+ :return: The created_by_id of this JobSummary.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this JobSummary.
+ OCID of the user who created this job.
+
+
+ :param created_by_id: The created_by_id of this JobSummary.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this JobSummary.
+ OCID of the user who updated this job.
+
+
+ :return: The updated_by_id of this JobSummary.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this JobSummary.
+ OCID of the user who updated this job.
+
+
+ :param updated_by_id: The updated_by_id of this JobSummary.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def schedule_cron_expression(self):
+ """
+ Gets the schedule_cron_expression of this JobSummary.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :return: The schedule_cron_expression of this JobSummary.
+ :rtype: str
+ """
+ return self._schedule_cron_expression
+
+ @schedule_cron_expression.setter
+ def schedule_cron_expression(self, schedule_cron_expression):
+ """
+ Sets the schedule_cron_expression of this JobSummary.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :param schedule_cron_expression: The schedule_cron_expression of this JobSummary.
+ :type: str
+ """
+ self._schedule_cron_expression = schedule_cron_expression
+
+ @property
+ def time_schedule_begin(self):
+ """
+ Gets the time_schedule_begin of this JobSummary.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_begin of this JobSummary.
+ :rtype: datetime
+ """
+ return self._time_schedule_begin
+
+ @time_schedule_begin.setter
+ def time_schedule_begin(self, time_schedule_begin):
+ """
+ Sets the time_schedule_begin of this JobSummary.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_begin: The time_schedule_begin of this JobSummary.
+ :type: datetime
+ """
+ self._time_schedule_begin = time_schedule_begin
+
+ @property
+ def execution_count(self):
+ """
+ Gets the execution_count of this JobSummary.
+ The total number of executions for this job schedule.
+
+
+ :return: The execution_count of this JobSummary.
+ :rtype: int
+ """
+ return self._execution_count
+
+ @execution_count.setter
+ def execution_count(self, execution_count):
+ """
+ Sets the execution_count of this JobSummary.
+ The total number of executions for this job schedule.
+
+
+ :param execution_count: The execution_count of this JobSummary.
+ :type: int
+ """
+ self._execution_count = execution_count
+
+ @property
+ def time_of_latest_execution(self):
+ """
+ Gets the time_of_latest_execution of this JobSummary.
+ The date and time of the most recent execution for this job, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_of_latest_execution of this JobSummary.
+ :rtype: datetime
+ """
+ return self._time_of_latest_execution
+
+ @time_of_latest_execution.setter
+ def time_of_latest_execution(self, time_of_latest_execution):
+ """
+ Sets the time_of_latest_execution of this JobSummary.
+ The date and time of the most recent execution for this job, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_of_latest_execution: The time_of_latest_execution of this JobSummary.
+ :type: datetime
+ """
+ self._time_of_latest_execution = time_of_latest_execution
+
+ @property
+ def executions(self):
+ """
+ Gets the executions of this JobSummary.
+ Array of the executions summary associated with this job.
+
+
+ :return: The executions of this JobSummary.
+ :rtype: list[JobExecutionSummary]
+ """
+ return self._executions
+
+ @executions.setter
+ def executions(self, executions):
+ """
+ Sets the executions of this JobSummary.
+ Array of the executions summary associated with this job.
+
+
+ :param executions: The executions of this JobSummary.
+ :type: list[JobExecutionSummary]
+ """
+ self._executions = executions
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/parse_connection_details.py b/src/oci/data_catalog/models/parse_connection_details.py
new file mode 100644
index 0000000000..d684d6b1c7
--- /dev/null
+++ b/src/oci/data_catalog/models/parse_connection_details.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ParseConnectionDetails(object):
+ """
+ Parse connections from the connection metadata and oracle wallet file.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ParseConnectionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param connection_detail:
+ The value to assign to the connection_detail property of this ParseConnectionDetails.
+ :type connection_detail: Connection
+
+ :param connection_payload:
+ The value to assign to the connection_payload property of this ParseConnectionDetails.
+ :type connection_payload: str
+
+ """
+ self.swagger_types = {
+ 'connection_detail': 'Connection',
+ 'connection_payload': 'str'
+ }
+
+ self.attribute_map = {
+ 'connection_detail': 'connectionDetail',
+ 'connection_payload': 'connectionPayload'
+ }
+
+ self._connection_detail = None
+ self._connection_payload = None
+
+ @property
+ def connection_detail(self):
+ """
+ Gets the connection_detail of this ParseConnectionDetails.
+
+ :return: The connection_detail of this ParseConnectionDetails.
+ :rtype: Connection
+ """
+ return self._connection_detail
+
+ @connection_detail.setter
+ def connection_detail(self, connection_detail):
+ """
+ Sets the connection_detail of this ParseConnectionDetails.
+
+ :param connection_detail: The connection_detail of this ParseConnectionDetails.
+ :type: Connection
+ """
+ self._connection_detail = connection_detail
+
+ @property
+ def connection_payload(self):
+ """
+ Gets the connection_payload of this ParseConnectionDetails.
+ The information used to parse the connection from the wallet file payload.
+
+
+ :return: The connection_payload of this ParseConnectionDetails.
+ :rtype: str
+ """
+ return self._connection_payload
+
+ @connection_payload.setter
+ def connection_payload(self, connection_payload):
+ """
+ Sets the connection_payload of this ParseConnectionDetails.
+ The information used to parse the connection from the wallet file payload.
+
+
+ :param connection_payload: The connection_payload of this ParseConnectionDetails.
+ :type: str
+ """
+ self._connection_payload = connection_payload
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/property_definition.py b/src/oci/data_catalog/models/property_definition.py
new file mode 100644
index 0000000000..cede0fc74c
--- /dev/null
+++ b/src/oci/data_catalog/models/property_definition.py
@@ -0,0 +1,162 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class PropertyDefinition(object):
+ """
+ Details of a single type property.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new PropertyDefinition object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this PropertyDefinition.
+ :type name: str
+
+ :param type:
+ The value to assign to the type property of this PropertyDefinition.
+ :type type: str
+
+ :param is_required:
+ The value to assign to the is_required property of this PropertyDefinition.
+ :type is_required: bool
+
+ :param is_updatable:
+ The value to assign to the is_updatable property of this PropertyDefinition.
+ :type is_updatable: bool
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'type': 'str',
+ 'is_required': 'bool',
+ 'is_updatable': 'bool'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'type': 'type',
+ 'is_required': 'isRequired',
+ 'is_updatable': 'isUpdatable'
+ }
+
+ self._name = None
+ self._type = None
+ self._is_required = None
+ self._is_updatable = None
+
+ @property
+ def name(self):
+ """
+ Gets the name of this PropertyDefinition.
+ Name of the property.
+
+
+ :return: The name of this PropertyDefinition.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this PropertyDefinition.
+ Name of the property.
+
+
+ :param name: The name of this PropertyDefinition.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def type(self):
+ """
+ Gets the type of this PropertyDefinition.
+ The properties value type.
+
+
+ :return: The type of this PropertyDefinition.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this PropertyDefinition.
+ The properties value type.
+
+
+ :param type: The type of this PropertyDefinition.
+ :type: str
+ """
+ self._type = type
+
+ @property
+ def is_required(self):
+ """
+ Gets the is_required of this PropertyDefinition.
+ Whether instances of the type are required to set this property.
+
+
+ :return: The is_required of this PropertyDefinition.
+ :rtype: bool
+ """
+ return self._is_required
+
+ @is_required.setter
+ def is_required(self, is_required):
+ """
+ Sets the is_required of this PropertyDefinition.
+ Whether instances of the type are required to set this property.
+
+
+ :param is_required: The is_required of this PropertyDefinition.
+ :type: bool
+ """
+ self._is_required = is_required
+
+ @property
+ def is_updatable(self):
+ """
+ Gets the is_updatable of this PropertyDefinition.
+ Indicates if this property value can be updated.
+
+
+ :return: The is_updatable of this PropertyDefinition.
+ :rtype: bool
+ """
+ return self._is_updatable
+
+ @is_updatable.setter
+ def is_updatable(self, is_updatable):
+ """
+ Sets the is_updatable of this PropertyDefinition.
+ Indicates if this property value can be updated.
+
+
+ :param is_updatable: The is_updatable of this PropertyDefinition.
+ :type: bool
+ """
+ self._is_updatable = is_updatable
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/search_criteria.py b/src/oci/data_catalog/models/search_criteria.py
new file mode 100644
index 0000000000..7e8d0c05dc
--- /dev/null
+++ b/src/oci/data_catalog/models/search_criteria.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SearchCriteria(object):
+ """
+ Search Query object that allows complex search predicates that cannot be expressed through simple query params.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SearchCriteria object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param query:
+ The value to assign to the query property of this SearchCriteria.
+ :type query: str
+
+ """
+ self.swagger_types = {
+ 'query': 'str'
+ }
+
+ self.attribute_map = {
+ 'query': 'query'
+ }
+
+ self._query = None
+
+ @property
+ def query(self):
+ """
+ Gets the query of this SearchCriteria.
+ Search query dsl that defines the query components including fields and predicates.
+
+
+ :return: The query of this SearchCriteria.
+ :rtype: str
+ """
+ return self._query
+
+ @query.setter
+ def query(self, query):
+ """
+ Sets the query of this SearchCriteria.
+ Search query dsl that defines the query components including fields and predicates.
+
+
+ :param query: The query of this SearchCriteria.
+ :type: str
+ """
+ self._query = query
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/search_result.py b/src/oci/data_catalog/models/search_result.py
new file mode 100644
index 0000000000..35e6c5cfb5
--- /dev/null
+++ b/src/oci/data_catalog/models/search_result.py
@@ -0,0 +1,858 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SearchResult(object):
+ """
+ The search result object is the definition of an element that is returned as part of search. It contains basic
+ information about the object such as key, name and description. The search result also contains the list of tags
+ for each object along with other contextual information like the data asset root, folder, or entity parents.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SearchResult object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this SearchResult.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this SearchResult.
+ :type name: str
+
+ :param description:
+ The value to assign to the description property of this SearchResult.
+ :type description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this SearchResult.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this SearchResult.
+ :type time_updated: datetime
+
+ :param tag_summary:
+ The value to assign to the tag_summary property of this SearchResult.
+ :type tag_summary: list[SearchTagSummary]
+
+ :param term_summary:
+ The value to assign to the term_summary property of this SearchResult.
+ :type term_summary: list[SearchTermSummary]
+
+ :param type_name:
+ The value to assign to the type_name property of this SearchResult.
+ :type type_name: str
+
+ :param external_type_name:
+ The value to assign to the external_type_name property of this SearchResult.
+ :type external_type_name: str
+
+ :param external_data_type:
+ The value to assign to the external_data_type property of this SearchResult.
+ :type external_data_type: str
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this SearchResult.
+ :type data_asset_key: str
+
+ :param data_asset_type:
+ The value to assign to the data_asset_type property of this SearchResult.
+ :type data_asset_type: str
+
+ :param data_asset_name:
+ The value to assign to the data_asset_name property of this SearchResult.
+ :type data_asset_name: str
+
+ :param folder_key:
+ The value to assign to the folder_key property of this SearchResult.
+ :type folder_key: str
+
+ :param folder_type:
+ The value to assign to the folder_type property of this SearchResult.
+ :type folder_type: str
+
+ :param folder_name:
+ The value to assign to the folder_name property of this SearchResult.
+ :type folder_name: str
+
+ :param entitykey:
+ The value to assign to the entitykey property of this SearchResult.
+ :type entitykey: str
+
+ :param entity_type:
+ The value to assign to the entity_type property of this SearchResult.
+ :type entity_type: str
+
+ :param entity_name:
+ The value to assign to the entity_name property of this SearchResult.
+ :type entity_name: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this SearchResult.
+ :type glossary_key: str
+
+ :param glossary_name:
+ The value to assign to the glossary_name property of this SearchResult.
+ :type glossary_name: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this SearchResult.
+ :type parent_term_key: str
+
+ :param parent_term_name:
+ The value to assign to the parent_term_name property of this SearchResult.
+ :type parent_term_name: str
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this SearchResult.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this SearchResult.
+ :type updated_by_id: str
+
+ :param path:
+ The value to assign to the path property of this SearchResult.
+ :type path: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'name': 'str',
+ 'description': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'tag_summary': 'list[SearchTagSummary]',
+ 'term_summary': 'list[SearchTermSummary]',
+ 'type_name': 'str',
+ 'external_type_name': 'str',
+ 'external_data_type': 'str',
+ 'data_asset_key': 'str',
+ 'data_asset_type': 'str',
+ 'data_asset_name': 'str',
+ 'folder_key': 'str',
+ 'folder_type': 'str',
+ 'folder_name': 'str',
+ 'entitykey': 'str',
+ 'entity_type': 'str',
+ 'entity_name': 'str',
+ 'glossary_key': 'str',
+ 'glossary_name': 'str',
+ 'parent_term_key': 'str',
+ 'parent_term_name': 'str',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'path': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'name': 'name',
+ 'description': 'description',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'tag_summary': 'tagSummary',
+ 'term_summary': 'termSummary',
+ 'type_name': 'typeName',
+ 'external_type_name': 'externalTypeName',
+ 'external_data_type': 'externalDataType',
+ 'data_asset_key': 'dataAssetKey',
+ 'data_asset_type': 'dataAssetType',
+ 'data_asset_name': 'dataAssetName',
+ 'folder_key': 'folderKey',
+ 'folder_type': 'folderType',
+ 'folder_name': 'folderName',
+ 'entitykey': 'entitykey',
+ 'entity_type': 'entityType',
+ 'entity_name': 'entityName',
+ 'glossary_key': 'glossaryKey',
+ 'glossary_name': 'glossaryName',
+ 'parent_term_key': 'parentTermKey',
+ 'parent_term_name': 'parentTermName',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'path': 'path'
+ }
+
+ self._key = None
+ self._name = None
+ self._description = None
+ self._time_created = None
+ self._time_updated = None
+ self._tag_summary = None
+ self._term_summary = None
+ self._type_name = None
+ self._external_type_name = None
+ self._external_data_type = None
+ self._data_asset_key = None
+ self._data_asset_type = None
+ self._data_asset_name = None
+ self._folder_key = None
+ self._folder_type = None
+ self._folder_name = None
+ self._entitykey = None
+ self._entity_type = None
+ self._entity_name = None
+ self._glossary_key = None
+ self._glossary_name = None
+ self._parent_term_key = None
+ self._parent_term_name = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._path = None
+
+ @property
+ def key(self):
+ """
+ Gets the key of this SearchResult.
+ Unique key of the object returned as part of the search result.
+
+
+ :return: The key of this SearchResult.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this SearchResult.
+ Unique key of the object returned as part of the search result.
+
+
+ :param key: The key of this SearchResult.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this SearchResult.
+ Name of the object.
+
+
+ :return: The name of this SearchResult.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this SearchResult.
+ Name of the object.
+
+
+ :param name: The name of this SearchResult.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this SearchResult.
+ Detailed description of the object.
+
+
+ :return: The description of this SearchResult.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this SearchResult.
+ Detailed description of the object.
+
+
+ :param description: The description of this SearchResult.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this SearchResult.
+ The date and time the result object was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this SearchResult.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this SearchResult.
+ The date and time the result object was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this SearchResult.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this SearchResult.
+ The date and time the result object was updated, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this SearchResult.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this SearchResult.
+ The date and time the result object was updated, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this SearchResult.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def tag_summary(self):
+ """
+ Gets the tag_summary of this SearchResult.
+ Array of the tags associated with this object.
+
+
+ :return: The tag_summary of this SearchResult.
+ :rtype: list[SearchTagSummary]
+ """
+ return self._tag_summary
+
+ @tag_summary.setter
+ def tag_summary(self, tag_summary):
+ """
+ Sets the tag_summary of this SearchResult.
+ Array of the tags associated with this object.
+
+
+ :param tag_summary: The tag_summary of this SearchResult.
+ :type: list[SearchTagSummary]
+ """
+ self._tag_summary = tag_summary
+
+ @property
+ def term_summary(self):
+ """
+ Gets the term_summary of this SearchResult.
+ Array of the terms associated with this object.
+
+
+ :return: The term_summary of this SearchResult.
+ :rtype: list[SearchTermSummary]
+ """
+ return self._term_summary
+
+ @term_summary.setter
+ def term_summary(self, term_summary):
+ """
+ Sets the term_summary of this SearchResult.
+ Array of the terms associated with this object.
+
+
+ :param term_summary: The term_summary of this SearchResult.
+ :type: list[SearchTermSummary]
+ """
+ self._term_summary = term_summary
+
+ @property
+ def type_name(self):
+ """
+ Gets the type_name of this SearchResult.
+ Name of the object type.
+
+
+ :return: The type_name of this SearchResult.
+ :rtype: str
+ """
+ return self._type_name
+
+ @type_name.setter
+ def type_name(self, type_name):
+ """
+ Sets the type_name of this SearchResult.
+ Name of the object type.
+
+
+ :param type_name: The type_name of this SearchResult.
+ :type: str
+ """
+ self._type_name = type_name
+
+ @property
+ def external_type_name(self):
+ """
+ Gets the external_type_name of this SearchResult.
+ Name of the external object type in the host data asset. For example, column, field, table, view, or file.
+
+
+ :return: The external_type_name of this SearchResult.
+ :rtype: str
+ """
+ return self._external_type_name
+
+ @external_type_name.setter
+ def external_type_name(self, external_type_name):
+ """
+ Sets the external_type_name of this SearchResult.
+ Name of the external object type in the host data asset. For example, column, field, table, view, or file.
+
+
+ :param external_type_name: The external_type_name of this SearchResult.
+ :type: str
+ """
+ self._external_type_name = external_type_name
+
+ @property
+ def external_data_type(self):
+ """
+ Gets the external_data_type of this SearchResult.
+ Data type of the object if the object is an attribute. Null otherwise.
+
+
+ :return: The external_data_type of this SearchResult.
+ :rtype: str
+ """
+ return self._external_data_type
+
+ @external_data_type.setter
+ def external_data_type(self, external_data_type):
+ """
+ Sets the external_data_type of this SearchResult.
+ Data type of the object if the object is an attribute. Null otherwise.
+
+
+ :param external_data_type: The external_data_type of this SearchResult.
+ :type: str
+ """
+ self._external_data_type = external_data_type
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this SearchResult.
+ Unique key of the data asset that is the root parent of this object.
+
+
+ :return: The data_asset_key of this SearchResult.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this SearchResult.
+ Unique key of the data asset that is the root parent of this object.
+
+
+ :param data_asset_key: The data_asset_key of this SearchResult.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def data_asset_type(self):
+ """
+ Gets the data_asset_type of this SearchResult.
+ Type name of the data asset. For example, Oracle, MySQL or Oracle Object Storage.
+
+
+ :return: The data_asset_type of this SearchResult.
+ :rtype: str
+ """
+ return self._data_asset_type
+
+ @data_asset_type.setter
+ def data_asset_type(self, data_asset_type):
+ """
+ Sets the data_asset_type of this SearchResult.
+ Type name of the data asset. For example, Oracle, MySQL or Oracle Object Storage.
+
+
+ :param data_asset_type: The data_asset_type of this SearchResult.
+ :type: str
+ """
+ self._data_asset_type = data_asset_type
+
+ @property
+ def data_asset_name(self):
+ """
+ Gets the data_asset_name of this SearchResult.
+ Name of the data asset that is the root parent of this object.
+
+
+ :return: The data_asset_name of this SearchResult.
+ :rtype: str
+ """
+ return self._data_asset_name
+
+ @data_asset_name.setter
+ def data_asset_name(self, data_asset_name):
+ """
+ Sets the data_asset_name of this SearchResult.
+ Name of the data asset that is the root parent of this object.
+
+
+ :param data_asset_name: The data_asset_name of this SearchResult.
+ :type: str
+ """
+ self._data_asset_name = data_asset_name
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this SearchResult.
+ Unique key of the folder object if this object is a sub folder, entity, or attribute.
+
+
+ :return: The folder_key of this SearchResult.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this SearchResult.
+ Unique key of the folder object if this object is a sub folder, entity, or attribute.
+
+
+ :param folder_key: The folder_key of this SearchResult.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def folder_type(self):
+ """
+ Gets the folder_type of this SearchResult.
+ Type name of the folder. For example, schema, directory, or topic.
+
+
+ :return: The folder_type of this SearchResult.
+ :rtype: str
+ """
+ return self._folder_type
+
+ @folder_type.setter
+ def folder_type(self, folder_type):
+ """
+ Sets the folder_type of this SearchResult.
+ Type name of the folder. For example, schema, directory, or topic.
+
+
+ :param folder_type: The folder_type of this SearchResult.
+ :type: str
+ """
+ self._folder_type = folder_type
+
+ @property
+ def folder_name(self):
+ """
+ Gets the folder_name of this SearchResult.
+ Name of the parent folder object if this object is a sub folder, entity, or attribute.
+
+
+ :return: The folder_name of this SearchResult.
+ :rtype: str
+ """
+ return self._folder_name
+
+ @folder_name.setter
+ def folder_name(self, folder_name):
+ """
+ Sets the folder_name of this SearchResult.
+ Name of the parent folder object if this object is a sub folder, entity, or attribute.
+
+
+ :param folder_name: The folder_name of this SearchResult.
+ :type: str
+ """
+ self._folder_name = folder_name
+
+ @property
+ def entitykey(self):
+ """
+ Gets the entitykey of this SearchResult.
+ Unique key of the entity object if this object is an attribute.
+
+
+ :return: The entitykey of this SearchResult.
+ :rtype: str
+ """
+ return self._entitykey
+
+ @entitykey.setter
+ def entitykey(self, entitykey):
+ """
+ Sets the entitykey of this SearchResult.
+ Unique key of the entity object if this object is an attribute.
+
+
+ :param entitykey: The entitykey of this SearchResult.
+ :type: str
+ """
+ self._entitykey = entitykey
+
+ @property
+ def entity_type(self):
+ """
+ Gets the entity_type of this SearchResult.
+ Type name of the entity. For example, table, view, external table, file, or object.
+
+
+ :return: The entity_type of this SearchResult.
+ :rtype: str
+ """
+ return self._entity_type
+
+ @entity_type.setter
+ def entity_type(self, entity_type):
+ """
+ Sets the entity_type of this SearchResult.
+ Type name of the entity. For example, table, view, external table, file, or object.
+
+
+ :param entity_type: The entity_type of this SearchResult.
+ :type: str
+ """
+ self._entity_type = entity_type
+
+ @property
+ def entity_name(self):
+ """
+ Gets the entity_name of this SearchResult.
+ Name of the parent entity object if this object is an attribute.
+
+
+ :return: The entity_name of this SearchResult.
+ :rtype: str
+ """
+ return self._entity_name
+
+ @entity_name.setter
+ def entity_name(self, entity_name):
+ """
+ Sets the entity_name of this SearchResult.
+ Name of the parent entity object if this object is an attribute.
+
+
+ :param entity_name: The entity_name of this SearchResult.
+ :type: str
+ """
+ self._entity_name = entity_name
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this SearchResult.
+ Unique id of the parent glossary.
+
+
+ :return: The glossary_key of this SearchResult.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this SearchResult.
+ Unique id of the parent glossary.
+
+
+ :param glossary_key: The glossary_key of this SearchResult.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def glossary_name(self):
+ """
+ Gets the glossary_name of this SearchResult.
+ Name of the parent glossary if this object is a term.
+
+
+ :return: The glossary_name of this SearchResult.
+ :rtype: str
+ """
+ return self._glossary_name
+
+ @glossary_name.setter
+ def glossary_name(self, glossary_name):
+ """
+ Sets the glossary_name of this SearchResult.
+ Name of the parent glossary if this object is a term.
+
+
+ :param glossary_name: The glossary_name of this SearchResult.
+ :type: str
+ """
+ self._glossary_name = glossary_name
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this SearchResult.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this SearchResult.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this SearchResult.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this SearchResult.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def parent_term_name(self):
+ """
+ Gets the parent_term_name of this SearchResult.
+ Name of the parent term. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_name of this SearchResult.
+ :rtype: str
+ """
+ return self._parent_term_name
+
+ @parent_term_name.setter
+ def parent_term_name(self, parent_term_name):
+ """
+ Sets the parent_term_name of this SearchResult.
+ Name of the parent term. Will be null if the term has no parent term.
+
+
+ :param parent_term_name: The parent_term_name of this SearchResult.
+ :type: str
+ """
+ self._parent_term_name = parent_term_name
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this SearchResult.
+ OCID of the user who created the resource.
+
+
+ :return: The created_by_id of this SearchResult.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this SearchResult.
+ OCID of the user who created the resource.
+
+
+ :param created_by_id: The created_by_id of this SearchResult.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this SearchResult.
+ OCID of the user who updated the resource.
+
+
+ :return: The updated_by_id of this SearchResult.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this SearchResult.
+ OCID of the user who updated the resource.
+
+
+ :param updated_by_id: The updated_by_id of this SearchResult.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def path(self):
+ """
+ Gets the path of this SearchResult.
+ Absolute path of this resource, which could be a term, folder, entity etc, usually resolvable to this resource through a namespace hierarchy.
+
+
+ :return: The path of this SearchResult.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this SearchResult.
+ Absolute path of this resource, which could be a term, folder, entity etc, usually resolvable to this resource through a namespace hierarchy.
+
+
+ :param path: The path of this SearchResult.
+ :type: str
+ """
+ self._path = path
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/search_result_collection.py b/src/oci/data_catalog/models/search_result_collection.py
new file mode 100644
index 0000000000..1d3b686721
--- /dev/null
+++ b/src/oci/data_catalog/models/search_result_collection.py
@@ -0,0 +1,101 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SearchResultCollection(object):
+ """
+ The list of search result items matching the criteria returned from the search operation. Search errors and
+ messages, if any , will be part of the standard error response.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SearchResultCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param count:
+ The value to assign to the count property of this SearchResultCollection.
+ :type count: int
+
+ :param items:
+ The value to assign to the items property of this SearchResultCollection.
+ :type items: list[SearchResult]
+
+ """
+ self.swagger_types = {
+ 'count': 'int',
+ 'items': 'list[SearchResult]'
+ }
+
+ self.attribute_map = {
+ 'count': 'count',
+ 'items': 'items'
+ }
+
+ self._count = None
+ self._items = None
+
+ @property
+ def count(self):
+ """
+ Gets the count of this SearchResultCollection.
+ Total number of items returned.
+
+
+ :return: The count of this SearchResultCollection.
+ :rtype: int
+ """
+ return self._count
+
+ @count.setter
+ def count(self, count):
+ """
+ Sets the count of this SearchResultCollection.
+ Total number of items returned.
+
+
+ :param count: The count of this SearchResultCollection.
+ :type: int
+ """
+ self._count = count
+
+ @property
+ def items(self):
+ """
+ Gets the items of this SearchResultCollection.
+ Search result set.
+
+
+ :return: The items of this SearchResultCollection.
+ :rtype: list[SearchResult]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this SearchResultCollection.
+ Search result set.
+
+
+ :param items: The items of this SearchResultCollection.
+ :type: list[SearchResult]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/search_tag_summary.py b/src/oci/data_catalog/models/search_tag_summary.py
new file mode 100644
index 0000000000..86213918fe
--- /dev/null
+++ b/src/oci/data_catalog/models/search_tag_summary.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SearchTagSummary(object):
+ """
+ Represents the association of an object to a term. Returned as part of search result.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SearchTagSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this SearchTagSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this SearchTagSummary.
+ :type display_name: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName'
+ }
+
+ self._key = None
+ self._display_name = None
+
+ @property
+ def key(self):
+ """
+ Gets the key of this SearchTagSummary.
+ Unique tag key that is immutable.
+
+
+ :return: The key of this SearchTagSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this SearchTagSummary.
+ Unique tag key that is immutable.
+
+
+ :param key: The key of this SearchTagSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this SearchTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :return: The display_name of this SearchTagSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this SearchTagSummary.
+ Name of the tag that matches the term name.
+
+
+ :param display_name: The display_name of this SearchTagSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/search_term_summary.py b/src/oci/data_catalog/models/search_term_summary.py
new file mode 100644
index 0000000000..158d56cf65
--- /dev/null
+++ b/src/oci/data_catalog/models/search_term_summary.py
@@ -0,0 +1,226 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class SearchTermSummary(object):
+ """
+ Summary of a term associated with an object. This is a brief summary returned as part of the search result.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new SearchTermSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this SearchTermSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this SearchTermSummary.
+ :type display_name: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this SearchTermSummary.
+ :type glossary_key: str
+
+ :param glossary_name:
+ The value to assign to the glossary_name property of this SearchTermSummary.
+ :type glossary_name: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this SearchTermSummary.
+ :type parent_term_key: str
+
+ :param parent_term_name:
+ The value to assign to the parent_term_name property of this SearchTermSummary.
+ :type parent_term_name: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'glossary_key': 'str',
+ 'glossary_name': 'str',
+ 'parent_term_key': 'str',
+ 'parent_term_name': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'glossary_key': 'glossaryKey',
+ 'glossary_name': 'glossaryName',
+ 'parent_term_key': 'parentTermKey',
+ 'parent_term_name': 'parentTermName'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._glossary_key = None
+ self._glossary_name = None
+ self._parent_term_key = None
+ self._parent_term_name = None
+
+ @property
+ def key(self):
+ """
+ Gets the key of this SearchTermSummary.
+ Unique term key that is immutable.
+
+
+ :return: The key of this SearchTermSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this SearchTermSummary.
+ Unique term key that is immutable.
+
+
+ :param key: The key of this SearchTermSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this SearchTermSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this SearchTermSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this SearchTermSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this SearchTermSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this SearchTermSummary.
+ Unique id of the parent glossary.
+
+
+ :return: The glossary_key of this SearchTermSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this SearchTermSummary.
+ Unique id of the parent glossary.
+
+
+ :param glossary_key: The glossary_key of this SearchTermSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def glossary_name(self):
+ """
+ Gets the glossary_name of this SearchTermSummary.
+ Name of the parent glossary.
+
+
+ :return: The glossary_name of this SearchTermSummary.
+ :rtype: str
+ """
+ return self._glossary_name
+
+ @glossary_name.setter
+ def glossary_name(self, glossary_name):
+ """
+ Sets the glossary_name of this SearchTermSummary.
+ Name of the parent glossary.
+
+
+ :param glossary_name: The glossary_name of this SearchTermSummary.
+ :type: str
+ """
+ self._glossary_name = glossary_name
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this SearchTermSummary.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this SearchTermSummary.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this SearchTermSummary.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this SearchTermSummary.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def parent_term_name(self):
+ """
+ Gets the parent_term_name of this SearchTermSummary.
+ Name of the parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_name of this SearchTermSummary.
+ :rtype: str
+ """
+ return self._parent_term_name
+
+ @parent_term_name.setter
+ def parent_term_name(self, parent_term_name):
+ """
+ Sets the parent_term_name of this SearchTermSummary.
+ Name of the parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_name: The parent_term_name of this SearchTermSummary.
+ :type: str
+ """
+ self._parent_term_name = parent_term_name
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term.py b/src/oci/data_catalog/models/term.py
new file mode 100644
index 0000000000..afd21f7e55
--- /dev/null
+++ b/src/oci/data_catalog/models/term.py
@@ -0,0 +1,579 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Term(object):
+ """
+ Full term definition. A defined business term in a business glossary. As well as a term definition, simple format
+ rules for attributes mapping to the term (for example, the expected data type and length restrictions) may be
+ stated at the term level. Nesting of terms to support a hierarchy is supported by default.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Term object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Term.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Term.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this Term.
+ :type description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this Term.
+ :type glossary_key: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this Term.
+ :type parent_term_key: str
+
+ :param is_allowed_to_have_child_terms:
+ The value to assign to the is_allowed_to_have_child_terms property of this Term.
+ :type is_allowed_to_have_child_terms: bool
+
+ :param path:
+ The value to assign to the path property of this Term.
+ :type path: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Term.
+ :type lifecycle_state: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Term.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Term.
+ :type time_updated: datetime
+
+ :param created_by_id:
+ The value to assign to the created_by_id property of this Term.
+ :type created_by_id: str
+
+ :param updated_by_id:
+ The value to assign to the updated_by_id property of this Term.
+ :type updated_by_id: str
+
+ :param owner:
+ The value to assign to the owner property of this Term.
+ :type owner: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this Term.
+ :type workflow_status: str
+
+ :param uri:
+ The value to assign to the uri property of this Term.
+ :type uri: str
+
+ :param associated_object_count:
+ The value to assign to the associated_object_count property of this Term.
+ :type associated_object_count: int
+
+ :param associated_objects:
+ The value to assign to the associated_objects property of this Term.
+ :type associated_objects: list[TermAssociatedObject]
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'glossary_key': 'str',
+ 'parent_term_key': 'str',
+ 'is_allowed_to_have_child_terms': 'bool',
+ 'path': 'str',
+ 'lifecycle_state': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'created_by_id': 'str',
+ 'updated_by_id': 'str',
+ 'owner': 'str',
+ 'workflow_status': 'str',
+ 'uri': 'str',
+ 'associated_object_count': 'int',
+ 'associated_objects': 'list[TermAssociatedObject]'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'glossary_key': 'glossaryKey',
+ 'parent_term_key': 'parentTermKey',
+ 'is_allowed_to_have_child_terms': 'isAllowedToHaveChildTerms',
+ 'path': 'path',
+ 'lifecycle_state': 'lifecycleState',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'created_by_id': 'createdById',
+ 'updated_by_id': 'updatedById',
+ 'owner': 'owner',
+ 'workflow_status': 'workflowStatus',
+ 'uri': 'uri',
+ 'associated_object_count': 'associatedObjectCount',
+ 'associated_objects': 'associatedObjects'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._glossary_key = None
+ self._parent_term_key = None
+ self._is_allowed_to_have_child_terms = None
+ self._path = None
+ self._lifecycle_state = None
+ self._time_created = None
+ self._time_updated = None
+ self._created_by_id = None
+ self._updated_by_id = None
+ self._owner = None
+ self._workflow_status = None
+ self._uri = None
+ self._associated_object_count = None
+ self._associated_objects = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Term.
+ Unique term key that is immutable.
+
+
+ :return: The key of this Term.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Term.
+ Unique term key that is immutable.
+
+
+ :param key: The key of this Term.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Term.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this Term.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Term.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this Term.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Term.
+ Detailed description of the term.
+
+
+ :return: The description of this Term.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Term.
+ Detailed description of the term.
+
+
+ :param description: The description of this Term.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this Term.
+ Unique id of the parent glossary.
+
+
+ :return: The glossary_key of this Term.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this Term.
+ Unique id of the parent glossary.
+
+
+ :param glossary_key: The glossary_key of this Term.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this Term.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this Term.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this Term.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this Term.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def is_allowed_to_have_child_terms(self):
+ """
+ Gets the is_allowed_to_have_child_terms of this Term.
+ Indicates whether a term may contain child terms.
+
+
+ :return: The is_allowed_to_have_child_terms of this Term.
+ :rtype: bool
+ """
+ return self._is_allowed_to_have_child_terms
+
+ @is_allowed_to_have_child_terms.setter
+ def is_allowed_to_have_child_terms(self, is_allowed_to_have_child_terms):
+ """
+ Sets the is_allowed_to_have_child_terms of this Term.
+ Indicates whether a term may contain child terms.
+
+
+ :param is_allowed_to_have_child_terms: The is_allowed_to_have_child_terms of this Term.
+ :type: bool
+ """
+ self._is_allowed_to_have_child_terms = is_allowed_to_have_child_terms
+
+ @property
+ def path(self):
+ """
+ Gets the path of this Term.
+ Absolute path of the term.
+
+
+ :return: The path of this Term.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this Term.
+ Absolute path of the term.
+
+
+ :param path: The path of this Term.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Term.
+ The current state of the term.
+
+
+ :return: The lifecycle_state of this Term.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Term.
+ The current state of the term.
+
+
+ :param lifecycle_state: The lifecycle_state of this Term.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this Term.
+ The date and time the term was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Term.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Term.
+ The date and time the term was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Term.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ Gets the time_updated of this Term.
+ The last time that any change was made to the term. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Term.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Term.
+ The last time that any change was made to the term. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Term.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def created_by_id(self):
+ """
+ Gets the created_by_id of this Term.
+ OCID of the user who created the term.
+
+
+ :return: The created_by_id of this Term.
+ :rtype: str
+ """
+ return self._created_by_id
+
+ @created_by_id.setter
+ def created_by_id(self, created_by_id):
+ """
+ Sets the created_by_id of this Term.
+ OCID of the user who created the term.
+
+
+ :param created_by_id: The created_by_id of this Term.
+ :type: str
+ """
+ self._created_by_id = created_by_id
+
+ @property
+ def updated_by_id(self):
+ """
+ Gets the updated_by_id of this Term.
+ OCID of the user who modified the term.
+
+
+ :return: The updated_by_id of this Term.
+ :rtype: str
+ """
+ return self._updated_by_id
+
+ @updated_by_id.setter
+ def updated_by_id(self, updated_by_id):
+ """
+ Sets the updated_by_id of this Term.
+ OCID of the user who modified the term.
+
+
+ :param updated_by_id: The updated_by_id of this Term.
+ :type: str
+ """
+ self._updated_by_id = updated_by_id
+
+ @property
+ def owner(self):
+ """
+ Gets the owner of this Term.
+ OCID of the user who is the owner of this business terminology.
+
+
+ :return: The owner of this Term.
+ :rtype: str
+ """
+ return self._owner
+
+ @owner.setter
+ def owner(self, owner):
+ """
+ Sets the owner of this Term.
+ OCID of the user who is the owner of this business terminology.
+
+
+ :param owner: The owner of this Term.
+ :type: str
+ """
+ self._owner = owner
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this Term.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :return: The workflow_status of this Term.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this Term.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :param workflow_status: The workflow_status of this Term.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Term.
+ URI to the term instance in the API.
+
+
+ :return: The uri of this Term.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Term.
+ URI to the term instance in the API.
+
+
+ :param uri: The uri of this Term.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def associated_object_count(self):
+ """
+ Gets the associated_object_count of this Term.
+ The number of objects tagged with this term
+
+
+ :return: The associated_object_count of this Term.
+ :rtype: int
+ """
+ return self._associated_object_count
+
+ @associated_object_count.setter
+ def associated_object_count(self, associated_object_count):
+ """
+ Sets the associated_object_count of this Term.
+ The number of objects tagged with this term
+
+
+ :param associated_object_count: The associated_object_count of this Term.
+ :type: int
+ """
+ self._associated_object_count = associated_object_count
+
+ @property
+ def associated_objects(self):
+ """
+ Gets the associated_objects of this Term.
+ Array of objects associated to a term.
+
+
+ :return: The associated_objects of this Term.
+ :rtype: list[TermAssociatedObject]
+ """
+ return self._associated_objects
+
+ @associated_objects.setter
+ def associated_objects(self, associated_objects):
+ """
+ Sets the associated_objects of this Term.
+ Array of objects associated to a term.
+
+
+ :param associated_objects: The associated_objects of this Term.
+ :type: list[TermAssociatedObject]
+ """
+ self._associated_objects = associated_objects
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term_associated_object.py b/src/oci/data_catalog/models/term_associated_object.py
new file mode 100644
index 0000000000..c2dd7fa5be
--- /dev/null
+++ b/src/oci/data_catalog/models/term_associated_object.py
@@ -0,0 +1,131 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TermAssociatedObject(object):
+ """
+ Projection of an object that is tagged to a term.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TermAssociatedObject object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this TermAssociatedObject.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this TermAssociatedObject.
+ :type name: str
+
+ :param uri:
+ The value to assign to the uri property of this TermAssociatedObject.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'name': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'name': 'name',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._name = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this TermAssociatedObject.
+ Immutable key used to uniquely identify the associated object.
+
+
+ :return: The key of this TermAssociatedObject.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this TermAssociatedObject.
+ Immutable key used to uniquely identify the associated object.
+
+
+ :param key: The key of this TermAssociatedObject.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this TermAssociatedObject.
+ Name of the associated object.
+
+
+ :return: The name of this TermAssociatedObject.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this TermAssociatedObject.
+ Name of the associated object.
+
+
+ :param name: The name of this TermAssociatedObject.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this TermAssociatedObject.
+ URI of the associated object within the data catalog API.
+
+
+ :return: The uri of this TermAssociatedObject.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this TermAssociatedObject.
+ URI of the associated object within the data catalog API.
+
+
+ :param uri: The uri of this TermAssociatedObject.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term_collection.py b/src/oci/data_catalog/models/term_collection.py
new file mode 100644
index 0000000000..c0471bcde8
--- /dev/null
+++ b/src/oci/data_catalog/models/term_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TermCollection(object):
+ """
+ Results of a terms listing. Terms are defined in business glossary and are used in tagging catalog objects.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TermCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this TermCollection.
+ :type items: list[TermSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[TermSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this TermCollection.
+ Collection of terms.
+
+
+ :return: The items of this TermCollection.
+ :rtype: list[TermSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this TermCollection.
+ Collection of terms.
+
+
+ :param items: The items of this TermCollection.
+ :type: list[TermSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term_relationship.py b/src/oci/data_catalog/models/term_relationship.py
new file mode 100644
index 0000000000..3236908685
--- /dev/null
+++ b/src/oci/data_catalog/models/term_relationship.py
@@ -0,0 +1,418 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TermRelationship(object):
+ """
+ Full term relationship definition. Business term relationship between two terms in a business glossary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TermRelationship object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this TermRelationship.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this TermRelationship.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this TermRelationship.
+ :type description: str
+
+ :param related_term_key:
+ The value to assign to the related_term_key property of this TermRelationship.
+ :type related_term_key: str
+
+ :param related_term_display_name:
+ The value to assign to the related_term_display_name property of this TermRelationship.
+ :type related_term_display_name: str
+
+ :param related_term_description:
+ The value to assign to the related_term_description property of this TermRelationship.
+ :type related_term_description: str
+
+ :param uri:
+ The value to assign to the uri property of this TermRelationship.
+ :type uri: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this TermRelationship.
+ :type parent_term_key: str
+
+ :param parent_term_display_name:
+ The value to assign to the parent_term_display_name property of this TermRelationship.
+ :type parent_term_display_name: str
+
+ :param parent_term_description:
+ The value to assign to the parent_term_description property of this TermRelationship.
+ :type parent_term_description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this TermRelationship.
+ :type time_created: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this TermRelationship.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'related_term_key': 'str',
+ 'related_term_display_name': 'str',
+ 'related_term_description': 'str',
+ 'uri': 'str',
+ 'parent_term_key': 'str',
+ 'parent_term_display_name': 'str',
+ 'parent_term_description': 'str',
+ 'time_created': 'datetime',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'related_term_key': 'relatedTermKey',
+ 'related_term_display_name': 'relatedTermDisplayName',
+ 'related_term_description': 'relatedTermDescription',
+ 'uri': 'uri',
+ 'parent_term_key': 'parentTermKey',
+ 'parent_term_display_name': 'parentTermDisplayName',
+ 'parent_term_description': 'parentTermDescription',
+ 'time_created': 'timeCreated',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._related_term_key = None
+ self._related_term_display_name = None
+ self._related_term_description = None
+ self._uri = None
+ self._parent_term_key = None
+ self._parent_term_display_name = None
+ self._parent_term_description = None
+ self._time_created = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this TermRelationship.
+ Unique term relationship key that is immutable.
+
+
+ :return: The key of this TermRelationship.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this TermRelationship.
+ Unique term relationship key that is immutable.
+
+
+ :param key: The key of this TermRelationship.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this TermRelationship.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.This is the same as relationshipType for termRelationship
+
+
+ :return: The display_name of this TermRelationship.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this TermRelationship.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.This is the same as relationshipType for termRelationship
+
+
+ :param display_name: The display_name of this TermRelationship.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this TermRelationship.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :return: The description of this TermRelationship.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this TermRelationship.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :param description: The description of this TermRelationship.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def related_term_key(self):
+ """
+ Gets the related_term_key of this TermRelationship.
+ Unique id of the related term.
+
+
+ :return: The related_term_key of this TermRelationship.
+ :rtype: str
+ """
+ return self._related_term_key
+
+ @related_term_key.setter
+ def related_term_key(self, related_term_key):
+ """
+ Sets the related_term_key of this TermRelationship.
+ Unique id of the related term.
+
+
+ :param related_term_key: The related_term_key of this TermRelationship.
+ :type: str
+ """
+ self._related_term_key = related_term_key
+
+ @property
+ def related_term_display_name(self):
+ """
+ Gets the related_term_display_name of this TermRelationship.
+ Name of the related term.
+
+
+ :return: The related_term_display_name of this TermRelationship.
+ :rtype: str
+ """
+ return self._related_term_display_name
+
+ @related_term_display_name.setter
+ def related_term_display_name(self, related_term_display_name):
+ """
+ Sets the related_term_display_name of this TermRelationship.
+ Name of the related term.
+
+
+ :param related_term_display_name: The related_term_display_name of this TermRelationship.
+ :type: str
+ """
+ self._related_term_display_name = related_term_display_name
+
+ @property
+ def related_term_description(self):
+ """
+ Gets the related_term_description of this TermRelationship.
+ Description of the related term.
+
+
+ :return: The related_term_description of this TermRelationship.
+ :rtype: str
+ """
+ return self._related_term_description
+
+ @related_term_description.setter
+ def related_term_description(self, related_term_description):
+ """
+ Sets the related_term_description of this TermRelationship.
+ Description of the related term.
+
+
+ :param related_term_description: The related_term_description of this TermRelationship.
+ :type: str
+ """
+ self._related_term_description = related_term_description
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this TermRelationship.
+ URI to the term relationship instance in the API.
+
+
+ :return: The uri of this TermRelationship.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this TermRelationship.
+ URI to the term relationship instance in the API.
+
+
+ :param uri: The uri of this TermRelationship.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this TermRelationship.
+ This relationships parent term key.
+
+
+ :return: The parent_term_key of this TermRelationship.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this TermRelationship.
+ This relationships parent term key.
+
+
+ :param parent_term_key: The parent_term_key of this TermRelationship.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def parent_term_display_name(self):
+ """
+ Gets the parent_term_display_name of this TermRelationship.
+ Name of the parent term.
+
+
+ :return: The parent_term_display_name of this TermRelationship.
+ :rtype: str
+ """
+ return self._parent_term_display_name
+
+ @parent_term_display_name.setter
+ def parent_term_display_name(self, parent_term_display_name):
+ """
+ Sets the parent_term_display_name of this TermRelationship.
+ Name of the parent term.
+
+
+ :param parent_term_display_name: The parent_term_display_name of this TermRelationship.
+ :type: str
+ """
+ self._parent_term_display_name = parent_term_display_name
+
+ @property
+ def parent_term_description(self):
+ """
+ Gets the parent_term_description of this TermRelationship.
+ Description of the parent term.
+
+
+ :return: The parent_term_description of this TermRelationship.
+ :rtype: str
+ """
+ return self._parent_term_description
+
+ @parent_term_description.setter
+ def parent_term_description(self, parent_term_description):
+ """
+ Sets the parent_term_description of this TermRelationship.
+ Description of the parent term.
+
+
+ :param parent_term_description: The parent_term_description of this TermRelationship.
+ :type: str
+ """
+ self._parent_term_description = parent_term_description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this TermRelationship.
+ The date and time the term relationship was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this TermRelationship.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this TermRelationship.
+ The date and time the term relationship was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this TermRelationship.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this TermRelationship.
+ State of the term relationship.
+
+
+ :return: The lifecycle_state of this TermRelationship.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this TermRelationship.
+ State of the term relationship.
+
+
+ :param lifecycle_state: The lifecycle_state of this TermRelationship.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term_relationship_collection.py b/src/oci/data_catalog/models/term_relationship_collection.py
new file mode 100644
index 0000000000..e02db2c35a
--- /dev/null
+++ b/src/oci/data_catalog/models/term_relationship_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TermRelationshipCollection(object):
+ """
+ Results of a terms relationship listing. Term relationships are associations between two terms in business glossary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TermRelationshipCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this TermRelationshipCollection.
+ :type items: list[TermRelationshipSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[TermRelationshipSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this TermRelationshipCollection.
+ Collection of term relationships.
+
+
+ :return: The items of this TermRelationshipCollection.
+ :rtype: list[TermRelationshipSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this TermRelationshipCollection.
+ Collection of term relationships.
+
+
+ :param items: The items of this TermRelationshipCollection.
+ :type: list[TermRelationshipSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term_relationship_summary.py b/src/oci/data_catalog/models/term_relationship_summary.py
new file mode 100644
index 0000000000..7e8b73d8b8
--- /dev/null
+++ b/src/oci/data_catalog/models/term_relationship_summary.py
@@ -0,0 +1,418 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TermRelationshipSummary(object):
+ """
+ Summary of a term relationship. Business term relationship between two terms in a business glossary.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TermRelationshipSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this TermRelationshipSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this TermRelationshipSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this TermRelationshipSummary.
+ :type description: str
+
+ :param related_term_key:
+ The value to assign to the related_term_key property of this TermRelationshipSummary.
+ :type related_term_key: str
+
+ :param related_term_display_name:
+ The value to assign to the related_term_display_name property of this TermRelationshipSummary.
+ :type related_term_display_name: str
+
+ :param related_term_description:
+ The value to assign to the related_term_description property of this TermRelationshipSummary.
+ :type related_term_description: str
+
+ :param uri:
+ The value to assign to the uri property of this TermRelationshipSummary.
+ :type uri: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this TermRelationshipSummary.
+ :type parent_term_key: str
+
+ :param parent_term_display_name:
+ The value to assign to the parent_term_display_name property of this TermRelationshipSummary.
+ :type parent_term_display_name: str
+
+ :param parent_term_description:
+ The value to assign to the parent_term_description property of this TermRelationshipSummary.
+ :type parent_term_description: str
+
+ :param time_created:
+ The value to assign to the time_created property of this TermRelationshipSummary.
+ :type time_created: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this TermRelationshipSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'related_term_key': 'str',
+ 'related_term_display_name': 'str',
+ 'related_term_description': 'str',
+ 'uri': 'str',
+ 'parent_term_key': 'str',
+ 'parent_term_display_name': 'str',
+ 'parent_term_description': 'str',
+ 'time_created': 'datetime',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'related_term_key': 'relatedTermKey',
+ 'related_term_display_name': 'relatedTermDisplayName',
+ 'related_term_description': 'relatedTermDescription',
+ 'uri': 'uri',
+ 'parent_term_key': 'parentTermKey',
+ 'parent_term_display_name': 'parentTermDisplayName',
+ 'parent_term_description': 'parentTermDescription',
+ 'time_created': 'timeCreated',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._related_term_key = None
+ self._related_term_display_name = None
+ self._related_term_description = None
+ self._uri = None
+ self._parent_term_key = None
+ self._parent_term_display_name = None
+ self._parent_term_description = None
+ self._time_created = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this TermRelationshipSummary.
+ Unique term relationship key that is immutable.
+
+
+ :return: The key of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this TermRelationshipSummary.
+ Unique term relationship key that is immutable.
+
+
+ :param key: The key of this TermRelationshipSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this TermRelationshipSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.This is the same as relationshipType for termRelationship
+
+
+ :return: The display_name of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this TermRelationshipSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.This is the same as relationshipType for termRelationship
+
+
+ :param display_name: The display_name of this TermRelationshipSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this TermRelationshipSummary.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :return: The description of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this TermRelationshipSummary.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :param description: The description of this TermRelationshipSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def related_term_key(self):
+ """
+ Gets the related_term_key of this TermRelationshipSummary.
+ Unique id of the related term.
+
+
+ :return: The related_term_key of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._related_term_key
+
+ @related_term_key.setter
+ def related_term_key(self, related_term_key):
+ """
+ Sets the related_term_key of this TermRelationshipSummary.
+ Unique id of the related term.
+
+
+ :param related_term_key: The related_term_key of this TermRelationshipSummary.
+ :type: str
+ """
+ self._related_term_key = related_term_key
+
+ @property
+ def related_term_display_name(self):
+ """
+ Gets the related_term_display_name of this TermRelationshipSummary.
+ Name of the related term.
+
+
+ :return: The related_term_display_name of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._related_term_display_name
+
+ @related_term_display_name.setter
+ def related_term_display_name(self, related_term_display_name):
+ """
+ Sets the related_term_display_name of this TermRelationshipSummary.
+ Name of the related term.
+
+
+ :param related_term_display_name: The related_term_display_name of this TermRelationshipSummary.
+ :type: str
+ """
+ self._related_term_display_name = related_term_display_name
+
+ @property
+ def related_term_description(self):
+ """
+ Gets the related_term_description of this TermRelationshipSummary.
+ Description of the related term.
+
+
+ :return: The related_term_description of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._related_term_description
+
+ @related_term_description.setter
+ def related_term_description(self, related_term_description):
+ """
+ Sets the related_term_description of this TermRelationshipSummary.
+ Description of the related term.
+
+
+ :param related_term_description: The related_term_description of this TermRelationshipSummary.
+ :type: str
+ """
+ self._related_term_description = related_term_description
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this TermRelationshipSummary.
+ URI to the term relationship instance in the API.
+
+
+ :return: The uri of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this TermRelationshipSummary.
+ URI to the term relationship instance in the API.
+
+
+ :param uri: The uri of this TermRelationshipSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this TermRelationshipSummary.
+ This relationships parent term key.
+
+
+ :return: The parent_term_key of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this TermRelationshipSummary.
+ This relationships parent term key.
+
+
+ :param parent_term_key: The parent_term_key of this TermRelationshipSummary.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def parent_term_display_name(self):
+ """
+ Gets the parent_term_display_name of this TermRelationshipSummary.
+ Name of the parent term.
+
+
+ :return: The parent_term_display_name of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._parent_term_display_name
+
+ @parent_term_display_name.setter
+ def parent_term_display_name(self, parent_term_display_name):
+ """
+ Sets the parent_term_display_name of this TermRelationshipSummary.
+ Name of the parent term.
+
+
+ :param parent_term_display_name: The parent_term_display_name of this TermRelationshipSummary.
+ :type: str
+ """
+ self._parent_term_display_name = parent_term_display_name
+
+ @property
+ def parent_term_description(self):
+ """
+ Gets the parent_term_description of this TermRelationshipSummary.
+ Description of the parent term.
+
+
+ :return: The parent_term_description of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._parent_term_description
+
+ @parent_term_description.setter
+ def parent_term_description(self, parent_term_description):
+ """
+ Sets the parent_term_description of this TermRelationshipSummary.
+ Description of the parent term.
+
+
+ :param parent_term_description: The parent_term_description of this TermRelationshipSummary.
+ :type: str
+ """
+ self._parent_term_description = parent_term_description
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this TermRelationshipSummary.
+ The date and time the term relationship was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this TermRelationshipSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this TermRelationshipSummary.
+ The date and time the term relationship was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this TermRelationshipSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this TermRelationshipSummary.
+ State of the term relationship.
+
+
+ :return: The lifecycle_state of this TermRelationshipSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this TermRelationshipSummary.
+ State of the term relationship.
+
+
+ :param lifecycle_state: The lifecycle_state of this TermRelationshipSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/term_summary.py b/src/oci/data_catalog/models/term_summary.py
new file mode 100644
index 0000000000..43cf31db79
--- /dev/null
+++ b/src/oci/data_catalog/models/term_summary.py
@@ -0,0 +1,420 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TermSummary(object):
+ """
+ Summary of a term. A defined business term in a business glossary. As well as a term definition, simple format
+ rules for attributes mapping to the term (for example, the expected data type and length restrictions) may be
+ stated at the term level.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TermSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this TermSummary.
+ :type key: str
+
+ :param display_name:
+ The value to assign to the display_name property of this TermSummary.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this TermSummary.
+ :type description: str
+
+ :param glossary_key:
+ The value to assign to the glossary_key property of this TermSummary.
+ :type glossary_key: str
+
+ :param uri:
+ The value to assign to the uri property of this TermSummary.
+ :type uri: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this TermSummary.
+ :type parent_term_key: str
+
+ :param is_allowed_to_have_child_terms:
+ The value to assign to the is_allowed_to_have_child_terms property of this TermSummary.
+ :type is_allowed_to_have_child_terms: bool
+
+ :param path:
+ The value to assign to the path property of this TermSummary.
+ :type path: str
+
+ :param time_created:
+ The value to assign to the time_created property of this TermSummary.
+ :type time_created: datetime
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this TermSummary.
+ :type workflow_status: str
+
+ :param associated_object_count:
+ The value to assign to the associated_object_count property of this TermSummary.
+ :type associated_object_count: int
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this TermSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'display_name': 'str',
+ 'description': 'str',
+ 'glossary_key': 'str',
+ 'uri': 'str',
+ 'parent_term_key': 'str',
+ 'is_allowed_to_have_child_terms': 'bool',
+ 'path': 'str',
+ 'time_created': 'datetime',
+ 'workflow_status': 'str',
+ 'associated_object_count': 'int',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'glossary_key': 'glossaryKey',
+ 'uri': 'uri',
+ 'parent_term_key': 'parentTermKey',
+ 'is_allowed_to_have_child_terms': 'isAllowedToHaveChildTerms',
+ 'path': 'path',
+ 'time_created': 'timeCreated',
+ 'workflow_status': 'workflowStatus',
+ 'associated_object_count': 'associatedObjectCount',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._display_name = None
+ self._description = None
+ self._glossary_key = None
+ self._uri = None
+ self._parent_term_key = None
+ self._is_allowed_to_have_child_terms = None
+ self._path = None
+ self._time_created = None
+ self._workflow_status = None
+ self._associated_object_count = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this TermSummary.
+ Unique term key that is immutable.
+
+
+ :return: The key of this TermSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this TermSummary.
+ Unique term key that is immutable.
+
+
+ :param key: The key of this TermSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this TermSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this TermSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this TermSummary.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this TermSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this TermSummary.
+ Detailed description of the term.
+
+
+ :return: The description of this TermSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this TermSummary.
+ Detailed description of the term.
+
+
+ :param description: The description of this TermSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def glossary_key(self):
+ """
+ Gets the glossary_key of this TermSummary.
+ Unique id of the parent glossary.
+
+
+ :return: The glossary_key of this TermSummary.
+ :rtype: str
+ """
+ return self._glossary_key
+
+ @glossary_key.setter
+ def glossary_key(self, glossary_key):
+ """
+ Sets the glossary_key of this TermSummary.
+ Unique id of the parent glossary.
+
+
+ :param glossary_key: The glossary_key of this TermSummary.
+ :type: str
+ """
+ self._glossary_key = glossary_key
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this TermSummary.
+ URI to the term instance in the API.
+
+
+ :return: The uri of this TermSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this TermSummary.
+ URI to the term instance in the API.
+
+
+ :param uri: The uri of this TermSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this TermSummary.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this TermSummary.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this TermSummary.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this TermSummary.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def is_allowed_to_have_child_terms(self):
+ """
+ Gets the is_allowed_to_have_child_terms of this TermSummary.
+ Indicates whether a term may contain child terms.
+
+
+ :return: The is_allowed_to_have_child_terms of this TermSummary.
+ :rtype: bool
+ """
+ return self._is_allowed_to_have_child_terms
+
+ @is_allowed_to_have_child_terms.setter
+ def is_allowed_to_have_child_terms(self, is_allowed_to_have_child_terms):
+ """
+ Sets the is_allowed_to_have_child_terms of this TermSummary.
+ Indicates whether a term may contain child terms.
+
+
+ :param is_allowed_to_have_child_terms: The is_allowed_to_have_child_terms of this TermSummary.
+ :type: bool
+ """
+ self._is_allowed_to_have_child_terms = is_allowed_to_have_child_terms
+
+ @property
+ def path(self):
+ """
+ Gets the path of this TermSummary.
+ Absolute path of the term.
+
+
+ :return: The path of this TermSummary.
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ Sets the path of this TermSummary.
+ Absolute path of the term.
+
+
+ :param path: The path of this TermSummary.
+ :type: str
+ """
+ self._path = path
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this TermSummary.
+ The date and time the term was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this TermSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this TermSummary.
+ The date and time the term was created, in the format defined by `RFC3339`__.
+ Example: `2019-03-25T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this TermSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this TermSummary.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :return: The workflow_status of this TermSummary.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this TermSummary.
+ Status of the approval process workflow for this business term in the glossary.
+
+
+ :param workflow_status: The workflow_status of this TermSummary.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ @property
+ def associated_object_count(self):
+ """
+ Gets the associated_object_count of this TermSummary.
+ The number of objects tagged with this term.
+
+
+ :return: The associated_object_count of this TermSummary.
+ :rtype: int
+ """
+ return self._associated_object_count
+
+ @associated_object_count.setter
+ def associated_object_count(self, associated_object_count):
+ """
+ Sets the associated_object_count of this TermSummary.
+ The number of objects tagged with this term.
+
+
+ :param associated_object_count: The associated_object_count of this TermSummary.
+ :type: int
+ """
+ self._associated_object_count = associated_object_count
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this TermSummary.
+ State of the term.
+
+
+ :return: The lifecycle_state of this TermSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this TermSummary.
+ State of the term.
+
+
+ :param lifecycle_state: The lifecycle_state of this TermSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/type.py b/src/oci/data_catalog/models/type.py
new file mode 100644
index 0000000000..f58acbe610
--- /dev/null
+++ b/src/oci/data_catalog/models/type.py
@@ -0,0 +1,447 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Type(object):
+ """
+ Full data catalog type definition. Fully defines a type of the data catalog. All types are statically defined
+ in the system and are immutable. It isn't possible to create new types or update existing types via the API.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Type object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this Type.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this Type.
+ :type name: str
+
+ :param description:
+ The value to assign to the description property of this Type.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this Type.
+ :type catalog_id: str
+
+ :param properties:
+ The value to assign to the properties property of this Type.
+ :type properties: dict(str, list[PropertyDefinition])
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Type.
+ :type lifecycle_state: str
+
+ :param is_internal:
+ The value to assign to the is_internal property of this Type.
+ :type is_internal: bool
+
+ :param is_tag:
+ The value to assign to the is_tag property of this Type.
+ :type is_tag: bool
+
+ :param is_approved:
+ The value to assign to the is_approved property of this Type.
+ :type is_approved: bool
+
+ :param type_category:
+ The value to assign to the type_category property of this Type.
+ :type type_category: str
+
+ :param external_type_name:
+ The value to assign to the external_type_name property of this Type.
+ :type external_type_name: str
+
+ :param uri:
+ The value to assign to the uri property of this Type.
+ :type uri: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'properties': 'dict(str, list[PropertyDefinition])',
+ 'lifecycle_state': 'str',
+ 'is_internal': 'bool',
+ 'is_tag': 'bool',
+ 'is_approved': 'bool',
+ 'type_category': 'str',
+ 'external_type_name': 'str',
+ 'uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'name': 'name',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'properties': 'properties',
+ 'lifecycle_state': 'lifecycleState',
+ 'is_internal': 'isInternal',
+ 'is_tag': 'isTag',
+ 'is_approved': 'isApproved',
+ 'type_category': 'typeCategory',
+ 'external_type_name': 'externalTypeName',
+ 'uri': 'uri'
+ }
+
+ self._key = None
+ self._name = None
+ self._description = None
+ self._catalog_id = None
+ self._properties = None
+ self._lifecycle_state = None
+ self._is_internal = None
+ self._is_tag = None
+ self._is_approved = None
+ self._type_category = None
+ self._external_type_name = None
+ self._uri = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this Type.
+ Unique type key that is immutable.
+
+
+ :return: The key of this Type.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this Type.
+ Unique type key that is immutable.
+
+
+ :param key: The key of this Type.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this Type.
+ The immutable name of the type.
+
+
+ :return: The name of this Type.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this Type.
+ The immutable name of the type.
+
+
+ :param name: The name of this Type.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Type.
+ Detailed description of the type.
+
+
+ :return: The description of this Type.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Type.
+ Detailed description of the type.
+
+
+ :param description: The description of this Type.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this Type.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this Type.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this Type.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this Type.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this Type.
+ A map of arrays which defines the type specific properties, both required and optional. The map keys are
+ category names and the values are arrays contiaing all property details. Every property is contained inside
+ of a category. Most types have required properties within the \"default\" category.
+ Example:
+ `{
+ \"properties\": {
+ \"default\": {
+ \"attributes:\": [
+ {
+ \"name\": \"host\",
+ \"type\": \"string\",
+ \"isRequired\": true,
+ \"isUpdatable\": false
+ },
+ ...
+ ]
+ }
+ }
+ }`
+
+
+ :return: The properties of this Type.
+ :rtype: dict(str, list[PropertyDefinition])
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this Type.
+ A map of arrays which defines the type specific properties, both required and optional. The map keys are
+ category names and the values are arrays contiaing all property details. Every property is contained inside
+ of a category. Most types have required properties within the \"default\" category.
+ Example:
+ `{
+ \"properties\": {
+ \"default\": {
+ \"attributes:\": [
+ {
+ \"name\": \"host\",
+ \"type\": \"string\",
+ \"isRequired\": true,
+ \"isUpdatable\": false
+ },
+ ...
+ ]
+ }
+ }
+ }`
+
+
+ :param properties: The properties of this Type.
+ :type: dict(str, list[PropertyDefinition])
+ """
+ self._properties = properties
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this Type.
+ The current state of the type.
+
+
+ :return: The lifecycle_state of this Type.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Type.
+ The current state of the type.
+
+
+ :param lifecycle_state: The lifecycle_state of this Type.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def is_internal(self):
+ """
+ Gets the is_internal of this Type.
+ Indicates whether the type is internal, making it unavailable for use by metadata elements.
+
+
+ :return: The is_internal of this Type.
+ :rtype: bool
+ """
+ return self._is_internal
+
+ @is_internal.setter
+ def is_internal(self, is_internal):
+ """
+ Sets the is_internal of this Type.
+ Indicates whether the type is internal, making it unavailable for use by metadata elements.
+
+
+ :param is_internal: The is_internal of this Type.
+ :type: bool
+ """
+ self._is_internal = is_internal
+
+ @property
+ def is_tag(self):
+ """
+ Gets the is_tag of this Type.
+ Indicates whether the type can be used for tagging metadata elements.
+
+
+ :return: The is_tag of this Type.
+ :rtype: bool
+ """
+ return self._is_tag
+
+ @is_tag.setter
+ def is_tag(self, is_tag):
+ """
+ Sets the is_tag of this Type.
+ Indicates whether the type can be used for tagging metadata elements.
+
+
+ :param is_tag: The is_tag of this Type.
+ :type: bool
+ """
+ self._is_tag = is_tag
+
+ @property
+ def is_approved(self):
+ """
+ Gets the is_approved of this Type.
+ Indicates whether the type is approved for use as a classifying object.
+
+
+ :return: The is_approved of this Type.
+ :rtype: bool
+ """
+ return self._is_approved
+
+ @is_approved.setter
+ def is_approved(self, is_approved):
+ """
+ Sets the is_approved of this Type.
+ Indicates whether the type is approved for use as a classifying object.
+
+
+ :param is_approved: The is_approved of this Type.
+ :type: bool
+ """
+ self._is_approved = is_approved
+
+ @property
+ def type_category(self):
+ """
+ Gets the type_category of this Type.
+ Indicates the category this type belongs to. For instance, data assets, connections.
+
+
+ :return: The type_category of this Type.
+ :rtype: str
+ """
+ return self._type_category
+
+ @type_category.setter
+ def type_category(self, type_category):
+ """
+ Sets the type_category of this Type.
+ Indicates the category this type belongs to. For instance, data assets, connections.
+
+
+ :param type_category: The type_category of this Type.
+ :type: str
+ """
+ self._type_category = type_category
+
+ @property
+ def external_type_name(self):
+ """
+ Gets the external_type_name of this Type.
+ Mapping type equivalence in the external system.
+
+
+ :return: The external_type_name of this Type.
+ :rtype: str
+ """
+ return self._external_type_name
+
+ @external_type_name.setter
+ def external_type_name(self, external_type_name):
+ """
+ Sets the external_type_name of this Type.
+ Mapping type equivalence in the external system.
+
+
+ :param external_type_name: The external_type_name of this Type.
+ :type: str
+ """
+ self._external_type_name = external_type_name
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this Type.
+ URI to the type instance in the API.
+
+
+ :return: The uri of this Type.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this Type.
+ URI to the type instance in the API.
+
+
+ :param uri: The uri of this Type.
+ :type: str
+ """
+ self._uri = uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/type_collection.py b/src/oci/data_catalog/models/type_collection.py
new file mode 100644
index 0000000000..bce3be6688
--- /dev/null
+++ b/src/oci/data_catalog/models/type_collection.py
@@ -0,0 +1,69 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TypeCollection(object):
+ """
+ Results of a types listing. Types define the basic type of catalog objects and are immutable.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TypeCollection object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param items:
+ The value to assign to the items property of this TypeCollection.
+ :type items: list[TypeSummary]
+
+ """
+ self.swagger_types = {
+ 'items': 'list[TypeSummary]'
+ }
+
+ self.attribute_map = {
+ 'items': 'items'
+ }
+
+ self._items = None
+
+ @property
+ def items(self):
+ """
+ **[Required]** Gets the items of this TypeCollection.
+ Collection of types.
+
+
+ :return: The items of this TypeCollection.
+ :rtype: list[TypeSummary]
+ """
+ return self._items
+
+ @items.setter
+ def items(self, items):
+ """
+ Sets the items of this TypeCollection.
+ Collection of types.
+
+
+ :param items: The items of this TypeCollection.
+ :type: list[TypeSummary]
+ """
+ self._items = items
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/type_summary.py b/src/oci/data_catalog/models/type_summary.py
new file mode 100644
index 0000000000..761719b75d
--- /dev/null
+++ b/src/oci/data_catalog/models/type_summary.py
@@ -0,0 +1,256 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class TypeSummary(object):
+ """
+ Summary data catalog type information. All types are statically defined in the system and are immutable.
+ It isn't possible to create new types or update existing types via the API.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new TypeSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param key:
+ The value to assign to the key property of this TypeSummary.
+ :type key: str
+
+ :param name:
+ The value to assign to the name property of this TypeSummary.
+ :type name: str
+
+ :param description:
+ The value to assign to the description property of this TypeSummary.
+ :type description: str
+
+ :param catalog_id:
+ The value to assign to the catalog_id property of this TypeSummary.
+ :type catalog_id: str
+
+ :param type_category:
+ The value to assign to the type_category property of this TypeSummary.
+ :type type_category: str
+
+ :param uri:
+ The value to assign to the uri property of this TypeSummary.
+ :type uri: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this TypeSummary.
+ :type lifecycle_state: str
+
+ """
+ self.swagger_types = {
+ 'key': 'str',
+ 'name': 'str',
+ 'description': 'str',
+ 'catalog_id': 'str',
+ 'type_category': 'str',
+ 'uri': 'str',
+ 'lifecycle_state': 'str'
+ }
+
+ self.attribute_map = {
+ 'key': 'key',
+ 'name': 'name',
+ 'description': 'description',
+ 'catalog_id': 'catalogId',
+ 'type_category': 'typeCategory',
+ 'uri': 'uri',
+ 'lifecycle_state': 'lifecycleState'
+ }
+
+ self._key = None
+ self._name = None
+ self._description = None
+ self._catalog_id = None
+ self._type_category = None
+ self._uri = None
+ self._lifecycle_state = None
+
+ @property
+ def key(self):
+ """
+ **[Required]** Gets the key of this TypeSummary.
+ Unique type key that is immutable.
+
+
+ :return: The key of this TypeSummary.
+ :rtype: str
+ """
+ return self._key
+
+ @key.setter
+ def key(self, key):
+ """
+ Sets the key of this TypeSummary.
+ Unique type key that is immutable.
+
+
+ :param key: The key of this TypeSummary.
+ :type: str
+ """
+ self._key = key
+
+ @property
+ def name(self):
+ """
+ Gets the name of this TypeSummary.
+ The immutable name of the type.
+
+
+ :return: The name of this TypeSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this TypeSummary.
+ The immutable name of the type.
+
+
+ :param name: The name of this TypeSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this TypeSummary.
+ Detailed description of the type.
+
+
+ :return: The description of this TypeSummary.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this TypeSummary.
+ Detailed description of the type.
+
+
+ :param description: The description of this TypeSummary.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def catalog_id(self):
+ """
+ Gets the catalog_id of this TypeSummary.
+ The data catalog's OCID.
+
+
+ :return: The catalog_id of this TypeSummary.
+ :rtype: str
+ """
+ return self._catalog_id
+
+ @catalog_id.setter
+ def catalog_id(self, catalog_id):
+ """
+ Sets the catalog_id of this TypeSummary.
+ The data catalog's OCID.
+
+
+ :param catalog_id: The catalog_id of this TypeSummary.
+ :type: str
+ """
+ self._catalog_id = catalog_id
+
+ @property
+ def type_category(self):
+ """
+ Gets the type_category of this TypeSummary.
+ Indicates the category this type belongs to. For instance, data assets, connections.
+
+
+ :return: The type_category of this TypeSummary.
+ :rtype: str
+ """
+ return self._type_category
+
+ @type_category.setter
+ def type_category(self, type_category):
+ """
+ Sets the type_category of this TypeSummary.
+ Indicates the category this type belongs to. For instance, data assets, connections.
+
+
+ :param type_category: The type_category of this TypeSummary.
+ :type: str
+ """
+ self._type_category = type_category
+
+ @property
+ def uri(self):
+ """
+ Gets the uri of this TypeSummary.
+ URI to the type instance in the API.
+
+
+ :return: The uri of this TypeSummary.
+ :rtype: str
+ """
+ return self._uri
+
+ @uri.setter
+ def uri(self, uri):
+ """
+ Sets the uri of this TypeSummary.
+ URI to the type instance in the API.
+
+
+ :param uri: The uri of this TypeSummary.
+ :type: str
+ """
+ self._uri = uri
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this TypeSummary.
+ State of the folder.
+
+
+ :return: The lifecycle_state of this TypeSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this TypeSummary.
+ State of the folder.
+
+
+ :param lifecycle_state: The lifecycle_state of this TypeSummary.
+ :type: str
+ """
+ self._lifecycle_state = lifecycle_state
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_attribute_details.py b/src/oci/data_catalog/models/update_attribute_details.py
new file mode 100644
index 0000000000..e96199daca
--- /dev/null
+++ b/src/oci/data_catalog/models/update_attribute_details.py
@@ -0,0 +1,395 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateAttributeDetails(object):
+ """
+ Properties used in attribute update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateAttributeDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateAttributeDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateAttributeDetails.
+ :type description: str
+
+ :param external_data_type:
+ The value to assign to the external_data_type property of this UpdateAttributeDetails.
+ :type external_data_type: str
+
+ :param is_incremental_data:
+ The value to assign to the is_incremental_data property of this UpdateAttributeDetails.
+ :type is_incremental_data: bool
+
+ :param is_nullable:
+ The value to assign to the is_nullable property of this UpdateAttributeDetails.
+ :type is_nullable: bool
+
+ :param length:
+ The value to assign to the length property of this UpdateAttributeDetails.
+ :type length: int
+
+ :param position:
+ The value to assign to the position property of this UpdateAttributeDetails.
+ :type position: int
+
+ :param precision:
+ The value to assign to the precision property of this UpdateAttributeDetails.
+ :type precision: int
+
+ :param scale:
+ The value to assign to the scale property of this UpdateAttributeDetails.
+ :type scale: int
+
+ :param time_external:
+ The value to assign to the time_external property of this UpdateAttributeDetails.
+ :type time_external: datetime
+
+ :param properties:
+ The value to assign to the properties property of this UpdateAttributeDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'external_data_type': 'str',
+ 'is_incremental_data': 'bool',
+ 'is_nullable': 'bool',
+ 'length': 'int',
+ 'position': 'int',
+ 'precision': 'int',
+ 'scale': 'int',
+ 'time_external': 'datetime',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'external_data_type': 'externalDataType',
+ 'is_incremental_data': 'isIncrementalData',
+ 'is_nullable': 'isNullable',
+ 'length': 'length',
+ 'position': 'position',
+ 'precision': 'precision',
+ 'scale': 'scale',
+ 'time_external': 'timeExternal',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._external_data_type = None
+ self._is_incremental_data = None
+ self._is_nullable = None
+ self._length = None
+ self._position = None
+ self._precision = None
+ self._scale = None
+ self._time_external = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateAttributeDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateAttributeDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateAttributeDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateAttributeDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateAttributeDetails.
+ Detailed description of the attribute.
+
+
+ :return: The description of this UpdateAttributeDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateAttributeDetails.
+ Detailed description of the attribute.
+
+
+ :param description: The description of this UpdateAttributeDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def external_data_type(self):
+ """
+ Gets the external_data_type of this UpdateAttributeDetails.
+ Data type of the attribute as defined in the external system.
+
+
+ :return: The external_data_type of this UpdateAttributeDetails.
+ :rtype: str
+ """
+ return self._external_data_type
+
+ @external_data_type.setter
+ def external_data_type(self, external_data_type):
+ """
+ Sets the external_data_type of this UpdateAttributeDetails.
+ Data type of the attribute as defined in the external system.
+
+
+ :param external_data_type: The external_data_type of this UpdateAttributeDetails.
+ :type: str
+ """
+ self._external_data_type = external_data_type
+
+ @property
+ def is_incremental_data(self):
+ """
+ Gets the is_incremental_data of this UpdateAttributeDetails.
+ Property that identifies if this attribute can be used as a watermark to extract incremental data.
+
+
+ :return: The is_incremental_data of this UpdateAttributeDetails.
+ :rtype: bool
+ """
+ return self._is_incremental_data
+
+ @is_incremental_data.setter
+ def is_incremental_data(self, is_incremental_data):
+ """
+ Sets the is_incremental_data of this UpdateAttributeDetails.
+ Property that identifies if this attribute can be used as a watermark to extract incremental data.
+
+
+ :param is_incremental_data: The is_incremental_data of this UpdateAttributeDetails.
+ :type: bool
+ """
+ self._is_incremental_data = is_incremental_data
+
+ @property
+ def is_nullable(self):
+ """
+ Gets the is_nullable of this UpdateAttributeDetails.
+ Property that identifies if this attribute can be assigned nullable values.
+
+
+ :return: The is_nullable of this UpdateAttributeDetails.
+ :rtype: bool
+ """
+ return self._is_nullable
+
+ @is_nullable.setter
+ def is_nullable(self, is_nullable):
+ """
+ Sets the is_nullable of this UpdateAttributeDetails.
+ Property that identifies if this attribute can be assigned nullable values.
+
+
+ :param is_nullable: The is_nullable of this UpdateAttributeDetails.
+ :type: bool
+ """
+ self._is_nullable = is_nullable
+
+ @property
+ def length(self):
+ """
+ Gets the length of this UpdateAttributeDetails.
+ Max allowed length of the attribute value.
+
+
+ :return: The length of this UpdateAttributeDetails.
+ :rtype: int
+ """
+ return self._length
+
+ @length.setter
+ def length(self, length):
+ """
+ Sets the length of this UpdateAttributeDetails.
+ Max allowed length of the attribute value.
+
+
+ :param length: The length of this UpdateAttributeDetails.
+ :type: int
+ """
+ self._length = length
+
+ @property
+ def position(self):
+ """
+ Gets the position of this UpdateAttributeDetails.
+ Position of the attribute in the record definition.
+
+
+ :return: The position of this UpdateAttributeDetails.
+ :rtype: int
+ """
+ return self._position
+
+ @position.setter
+ def position(self, position):
+ """
+ Sets the position of this UpdateAttributeDetails.
+ Position of the attribute in the record definition.
+
+
+ :param position: The position of this UpdateAttributeDetails.
+ :type: int
+ """
+ self._position = position
+
+ @property
+ def precision(self):
+ """
+ Gets the precision of this UpdateAttributeDetails.
+ Precision of the attribute value usually applies to float data type.
+
+
+ :return: The precision of this UpdateAttributeDetails.
+ :rtype: int
+ """
+ return self._precision
+
+ @precision.setter
+ def precision(self, precision):
+ """
+ Sets the precision of this UpdateAttributeDetails.
+ Precision of the attribute value usually applies to float data type.
+
+
+ :param precision: The precision of this UpdateAttributeDetails.
+ :type: int
+ """
+ self._precision = precision
+
+ @property
+ def scale(self):
+ """
+ Gets the scale of this UpdateAttributeDetails.
+ Scale of the attribute value usually applies to float data type.
+
+
+ :return: The scale of this UpdateAttributeDetails.
+ :rtype: int
+ """
+ return self._scale
+
+ @scale.setter
+ def scale(self, scale):
+ """
+ Sets the scale of this UpdateAttributeDetails.
+ Scale of the attribute value usually applies to float data type.
+
+
+ :param scale: The scale of this UpdateAttributeDetails.
+ :type: int
+ """
+ self._scale = scale
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this UpdateAttributeDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this UpdateAttributeDetails.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this UpdateAttributeDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this UpdateAttributeDetails.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this UpdateAttributeDetails.
+ A map of maps that contains the properties which are specific to the attribute type. Each attribute type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ attributes have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an Attribute type, a query can be done on '/types?type=attribute' which returns a
+ collection of all attribute types. The appropriate attribute type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this UpdateAttributeDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this UpdateAttributeDetails.
+ A map of maps that contains the properties which are specific to the attribute type. Each attribute type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ attributes have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an Attribute type, a query can be done on '/types?type=attribute' which returns a
+ collection of all attribute types. The appropriate attribute type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this UpdateAttributeDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_catalog_details.py b/src/oci/data_catalog/models/update_catalog_details.py
new file mode 100644
index 0000000000..8b8ec8ba84
--- /dev/null
+++ b/src/oci/data_catalog/models/update_catalog_details.py
@@ -0,0 +1,135 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateCatalogDetails(object):
+ """
+ The information to be updated.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateCatalogDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateCatalogDetails.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateCatalogDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateCatalogDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._display_name = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateCatalogDetails.
+ Data catalog identifier.
+
+
+ :return: The display_name of this UpdateCatalogDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateCatalogDetails.
+ Data catalog identifier.
+
+
+ :param display_name: The display_name of this UpdateCatalogDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateCatalogDetails.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :return: The freeform_tags of this UpdateCatalogDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateCatalogDetails.
+ Simple key-value pair that is applied without any predefined name, type, or scope. Exists for cross-compatibility only.
+ Example: `{\"bar-key\": \"value\"}`
+
+
+ :param freeform_tags: The freeform_tags of this UpdateCatalogDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateCatalogDetails.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :return: The defined_tags of this UpdateCatalogDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this UpdateCatalogDetails.
+ Usage of predefined tag keys. These predefined keys are scoped to namespaces.
+ Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}`
+
+
+ :param defined_tags: The defined_tags of this UpdateCatalogDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_connection_details.py b/src/oci/data_catalog/models/update_connection_details.py
new file mode 100644
index 0000000000..0db6a21da6
--- /dev/null
+++ b/src/oci/data_catalog/models/update_connection_details.py
@@ -0,0 +1,223 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateConnectionDetails(object):
+ """
+ Properties used in connection update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateConnectionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param description:
+ The value to assign to the description property of this UpdateConnectionDetails.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateConnectionDetails.
+ :type display_name: str
+
+ :param properties:
+ The value to assign to the properties property of this UpdateConnectionDetails.
+ :type properties: dict(str, dict(str, str))
+
+ :param enc_properties:
+ The value to assign to the enc_properties property of this UpdateConnectionDetails.
+ :type enc_properties: dict(str, dict(str, str))
+
+ :param is_default:
+ The value to assign to the is_default property of this UpdateConnectionDetails.
+ :type is_default: bool
+
+ """
+ self.swagger_types = {
+ 'description': 'str',
+ 'display_name': 'str',
+ 'properties': 'dict(str, dict(str, str))',
+ 'enc_properties': 'dict(str, dict(str, str))',
+ 'is_default': 'bool'
+ }
+
+ self.attribute_map = {
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'properties': 'properties',
+ 'enc_properties': 'encProperties',
+ 'is_default': 'isDefault'
+ }
+
+ self._description = None
+ self._display_name = None
+ self._properties = None
+ self._enc_properties = None
+ self._is_default = None
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateConnectionDetails.
+ A description of the connection.
+
+
+ :return: The description of this UpdateConnectionDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateConnectionDetails.
+ A description of the connection.
+
+
+ :param description: The description of this UpdateConnectionDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateConnectionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateConnectionDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateConnectionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateConnectionDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this UpdateConnectionDetails.
+ A map of maps that contains the properties which are specific to the connection type. Each connection type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ connections have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a connection type, a query can be done on '/types?type=connection' that returns a
+ collection of all connection types. The appropriate connection type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"username\": \"user1\"}}}`
+
+
+ :return: The properties of this UpdateConnectionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this UpdateConnectionDetails.
+ A map of maps that contains the properties which are specific to the connection type. Each connection type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ connections have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a connection type, a query can be done on '/types?type=connection' that returns a
+ collection of all connection types. The appropriate connection type, which will include definitions of all
+ of it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"username\": \"user1\"}}}`
+
+
+ :param properties: The properties of this UpdateConnectionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ @property
+ def enc_properties(self):
+ """
+ Gets the enc_properties of this UpdateConnectionDetails.
+ A map of maps that contains the encrypted values for sensitive properties which are specific to the
+ connection type. Each connection type definition defines it's set of required and optional properties.
+ The map keys are category names and the values are maps of property name to property value. Every property is
+ contained inside of a category. Most connections have required properties within the \"default\" category.
+ To determine the set of optional and required properties for a connection type, a query can be done
+ on '/types?type=connection' that returns a collection of all connection types. The appropriate connection
+ type, which will include definitions of all of it's properties, can be identified from this collection.
+ Example: `{\"encProperties\": { \"default\": { \"password\": \"pwd\"}}}`
+
+
+ :return: The enc_properties of this UpdateConnectionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._enc_properties
+
+ @enc_properties.setter
+ def enc_properties(self, enc_properties):
+ """
+ Sets the enc_properties of this UpdateConnectionDetails.
+ A map of maps that contains the encrypted values for sensitive properties which are specific to the
+ connection type. Each connection type definition defines it's set of required and optional properties.
+ The map keys are category names and the values are maps of property name to property value. Every property is
+ contained inside of a category. Most connections have required properties within the \"default\" category.
+ To determine the set of optional and required properties for a connection type, a query can be done
+ on '/types?type=connection' that returns a collection of all connection types. The appropriate connection
+ type, which will include definitions of all of it's properties, can be identified from this collection.
+ Example: `{\"encProperties\": { \"default\": { \"password\": \"pwd\"}}}`
+
+
+ :param enc_properties: The enc_properties of this UpdateConnectionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._enc_properties = enc_properties
+
+ @property
+ def is_default(self):
+ """
+ Gets the is_default of this UpdateConnectionDetails.
+ Indicates whether this connection is the default connection.
+
+
+ :return: The is_default of this UpdateConnectionDetails.
+ :rtype: bool
+ """
+ return self._is_default
+
+ @is_default.setter
+ def is_default(self, is_default):
+ """
+ Sets the is_default of this UpdateConnectionDetails.
+ Indicates whether this connection is the default connection.
+
+
+ :param is_default: The is_default of this UpdateConnectionDetails.
+ :type: bool
+ """
+ self._is_default = is_default
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_data_asset_details.py b/src/oci/data_catalog/models/update_data_asset_details.py
new file mode 100644
index 0000000000..4f2591ed4a
--- /dev/null
+++ b/src/oci/data_catalog/models/update_data_asset_details.py
@@ -0,0 +1,141 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateDataAssetDetails(object):
+ """
+ Properties used in data asset update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateDataAssetDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateDataAssetDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateDataAssetDetails.
+ :type description: str
+
+ :param properties:
+ The value to assign to the properties property of this UpdateDataAssetDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateDataAssetDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateDataAssetDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateDataAssetDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateDataAssetDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateDataAssetDetails.
+ Detailed description of the data asset.
+
+
+ :return: The description of this UpdateDataAssetDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateDataAssetDetails.
+ Detailed description of the data asset.
+
+
+ :param description: The description of this UpdateDataAssetDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this UpdateDataAssetDetails.
+ A map of maps that contains the properties which are specific to the asset type. Each data asset type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data assets have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this UpdateDataAssetDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this UpdateDataAssetDetails.
+ A map of maps that contains the properties which are specific to the asset type. Each data asset type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ data assets have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this UpdateDataAssetDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_entity_details.py b/src/oci/data_catalog/models/update_entity_details.py
new file mode 100644
index 0000000000..8b4bd410fe
--- /dev/null
+++ b/src/oci/data_catalog/models/update_entity_details.py
@@ -0,0 +1,339 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateEntityDetails(object):
+ """
+ Properties used in entity update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateEntityDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateEntityDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateEntityDetails.
+ :type description: str
+
+ :param time_external:
+ The value to assign to the time_external property of this UpdateEntityDetails.
+ :type time_external: datetime
+
+ :param is_logical:
+ The value to assign to the is_logical property of this UpdateEntityDetails.
+ :type is_logical: bool
+
+ :param is_partition:
+ The value to assign to the is_partition property of this UpdateEntityDetails.
+ :type is_partition: bool
+
+ :param folder_key:
+ The value to assign to the folder_key property of this UpdateEntityDetails.
+ :type folder_key: str
+
+ :param harvest_status:
+ The value to assign to the harvest_status property of this UpdateEntityDetails.
+ :type harvest_status: str
+
+ :param last_job_key:
+ The value to assign to the last_job_key property of this UpdateEntityDetails.
+ :type last_job_key: str
+
+ :param properties:
+ The value to assign to the properties property of this UpdateEntityDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'time_external': 'datetime',
+ 'is_logical': 'bool',
+ 'is_partition': 'bool',
+ 'folder_key': 'str',
+ 'harvest_status': 'str',
+ 'last_job_key': 'str',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'time_external': 'timeExternal',
+ 'is_logical': 'isLogical',
+ 'is_partition': 'isPartition',
+ 'folder_key': 'folderKey',
+ 'harvest_status': 'harvestStatus',
+ 'last_job_key': 'lastJobKey',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._time_external = None
+ self._is_logical = None
+ self._is_partition = None
+ self._folder_key = None
+ self._harvest_status = None
+ self._last_job_key = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateEntityDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateEntityDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateEntityDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateEntityDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateEntityDetails.
+ Detailed description of a data entity.
+
+
+ :return: The description of this UpdateEntityDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateEntityDetails.
+ Detailed description of a data entity.
+
+
+ :param description: The description of this UpdateEntityDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this UpdateEntityDetails.
+ Last modified timestamp of the object in the external system.
+
+
+ :return: The time_external of this UpdateEntityDetails.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this UpdateEntityDetails.
+ Last modified timestamp of the object in the external system.
+
+
+ :param time_external: The time_external of this UpdateEntityDetails.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def is_logical(self):
+ """
+ Gets the is_logical of this UpdateEntityDetails.
+ Property to indicate if the object is a physical materialized object or virtual. For example, View.
+
+
+ :return: The is_logical of this UpdateEntityDetails.
+ :rtype: bool
+ """
+ return self._is_logical
+
+ @is_logical.setter
+ def is_logical(self, is_logical):
+ """
+ Sets the is_logical of this UpdateEntityDetails.
+ Property to indicate if the object is a physical materialized object or virtual. For example, View.
+
+
+ :param is_logical: The is_logical of this UpdateEntityDetails.
+ :type: bool
+ """
+ self._is_logical = is_logical
+
+ @property
+ def is_partition(self):
+ """
+ Gets the is_partition of this UpdateEntityDetails.
+ Property to indicate if the object is a sub object of a parent physical object.
+
+
+ :return: The is_partition of this UpdateEntityDetails.
+ :rtype: bool
+ """
+ return self._is_partition
+
+ @is_partition.setter
+ def is_partition(self, is_partition):
+ """
+ Sets the is_partition of this UpdateEntityDetails.
+ Property to indicate if the object is a sub object of a parent physical object.
+
+
+ :param is_partition: The is_partition of this UpdateEntityDetails.
+ :type: bool
+ """
+ self._is_partition = is_partition
+
+ @property
+ def folder_key(self):
+ """
+ Gets the folder_key of this UpdateEntityDetails.
+ Key of the associated folder.
+
+
+ :return: The folder_key of this UpdateEntityDetails.
+ :rtype: str
+ """
+ return self._folder_key
+
+ @folder_key.setter
+ def folder_key(self, folder_key):
+ """
+ Sets the folder_key of this UpdateEntityDetails.
+ Key of the associated folder.
+
+
+ :param folder_key: The folder_key of this UpdateEntityDetails.
+ :type: str
+ """
+ self._folder_key = folder_key
+
+ @property
+ def harvest_status(self):
+ """
+ Gets the harvest_status of this UpdateEntityDetails.
+ Status of the object as updated by the harvest process. When an entity object is created, it's harvest status
+ will indicate if the entity's metadata has been fully harvested or not. The harvest process can perform
+ shallow harvesting to allow users to browse the metadata and can on-demand deep harvest on any object
+ This requires a harvest status indicator for catalog objects.
+
+
+ :return: The harvest_status of this UpdateEntityDetails.
+ :rtype: str
+ """
+ return self._harvest_status
+
+ @harvest_status.setter
+ def harvest_status(self, harvest_status):
+ """
+ Sets the harvest_status of this UpdateEntityDetails.
+ Status of the object as updated by the harvest process. When an entity object is created, it's harvest status
+ will indicate if the entity's metadata has been fully harvested or not. The harvest process can perform
+ shallow harvesting to allow users to browse the metadata and can on-demand deep harvest on any object
+ This requires a harvest status indicator for catalog objects.
+
+
+ :param harvest_status: The harvest_status of this UpdateEntityDetails.
+ :type: str
+ """
+ self._harvest_status = harvest_status
+
+ @property
+ def last_job_key(self):
+ """
+ Gets the last_job_key of this UpdateEntityDetails.
+ Key of the last harvest process to update this object.
+
+
+ :return: The last_job_key of this UpdateEntityDetails.
+ :rtype: str
+ """
+ return self._last_job_key
+
+ @last_job_key.setter
+ def last_job_key(self, last_job_key):
+ """
+ Sets the last_job_key of this UpdateEntityDetails.
+ Key of the last harvest process to update this object.
+
+
+ :param last_job_key: The last_job_key of this UpdateEntityDetails.
+ :type: str
+ """
+ self._last_job_key = last_job_key
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this UpdateEntityDetails.
+ A map of maps that contains the properties which are specific to the entity type. Each entity type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ entities have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an entity type, a query can be done on '/types?type=dataEntity' that returns a
+ collection of all entity types. The appropriate entity type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this UpdateEntityDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this UpdateEntityDetails.
+ A map of maps that contains the properties which are specific to the entity type. Each entity type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ entities have required properties within the \"default\" category. To determine the set of required and
+ optional properties for an entity type, a query can be done on '/types?type=dataEntity' that returns a
+ collection of all entity types. The appropriate entity type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this UpdateEntityDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_folder_details.py b/src/oci/data_catalog/models/update_folder_details.py
new file mode 100644
index 0000000000..549c56adda
--- /dev/null
+++ b/src/oci/data_catalog/models/update_folder_details.py
@@ -0,0 +1,271 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateFolderDetails(object):
+ """
+ Properties used in folder update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateFolderDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateFolderDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateFolderDetails.
+ :type description: str
+
+ :param parent_folder_key:
+ The value to assign to the parent_folder_key property of this UpdateFolderDetails.
+ :type parent_folder_key: str
+
+ :param properties:
+ The value to assign to the properties property of this UpdateFolderDetails.
+ :type properties: dict(str, dict(str, str))
+
+ :param time_external:
+ The value to assign to the time_external property of this UpdateFolderDetails.
+ :type time_external: datetime
+
+ :param harvest_status:
+ The value to assign to the harvest_status property of this UpdateFolderDetails.
+ :type harvest_status: str
+
+ :param last_job_key:
+ The value to assign to the last_job_key property of this UpdateFolderDetails.
+ :type last_job_key: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'parent_folder_key': 'str',
+ 'properties': 'dict(str, dict(str, str))',
+ 'time_external': 'datetime',
+ 'harvest_status': 'str',
+ 'last_job_key': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'parent_folder_key': 'parentFolderKey',
+ 'properties': 'properties',
+ 'time_external': 'timeExternal',
+ 'harvest_status': 'harvestStatus',
+ 'last_job_key': 'lastJobKey'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._parent_folder_key = None
+ self._properties = None
+ self._time_external = None
+ self._harvest_status = None
+ self._last_job_key = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateFolderDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateFolderDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateFolderDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateFolderDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateFolderDetails.
+ Detailed description of a folder.
+
+
+ :return: The description of this UpdateFolderDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateFolderDetails.
+ Detailed description of a folder.
+
+
+ :param description: The description of this UpdateFolderDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def parent_folder_key(self):
+ """
+ Gets the parent_folder_key of this UpdateFolderDetails.
+ The key of the containing folder.
+
+
+ :return: The parent_folder_key of this UpdateFolderDetails.
+ :rtype: str
+ """
+ return self._parent_folder_key
+
+ @parent_folder_key.setter
+ def parent_folder_key(self, parent_folder_key):
+ """
+ Sets the parent_folder_key of this UpdateFolderDetails.
+ The key of the containing folder.
+
+
+ :param parent_folder_key: The parent_folder_key of this UpdateFolderDetails.
+ :type: str
+ """
+ self._parent_folder_key = parent_folder_key
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this UpdateFolderDetails.
+ A map of maps that contains the properties which are specific to the folder type. Each folder type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ folders have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a folder type, a query can be done on '/types?type=folder' that returns a
+ collection of all folder types. The appropriate folder type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :return: The properties of this UpdateFolderDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this UpdateFolderDetails.
+ A map of maps that contains the properties which are specific to the folder type. Each folder type
+ definition defines it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ folders have required properties within the \"default\" category. To determine the set of optional and
+ required properties for a folder type, a query can be done on '/types?type=folder' that returns a
+ collection of all folder types. The appropriate folder type, which includes definitions of all of
+ it's properties, can be identified from this collection.
+ Example: `{\"properties\": { \"default\": { \"key1\": \"value1\"}}}`
+
+
+ :param properties: The properties of this UpdateFolderDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ @property
+ def time_external(self):
+ """
+ Gets the time_external of this UpdateFolderDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :return: The time_external of this UpdateFolderDetails.
+ :rtype: datetime
+ """
+ return self._time_external
+
+ @time_external.setter
+ def time_external(self, time_external):
+ """
+ Sets the time_external of this UpdateFolderDetails.
+ Last modified timestamp of this object in the external system.
+
+
+ :param time_external: The time_external of this UpdateFolderDetails.
+ :type: datetime
+ """
+ self._time_external = time_external
+
+ @property
+ def harvest_status(self):
+ """
+ Gets the harvest_status of this UpdateFolderDetails.
+ Harvest status of the folder.
+
+
+ :return: The harvest_status of this UpdateFolderDetails.
+ :rtype: str
+ """
+ return self._harvest_status
+
+ @harvest_status.setter
+ def harvest_status(self, harvest_status):
+ """
+ Sets the harvest_status of this UpdateFolderDetails.
+ Harvest status of the folder.
+
+
+ :param harvest_status: The harvest_status of this UpdateFolderDetails.
+ :type: str
+ """
+ self._harvest_status = harvest_status
+
+ @property
+ def last_job_key(self):
+ """
+ Gets the last_job_key of this UpdateFolderDetails.
+ The key of the last harvest process to update the metadata of this object.
+
+
+ :return: The last_job_key of this UpdateFolderDetails.
+ :rtype: str
+ """
+ return self._last_job_key
+
+ @last_job_key.setter
+ def last_job_key(self, last_job_key):
+ """
+ Sets the last_job_key of this UpdateFolderDetails.
+ The key of the last harvest process to update the metadata of this object.
+
+
+ :param last_job_key: The last_job_key of this UpdateFolderDetails.
+ :type: str
+ """
+ self._last_job_key = last_job_key
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_glossary_details.py b/src/oci/data_catalog/models/update_glossary_details.py
new file mode 100644
index 0000000000..d4d70fd6cc
--- /dev/null
+++ b/src/oci/data_catalog/models/update_glossary_details.py
@@ -0,0 +1,164 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateGlossaryDetails(object):
+ """
+ Properties used in glossary update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateGlossaryDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateGlossaryDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateGlossaryDetails.
+ :type description: str
+
+ :param owner:
+ The value to assign to the owner property of this UpdateGlossaryDetails.
+ :type owner: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this UpdateGlossaryDetails.
+ :type workflow_status: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'owner': 'str',
+ 'workflow_status': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'owner': 'owner',
+ 'workflow_status': 'workflowStatus'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._owner = None
+ self._workflow_status = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateGlossaryDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateGlossaryDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateGlossaryDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateGlossaryDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateGlossaryDetails.
+ Detailed description of the glossary.
+
+
+ :return: The description of this UpdateGlossaryDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateGlossaryDetails.
+ Detailed description of the glossary.
+
+
+ :param description: The description of this UpdateGlossaryDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def owner(self):
+ """
+ Gets the owner of this UpdateGlossaryDetails.
+ OCID of the user who is the owner of the glossary.
+
+
+ :return: The owner of this UpdateGlossaryDetails.
+ :rtype: str
+ """
+ return self._owner
+
+ @owner.setter
+ def owner(self, owner):
+ """
+ Sets the owner of this UpdateGlossaryDetails.
+ OCID of the user who is the owner of the glossary.
+
+
+ :param owner: The owner of this UpdateGlossaryDetails.
+ :type: str
+ """
+ self._owner = owner
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this UpdateGlossaryDetails.
+ Status of the approval process workflow for this business glossary.
+
+
+ :return: The workflow_status of this UpdateGlossaryDetails.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this UpdateGlossaryDetails.
+ Status of the approval process workflow for this business glossary.
+
+
+ :param workflow_status: The workflow_status of this UpdateGlossaryDetails.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_job_definition_details.py b/src/oci/data_catalog/models/update_job_definition_details.py
new file mode 100644
index 0000000000..44814d8112
--- /dev/null
+++ b/src/oci/data_catalog/models/update_job_definition_details.py
@@ -0,0 +1,296 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateJobDefinitionDetails(object):
+ """
+ Update information for a job definition resource.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateJobDefinitionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateJobDefinitionDetails.
+ :type display_name: str
+
+ :param is_incremental:
+ The value to assign to the is_incremental property of this UpdateJobDefinitionDetails.
+ :type is_incremental: bool
+
+ :param data_asset_key:
+ The value to assign to the data_asset_key property of this UpdateJobDefinitionDetails.
+ :type data_asset_key: str
+
+ :param description:
+ The value to assign to the description property of this UpdateJobDefinitionDetails.
+ :type description: str
+
+ :param connection_key:
+ The value to assign to the connection_key property of this UpdateJobDefinitionDetails.
+ :type connection_key: str
+
+ :param is_sample_data_extracted:
+ The value to assign to the is_sample_data_extracted property of this UpdateJobDefinitionDetails.
+ :type is_sample_data_extracted: bool
+
+ :param sample_data_size_in_mbs:
+ The value to assign to the sample_data_size_in_mbs property of this UpdateJobDefinitionDetails.
+ :type sample_data_size_in_mbs: int
+
+ :param properties:
+ The value to assign to the properties property of this UpdateJobDefinitionDetails.
+ :type properties: dict(str, dict(str, str))
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'is_incremental': 'bool',
+ 'data_asset_key': 'str',
+ 'description': 'str',
+ 'connection_key': 'str',
+ 'is_sample_data_extracted': 'bool',
+ 'sample_data_size_in_mbs': 'int',
+ 'properties': 'dict(str, dict(str, str))'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'is_incremental': 'isIncremental',
+ 'data_asset_key': 'dataAssetKey',
+ 'description': 'description',
+ 'connection_key': 'connectionKey',
+ 'is_sample_data_extracted': 'isSampleDataExtracted',
+ 'sample_data_size_in_mbs': 'sampleDataSizeInMBs',
+ 'properties': 'properties'
+ }
+
+ self._display_name = None
+ self._is_incremental = None
+ self._data_asset_key = None
+ self._description = None
+ self._connection_key = None
+ self._is_sample_data_extracted = None
+ self._sample_data_size_in_mbs = None
+ self._properties = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateJobDefinitionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateJobDefinitionDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateJobDefinitionDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def is_incremental(self):
+ """
+ Gets the is_incremental of this UpdateJobDefinitionDetails.
+ Specifies if the job definition is incremental or full.
+
+
+ :return: The is_incremental of this UpdateJobDefinitionDetails.
+ :rtype: bool
+ """
+ return self._is_incremental
+
+ @is_incremental.setter
+ def is_incremental(self, is_incremental):
+ """
+ Sets the is_incremental of this UpdateJobDefinitionDetails.
+ Specifies if the job definition is incremental or full.
+
+
+ :param is_incremental: The is_incremental of this UpdateJobDefinitionDetails.
+ :type: bool
+ """
+ self._is_incremental = is_incremental
+
+ @property
+ def data_asset_key(self):
+ """
+ Gets the data_asset_key of this UpdateJobDefinitionDetails.
+ The key of the data asset for which the job is defined.
+
+
+ :return: The data_asset_key of this UpdateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._data_asset_key
+
+ @data_asset_key.setter
+ def data_asset_key(self, data_asset_key):
+ """
+ Sets the data_asset_key of this UpdateJobDefinitionDetails.
+ The key of the data asset for which the job is defined.
+
+
+ :param data_asset_key: The data_asset_key of this UpdateJobDefinitionDetails.
+ :type: str
+ """
+ self._data_asset_key = data_asset_key
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateJobDefinitionDetails.
+ Detailed description of the job definition.
+
+
+ :return: The description of this UpdateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateJobDefinitionDetails.
+ Detailed description of the job definition.
+
+
+ :param description: The description of this UpdateJobDefinitionDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def connection_key(self):
+ """
+ Gets the connection_key of this UpdateJobDefinitionDetails.
+ The key of the connection resource to be used for harvest, sampling, profiling jobs.
+
+
+ :return: The connection_key of this UpdateJobDefinitionDetails.
+ :rtype: str
+ """
+ return self._connection_key
+
+ @connection_key.setter
+ def connection_key(self, connection_key):
+ """
+ Sets the connection_key of this UpdateJobDefinitionDetails.
+ The key of the connection resource to be used for harvest, sampling, profiling jobs.
+
+
+ :param connection_key: The connection_key of this UpdateJobDefinitionDetails.
+ :type: str
+ """
+ self._connection_key = connection_key
+
+ @property
+ def is_sample_data_extracted(self):
+ """
+ Gets the is_sample_data_extracted of this UpdateJobDefinitionDetails.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :return: The is_sample_data_extracted of this UpdateJobDefinitionDetails.
+ :rtype: bool
+ """
+ return self._is_sample_data_extracted
+
+ @is_sample_data_extracted.setter
+ def is_sample_data_extracted(self, is_sample_data_extracted):
+ """
+ Sets the is_sample_data_extracted of this UpdateJobDefinitionDetails.
+ Specify if sample data to be extracted as part of this harvest.
+
+
+ :param is_sample_data_extracted: The is_sample_data_extracted of this UpdateJobDefinitionDetails.
+ :type: bool
+ """
+ self._is_sample_data_extracted = is_sample_data_extracted
+
+ @property
+ def sample_data_size_in_mbs(self):
+ """
+ Gets the sample_data_size_in_mbs of this UpdateJobDefinitionDetails.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :return: The sample_data_size_in_mbs of this UpdateJobDefinitionDetails.
+ :rtype: int
+ """
+ return self._sample_data_size_in_mbs
+
+ @sample_data_size_in_mbs.setter
+ def sample_data_size_in_mbs(self, sample_data_size_in_mbs):
+ """
+ Sets the sample_data_size_in_mbs of this UpdateJobDefinitionDetails.
+ Specify the sample data size in MB, specified as number of rows, for this metadata harvest.
+
+
+ :param sample_data_size_in_mbs: The sample_data_size_in_mbs of this UpdateJobDefinitionDetails.
+ :type: int
+ """
+ self._sample_data_size_in_mbs = sample_data_size_in_mbs
+
+ @property
+ def properties(self):
+ """
+ Gets the properties of this UpdateJobDefinitionDetails.
+ A map of maps that contains the properties which are specific to the job type. Each job type
+ definition may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job definitions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :return: The properties of this UpdateJobDefinitionDetails.
+ :rtype: dict(str, dict(str, str))
+ """
+ return self._properties
+
+ @properties.setter
+ def properties(self, properties):
+ """
+ Sets the properties of this UpdateJobDefinitionDetails.
+ A map of maps that contains the properties which are specific to the job type. Each job type
+ definition may define it's set of required and optional properties. The map keys are category names and the
+ values are maps of property name to property value. Every property is contained inside of a category. Most
+ job definitions have required properties within the \"default\" category.
+ Example: `{\"properties\": { \"default\": { \"host\": \"host1\", \"port\": \"1521\", \"database\": \"orcl\"}}}`
+
+
+ :param properties: The properties of this UpdateJobDefinitionDetails.
+ :type: dict(str, dict(str, str))
+ """
+ self._properties = properties
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_job_details.py b/src/oci/data_catalog/models/update_job_details.py
new file mode 100644
index 0000000000..32db6efd55
--- /dev/null
+++ b/src/oci/data_catalog/models/update_job_details.py
@@ -0,0 +1,238 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateJobDetails(object):
+ """
+ Job properties that can be updated.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateJobDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateJobDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateJobDetails.
+ :type description: str
+
+ :param schedule_cron_expression:
+ The value to assign to the schedule_cron_expression property of this UpdateJobDetails.
+ :type schedule_cron_expression: str
+
+ :param time_schedule_begin:
+ The value to assign to the time_schedule_begin property of this UpdateJobDetails.
+ :type time_schedule_begin: datetime
+
+ :param time_schedule_end:
+ The value to assign to the time_schedule_end property of this UpdateJobDetails.
+ :type time_schedule_end: datetime
+
+ :param connection_key:
+ The value to assign to the connection_key property of this UpdateJobDetails.
+ :type connection_key: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'schedule_cron_expression': 'str',
+ 'time_schedule_begin': 'datetime',
+ 'time_schedule_end': 'datetime',
+ 'connection_key': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'schedule_cron_expression': 'scheduleCronExpression',
+ 'time_schedule_begin': 'timeScheduleBegin',
+ 'time_schedule_end': 'timeScheduleEnd',
+ 'connection_key': 'connectionKey'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._schedule_cron_expression = None
+ self._time_schedule_begin = None
+ self._time_schedule_end = None
+ self._connection_key = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateJobDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateJobDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateJobDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateJobDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateJobDetails.
+ Detailed description of the job.
+
+
+ :return: The description of this UpdateJobDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateJobDetails.
+ Detailed description of the job.
+
+
+ :param description: The description of this UpdateJobDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def schedule_cron_expression(self):
+ """
+ Gets the schedule_cron_expression of this UpdateJobDetails.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :return: The schedule_cron_expression of this UpdateJobDetails.
+ :rtype: str
+ """
+ return self._schedule_cron_expression
+
+ @schedule_cron_expression.setter
+ def schedule_cron_expression(self, schedule_cron_expression):
+ """
+ Sets the schedule_cron_expression of this UpdateJobDetails.
+ Schedule specified in the cron expression format that has seven fields for second, minute, hour, day-of-month, month, day-of-week, year.
+ It can also include special characters like * for all and ? for any. There are also pre-defined schedules that can be specified using
+ special strings. For example, @hourly will run the job every hour.
+
+
+ :param schedule_cron_expression: The schedule_cron_expression of this UpdateJobDetails.
+ :type: str
+ """
+ self._schedule_cron_expression = schedule_cron_expression
+
+ @property
+ def time_schedule_begin(self):
+ """
+ Gets the time_schedule_begin of this UpdateJobDetails.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_begin of this UpdateJobDetails.
+ :rtype: datetime
+ """
+ return self._time_schedule_begin
+
+ @time_schedule_begin.setter
+ def time_schedule_begin(self, time_schedule_begin):
+ """
+ Sets the time_schedule_begin of this UpdateJobDetails.
+ Date that the schedule should be operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_begin: The time_schedule_begin of this UpdateJobDetails.
+ :type: datetime
+ """
+ self._time_schedule_begin = time_schedule_begin
+
+ @property
+ def time_schedule_end(self):
+ """
+ Gets the time_schedule_end of this UpdateJobDetails.
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_schedule_end of this UpdateJobDetails.
+ :rtype: datetime
+ """
+ return self._time_schedule_end
+
+ @time_schedule_end.setter
+ def time_schedule_end(self, time_schedule_end):
+ """
+ Sets the time_schedule_end of this UpdateJobDetails.
+ Date that the schedule should end from being operational. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_schedule_end: The time_schedule_end of this UpdateJobDetails.
+ :type: datetime
+ """
+ self._time_schedule_end = time_schedule_end
+
+ @property
+ def connection_key(self):
+ """
+ Gets the connection_key of this UpdateJobDetails.
+ The key of the connection resource that is used for the harvest by this job.
+
+
+ :return: The connection_key of this UpdateJobDetails.
+ :rtype: str
+ """
+ return self._connection_key
+
+ @connection_key.setter
+ def connection_key(self, connection_key):
+ """
+ Sets the connection_key of this UpdateJobDetails.
+ The key of the connection resource that is used for the harvest by this job.
+
+
+ :param connection_key: The connection_key of this UpdateJobDetails.
+ :type: str
+ """
+ self._connection_key = connection_key
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_term_details.py b/src/oci/data_catalog/models/update_term_details.py
new file mode 100644
index 0000000000..b3115cae9e
--- /dev/null
+++ b/src/oci/data_catalog/models/update_term_details.py
@@ -0,0 +1,195 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateTermDetails(object):
+ """
+ Properties used in term update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateTermDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateTermDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateTermDetails.
+ :type description: str
+
+ :param parent_term_key:
+ The value to assign to the parent_term_key property of this UpdateTermDetails.
+ :type parent_term_key: str
+
+ :param owner:
+ The value to assign to the owner property of this UpdateTermDetails.
+ :type owner: str
+
+ :param workflow_status:
+ The value to assign to the workflow_status property of this UpdateTermDetails.
+ :type workflow_status: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str',
+ 'parent_term_key': 'str',
+ 'owner': 'str',
+ 'workflow_status': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description',
+ 'parent_term_key': 'parentTermKey',
+ 'owner': 'owner',
+ 'workflow_status': 'workflowStatus'
+ }
+
+ self._display_name = None
+ self._description = None
+ self._parent_term_key = None
+ self._owner = None
+ self._workflow_status = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateTermDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateTermDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateTermDetails.
+ A user-friendly display name. Does not have to be unique, and it's changeable.
+ Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateTermDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateTermDetails.
+ Detailed description of the term.
+
+
+ :return: The description of this UpdateTermDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateTermDetails.
+ Detailed description of the term.
+
+
+ :param description: The description of this UpdateTermDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def parent_term_key(self):
+ """
+ Gets the parent_term_key of this UpdateTermDetails.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :return: The parent_term_key of this UpdateTermDetails.
+ :rtype: str
+ """
+ return self._parent_term_key
+
+ @parent_term_key.setter
+ def parent_term_key(self, parent_term_key):
+ """
+ Sets the parent_term_key of this UpdateTermDetails.
+ This terms parent term key. Will be null if the term has no parent term.
+
+
+ :param parent_term_key: The parent_term_key of this UpdateTermDetails.
+ :type: str
+ """
+ self._parent_term_key = parent_term_key
+
+ @property
+ def owner(self):
+ """
+ Gets the owner of this UpdateTermDetails.
+ OCID of the user who is the owner of this business terminology.
+
+
+ :return: The owner of this UpdateTermDetails.
+ :rtype: str
+ """
+ return self._owner
+
+ @owner.setter
+ def owner(self, owner):
+ """
+ Sets the owner of this UpdateTermDetails.
+ OCID of the user who is the owner of this business terminology.
+
+
+ :param owner: The owner of this UpdateTermDetails.
+ :type: str
+ """
+ self._owner = owner
+
+ @property
+ def workflow_status(self):
+ """
+ Gets the workflow_status of this UpdateTermDetails.
+ Status of the approval process workflow for this business term in the glossary
+
+
+ :return: The workflow_status of this UpdateTermDetails.
+ :rtype: str
+ """
+ return self._workflow_status
+
+ @workflow_status.setter
+ def workflow_status(self, workflow_status):
+ """
+ Sets the workflow_status of this UpdateTermDetails.
+ Status of the approval process workflow for this business term in the glossary
+
+
+ :param workflow_status: The workflow_status of this UpdateTermDetails.
+ :type: str
+ """
+ self._workflow_status = workflow_status
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/update_term_relationship_details.py b/src/oci/data_catalog/models/update_term_relationship_details.py
new file mode 100644
index 0000000000..983e675715
--- /dev/null
+++ b/src/oci/data_catalog/models/update_term_relationship_details.py
@@ -0,0 +1,102 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateTermRelationshipDetails(object):
+ """
+ Properties used in term relationship update operations.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateTermRelationshipDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateTermRelationshipDetails.
+ :type display_name: str
+
+ :param description:
+ The value to assign to the description property of this UpdateTermRelationshipDetails.
+ :type description: str
+
+ """
+ self.swagger_types = {
+ 'display_name': 'str',
+ 'description': 'str'
+ }
+
+ self.attribute_map = {
+ 'display_name': 'displayName',
+ 'description': 'description'
+ }
+
+ self._display_name = None
+ self._description = None
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateTermRelationshipDetails.
+ A user-friendly display name. Is changeable. The combination of 'displayName' and 'parentTermKey'
+ must be unique. Avoid entering confidential information. This is the same as 'relationshipType' for 'termRelationship'.
+
+
+ :return: The display_name of this UpdateTermRelationshipDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateTermRelationshipDetails.
+ A user-friendly display name. Is changeable. The combination of 'displayName' and 'parentTermKey'
+ must be unique. Avoid entering confidential information. This is the same as 'relationshipType' for 'termRelationship'.
+
+
+ :param display_name: The display_name of this UpdateTermRelationshipDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateTermRelationshipDetails.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :return: The description of this UpdateTermRelationshipDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateTermRelationshipDetails.
+ Detailed description of the term relationship usually defined at the time of creation.
+
+
+ :param description: The description of this UpdateTermRelationshipDetails.
+ :type: str
+ """
+ self._description = description
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/upload_credentials_details.py b/src/oci/data_catalog/models/upload_credentials_details.py
new file mode 100644
index 0000000000..e12e3dea1a
--- /dev/null
+++ b/src/oci/data_catalog/models/upload_credentials_details.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UploadCredentialsDetails(object):
+ """
+ Upload credential file and connection metadata.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UploadCredentialsDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param connection_detail:
+ The value to assign to the connection_detail property of this UploadCredentialsDetails.
+ :type connection_detail: UpdateConnectionDetails
+
+ :param credential_payload:
+ The value to assign to the credential_payload property of this UploadCredentialsDetails.
+ :type credential_payload: str
+
+ """
+ self.swagger_types = {
+ 'connection_detail': 'UpdateConnectionDetails',
+ 'credential_payload': 'str'
+ }
+
+ self.attribute_map = {
+ 'connection_detail': 'connectionDetail',
+ 'credential_payload': 'credentialPayload'
+ }
+
+ self._connection_detail = None
+ self._credential_payload = None
+
+ @property
+ def connection_detail(self):
+ """
+ Gets the connection_detail of this UploadCredentialsDetails.
+
+ :return: The connection_detail of this UploadCredentialsDetails.
+ :rtype: UpdateConnectionDetails
+ """
+ return self._connection_detail
+
+ @connection_detail.setter
+ def connection_detail(self, connection_detail):
+ """
+ Sets the connection_detail of this UploadCredentialsDetails.
+
+ :param connection_detail: The connection_detail of this UploadCredentialsDetails.
+ :type: UpdateConnectionDetails
+ """
+ self._connection_detail = connection_detail
+
+ @property
+ def credential_payload(self):
+ """
+ **[Required]** Gets the credential_payload of this UploadCredentialsDetails.
+ Information used in updating connection credentials.
+
+
+ :return: The credential_payload of this UploadCredentialsDetails.
+ :rtype: str
+ """
+ return self._credential_payload
+
+ @credential_payload.setter
+ def credential_payload(self, credential_payload):
+ """
+ Sets the credential_payload of this UploadCredentialsDetails.
+ Information used in updating connection credentials.
+
+
+ :param credential_payload: The credential_payload of this UploadCredentialsDetails.
+ :type: str
+ """
+ self._credential_payload = credential_payload
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/validate_connection_details.py b/src/oci/data_catalog/models/validate_connection_details.py
new file mode 100644
index 0000000000..90b7050463
--- /dev/null
+++ b/src/oci/data_catalog/models/validate_connection_details.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ValidateConnectionDetails(object):
+ """
+ Validate connection from the connection metadata or oracle wallet file.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ValidateConnectionDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param connection_detail:
+ The value to assign to the connection_detail property of this ValidateConnectionDetails.
+ :type connection_detail: CreateConnectionDetails
+
+ :param connection_payload:
+ The value to assign to the connection_payload property of this ValidateConnectionDetails.
+ :type connection_payload: str
+
+ """
+ self.swagger_types = {
+ 'connection_detail': 'CreateConnectionDetails',
+ 'connection_payload': 'str'
+ }
+
+ self.attribute_map = {
+ 'connection_detail': 'connectionDetail',
+ 'connection_payload': 'connectionPayload'
+ }
+
+ self._connection_detail = None
+ self._connection_payload = None
+
+ @property
+ def connection_detail(self):
+ """
+ Gets the connection_detail of this ValidateConnectionDetails.
+
+ :return: The connection_detail of this ValidateConnectionDetails.
+ :rtype: CreateConnectionDetails
+ """
+ return self._connection_detail
+
+ @connection_detail.setter
+ def connection_detail(self, connection_detail):
+ """
+ Sets the connection_detail of this ValidateConnectionDetails.
+
+ :param connection_detail: The connection_detail of this ValidateConnectionDetails.
+ :type: CreateConnectionDetails
+ """
+ self._connection_detail = connection_detail
+
+ @property
+ def connection_payload(self):
+ """
+ Gets the connection_payload of this ValidateConnectionDetails.
+ The information used to validate the connection.
+
+
+ :return: The connection_payload of this ValidateConnectionDetails.
+ :rtype: str
+ """
+ return self._connection_payload
+
+ @connection_payload.setter
+ def connection_payload(self, connection_payload):
+ """
+ Sets the connection_payload of this ValidateConnectionDetails.
+ The information used to validate the connection.
+
+
+ :param connection_payload: The connection_payload of this ValidateConnectionDetails.
+ :type: str
+ """
+ self._connection_payload = connection_payload
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/validate_connection_result.py b/src/oci/data_catalog/models/validate_connection_result.py
new file mode 100644
index 0000000000..0b0ad60d87
--- /dev/null
+++ b/src/oci/data_catalog/models/validate_connection_result.py
@@ -0,0 +1,100 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ValidateConnectionResult(object):
+ """
+ Details regarding the validation of a connection resource.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ValidateConnectionResult object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param message:
+ The value to assign to the message property of this ValidateConnectionResult.
+ :type message: str
+
+ :param status:
+ The value to assign to the status property of this ValidateConnectionResult.
+ :type status: str
+
+ """
+ self.swagger_types = {
+ 'message': 'str',
+ 'status': 'str'
+ }
+
+ self.attribute_map = {
+ 'message': 'message',
+ 'status': 'status'
+ }
+
+ self._message = None
+ self._status = None
+
+ @property
+ def message(self):
+ """
+ Gets the message of this ValidateConnectionResult.
+ The message from the connection validation.
+
+
+ :return: The message of this ValidateConnectionResult.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this ValidateConnectionResult.
+ The message from the connection validation.
+
+
+ :param message: The message of this ValidateConnectionResult.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this ValidateConnectionResult.
+ The status returned from the connection validation.
+
+
+ :return: The status of this ValidateConnectionResult.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this ValidateConnectionResult.
+ The status returned from the connection validation.
+
+
+ :param status: The status of this ValidateConnectionResult.
+ :type: str
+ """
+ self._status = status
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/work_request.py b/src/oci/data_catalog/models/work_request.py
new file mode 100644
index 0000000000..31be71a4ad
--- /dev/null
+++ b/src/oci/data_catalog/models/work_request.py
@@ -0,0 +1,395 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequest(object):
+ """
+ A description of workrequest status.
+ """
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "CREATE_CATALOG"
+ OPERATION_TYPE_CREATE_CATALOG = "CREATE_CATALOG"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "UPDATE_CATALOG"
+ OPERATION_TYPE_UPDATE_CATALOG = "UPDATE_CATALOG"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "DELETE_CATALOG"
+ OPERATION_TYPE_DELETE_CATALOG = "DELETE_CATALOG"
+
+ #: A constant which can be used with the operation_type property of a WorkRequest.
+ #: This constant has a value of "MOVE_CATALOG"
+ OPERATION_TYPE_MOVE_CATALOG = "MOVE_CATALOG"
+
+ #: A constant which can be used with the status property of a WorkRequest.
+ #: This constant has a value of "ACCEPTED"
+ STATUS_ACCEPTED = "ACCEPTED"
+
+ #: A constant which can be used with the status property of a WorkRequest.
+ #: This constant has a value of "IN_PROGRESS"
+ STATUS_IN_PROGRESS = "IN_PROGRESS"
+
+ #: A constant which can be used with the status property of a WorkRequest.
+ #: This constant has a value of "FAILED"
+ STATUS_FAILED = "FAILED"
+
+ #: A constant which can be used with the status property of a WorkRequest.
+ #: This constant has a value of "SUCCEEDED"
+ STATUS_SUCCEEDED = "SUCCEEDED"
+
+ #: A constant which can be used with the status property of a WorkRequest.
+ #: This constant has a value of "CANCELING"
+ STATUS_CANCELING = "CANCELING"
+
+ #: A constant which can be used with the status property of a WorkRequest.
+ #: This constant has a value of "CANCELED"
+ STATUS_CANCELED = "CANCELED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequest object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param operation_type:
+ The value to assign to the operation_type property of this WorkRequest.
+ Allowed values for this property are: "CREATE_CATALOG", "UPDATE_CATALOG", "DELETE_CATALOG", "MOVE_CATALOG", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type operation_type: str
+
+ :param status:
+ The value to assign to the status property of this WorkRequest.
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type status: str
+
+ :param id:
+ The value to assign to the id property of this WorkRequest.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this WorkRequest.
+ :type compartment_id: str
+
+ :param resources:
+ The value to assign to the resources property of this WorkRequest.
+ :type resources: list[WorkRequestResource]
+
+ :param percent_complete:
+ The value to assign to the percent_complete property of this WorkRequest.
+ :type percent_complete: float
+
+ :param time_accepted:
+ The value to assign to the time_accepted property of this WorkRequest.
+ :type time_accepted: datetime
+
+ :param time_started:
+ The value to assign to the time_started property of this WorkRequest.
+ :type time_started: datetime
+
+ :param time_finished:
+ The value to assign to the time_finished property of this WorkRequest.
+ :type time_finished: datetime
+
+ """
+ self.swagger_types = {
+ 'operation_type': 'str',
+ 'status': 'str',
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'resources': 'list[WorkRequestResource]',
+ 'percent_complete': 'float',
+ 'time_accepted': 'datetime',
+ 'time_started': 'datetime',
+ 'time_finished': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'operation_type': 'operationType',
+ 'status': 'status',
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'resources': 'resources',
+ 'percent_complete': 'percentComplete',
+ 'time_accepted': 'timeAccepted',
+ 'time_started': 'timeStarted',
+ 'time_finished': 'timeFinished'
+ }
+
+ self._operation_type = None
+ self._status = None
+ self._id = None
+ self._compartment_id = None
+ self._resources = None
+ self._percent_complete = None
+ self._time_accepted = None
+ self._time_started = None
+ self._time_finished = None
+
+ @property
+ def operation_type(self):
+ """
+ **[Required]** Gets the operation_type of this WorkRequest.
+ Type of the work request.
+
+ Allowed values for this property are: "CREATE_CATALOG", "UPDATE_CATALOG", "DELETE_CATALOG", "MOVE_CATALOG", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The operation_type of this WorkRequest.
+ :rtype: str
+ """
+ return self._operation_type
+
+ @operation_type.setter
+ def operation_type(self, operation_type):
+ """
+ Sets the operation_type of this WorkRequest.
+ Type of the work request.
+
+
+ :param operation_type: The operation_type of this WorkRequest.
+ :type: str
+ """
+ allowed_values = ["CREATE_CATALOG", "UPDATE_CATALOG", "DELETE_CATALOG", "MOVE_CATALOG"]
+ if not value_allowed_none_or_none_sentinel(operation_type, allowed_values):
+ operation_type = 'UNKNOWN_ENUM_VALUE'
+ self._operation_type = operation_type
+
+ @property
+ def status(self):
+ """
+ **[Required]** Gets the status of this WorkRequest.
+ Status of current work request.
+
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The status of this WorkRequest.
+ :rtype: str
+ """
+ return self._status
+
+ @status.setter
+ def status(self, status):
+ """
+ Sets the status of this WorkRequest.
+ Status of current work request.
+
+
+ :param status: The status of this WorkRequest.
+ :type: str
+ """
+ allowed_values = ["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"]
+ if not value_allowed_none_or_none_sentinel(status, allowed_values):
+ status = 'UNKNOWN_ENUM_VALUE'
+ self._status = status
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this WorkRequest.
+ The id of the work request.
+
+
+ :return: The id of this WorkRequest.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this WorkRequest.
+ The id of the work request.
+
+
+ :param id: The id of this WorkRequest.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this WorkRequest.
+ The ocid of the compartment that contains the work request. Work requests should be scoped to
+ the same compartment as the resource the work request affects. If the work request affects multiple resources,
+ and those resources are not in the same compartment, it is up to the service team to pick the primary
+ resource whose compartment should be used.
+
+
+ :return: The compartment_id of this WorkRequest.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this WorkRequest.
+ The ocid of the compartment that contains the work request. Work requests should be scoped to
+ the same compartment as the resource the work request affects. If the work request affects multiple resources,
+ and those resources are not in the same compartment, it is up to the service team to pick the primary
+ resource whose compartment should be used.
+
+
+ :param compartment_id: The compartment_id of this WorkRequest.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def resources(self):
+ """
+ **[Required]** Gets the resources of this WorkRequest.
+ The resources affected by this work request.
+
+
+ :return: The resources of this WorkRequest.
+ :rtype: list[WorkRequestResource]
+ """
+ return self._resources
+
+ @resources.setter
+ def resources(self, resources):
+ """
+ Sets the resources of this WorkRequest.
+ The resources affected by this work request.
+
+
+ :param resources: The resources of this WorkRequest.
+ :type: list[WorkRequestResource]
+ """
+ self._resources = resources
+
+ @property
+ def percent_complete(self):
+ """
+ **[Required]** Gets the percent_complete of this WorkRequest.
+ Percentage of the request completed.
+
+
+ :return: The percent_complete of this WorkRequest.
+ :rtype: float
+ """
+ return self._percent_complete
+
+ @percent_complete.setter
+ def percent_complete(self, percent_complete):
+ """
+ Sets the percent_complete of this WorkRequest.
+ Percentage of the request completed.
+
+
+ :param percent_complete: The percent_complete of this WorkRequest.
+ :type: float
+ """
+ self._percent_complete = percent_complete
+
+ @property
+ def time_accepted(self):
+ """
+ **[Required]** Gets the time_accepted of this WorkRequest.
+ The date and time the request was created, as described in
+ `RFC 3339`__, section 14.29.
+
+ __ https://tools.ietf.org/rfc/rfc3339
+
+
+ :return: The time_accepted of this WorkRequest.
+ :rtype: datetime
+ """
+ return self._time_accepted
+
+ @time_accepted.setter
+ def time_accepted(self, time_accepted):
+ """
+ Sets the time_accepted of this WorkRequest.
+ The date and time the request was created, as described in
+ `RFC 3339`__, section 14.29.
+
+ __ https://tools.ietf.org/rfc/rfc3339
+
+
+ :param time_accepted: The time_accepted of this WorkRequest.
+ :type: datetime
+ """
+ self._time_accepted = time_accepted
+
+ @property
+ def time_started(self):
+ """
+ Gets the time_started of this WorkRequest.
+ The date and time the request was started, as described in `RFC 3339`__,
+ section 14.29.
+
+ __ https://tools.ietf.org/rfc/rfc3339
+
+
+ :return: The time_started of this WorkRequest.
+ :rtype: datetime
+ """
+ return self._time_started
+
+ @time_started.setter
+ def time_started(self, time_started):
+ """
+ Sets the time_started of this WorkRequest.
+ The date and time the request was started, as described in `RFC 3339`__,
+ section 14.29.
+
+ __ https://tools.ietf.org/rfc/rfc3339
+
+
+ :param time_started: The time_started of this WorkRequest.
+ :type: datetime
+ """
+ self._time_started = time_started
+
+ @property
+ def time_finished(self):
+ """
+ Gets the time_finished of this WorkRequest.
+ The date and time the object was finished, as described in `RFC 3339`__.
+
+ __ https://tools.ietf.org/rfc/rfc3339
+
+
+ :return: The time_finished of this WorkRequest.
+ :rtype: datetime
+ """
+ return self._time_finished
+
+ @time_finished.setter
+ def time_finished(self, time_finished):
+ """
+ Sets the time_finished of this WorkRequest.
+ The date and time the object was finished, as described in `RFC 3339`__.
+
+ __ https://tools.ietf.org/rfc/rfc3339
+
+
+ :param time_finished: The time_finished of this WorkRequest.
+ :type: datetime
+ """
+ self._time_finished = time_finished
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/work_request_error.py b/src/oci/data_catalog/models/work_request_error.py
new file mode 100644
index 0000000000..861da463fc
--- /dev/null
+++ b/src/oci/data_catalog/models/work_request_error.py
@@ -0,0 +1,137 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestError(object):
+ """
+ An error encountered while executing a work request.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestError object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param code:
+ The value to assign to the code property of this WorkRequestError.
+ :type code: str
+
+ :param message:
+ The value to assign to the message property of this WorkRequestError.
+ :type message: str
+
+ :param timestamp:
+ The value to assign to the timestamp property of this WorkRequestError.
+ :type timestamp: datetime
+
+ """
+ self.swagger_types = {
+ 'code': 'str',
+ 'message': 'str',
+ 'timestamp': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'code': 'code',
+ 'message': 'message',
+ 'timestamp': 'timestamp'
+ }
+
+ self._code = None
+ self._message = None
+ self._timestamp = None
+
+ @property
+ def code(self):
+ """
+ **[Required]** Gets the code of this WorkRequestError.
+ A machine-usable code for the error that occured. Error codes are listed on
+ (https://docs.cloud.oracle.com/Content/API/References/apierrors.htm)
+
+
+ :return: The code of this WorkRequestError.
+ :rtype: str
+ """
+ return self._code
+
+ @code.setter
+ def code(self, code):
+ """
+ Sets the code of this WorkRequestError.
+ A machine-usable code for the error that occured. Error codes are listed on
+ (https://docs.cloud.oracle.com/Content/API/References/apierrors.htm)
+
+
+ :param code: The code of this WorkRequestError.
+ :type: str
+ """
+ self._code = code
+
+ @property
+ def message(self):
+ """
+ **[Required]** Gets the message of this WorkRequestError.
+ A human readable description of the issue encountered.
+
+
+ :return: The message of this WorkRequestError.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this WorkRequestError.
+ A human readable description of the issue encountered.
+
+
+ :param message: The message of this WorkRequestError.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def timestamp(self):
+ """
+ **[Required]** Gets the timestamp of this WorkRequestError.
+ The time the error occured. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The timestamp of this WorkRequestError.
+ :rtype: datetime
+ """
+ return self._timestamp
+
+ @timestamp.setter
+ def timestamp(self, timestamp):
+ """
+ Sets the timestamp of this WorkRequestError.
+ The time the error occured. An `RFC3339`__ formatted datetime string.
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param timestamp: The timestamp of this WorkRequestError.
+ :type: datetime
+ """
+ self._timestamp = timestamp
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/work_request_log.py b/src/oci/data_catalog/models/work_request_log.py
new file mode 100644
index 0000000000..ab830d8d0c
--- /dev/null
+++ b/src/oci/data_catalog/models/work_request_log.py
@@ -0,0 +1,104 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestLog(object):
+ """
+ A log message from the execution of a work request.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestLog object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param message:
+ The value to assign to the message property of this WorkRequestLog.
+ :type message: str
+
+ :param timestamp:
+ The value to assign to the timestamp property of this WorkRequestLog.
+ :type timestamp: datetime
+
+ """
+ self.swagger_types = {
+ 'message': 'str',
+ 'timestamp': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'message': 'message',
+ 'timestamp': 'timestamp'
+ }
+
+ self._message = None
+ self._timestamp = None
+
+ @property
+ def message(self):
+ """
+ **[Required]** Gets the message of this WorkRequestLog.
+ Human-readable log message.
+
+
+ :return: The message of this WorkRequestLog.
+ :rtype: str
+ """
+ return self._message
+
+ @message.setter
+ def message(self, message):
+ """
+ Sets the message of this WorkRequestLog.
+ Human-readable log message.
+
+
+ :param message: The message of this WorkRequestLog.
+ :type: str
+ """
+ self._message = message
+
+ @property
+ def timestamp(self):
+ """
+ **[Required]** Gets the timestamp of this WorkRequestLog.
+ The time the log message was written. An `RFC3339`__ formatted datetime string
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The timestamp of this WorkRequestLog.
+ :rtype: datetime
+ """
+ return self._timestamp
+
+ @timestamp.setter
+ def timestamp(self, timestamp):
+ """
+ Sets the timestamp of this WorkRequestLog.
+ The time the log message was written. An `RFC3339`__ formatted datetime string
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param timestamp: The timestamp of this WorkRequestLog.
+ :type: datetime
+ """
+ self._timestamp = timestamp
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_catalog/models/work_request_resource.py b/src/oci/data_catalog/models/work_request_resource.py
new file mode 100644
index 0000000000..f7afd592a4
--- /dev/null
+++ b/src/oci/data_catalog/models/work_request_resource.py
@@ -0,0 +1,196 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class WorkRequestResource(object):
+ """
+ A resource created or operated on by a work request.
+ """
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "CREATED"
+ ACTION_TYPE_CREATED = "CREATED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "UPDATED"
+ ACTION_TYPE_UPDATED = "UPDATED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "DELETED"
+ ACTION_TYPE_DELETED = "DELETED"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "IN_PROGRESS"
+ ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS"
+
+ #: A constant which can be used with the action_type property of a WorkRequestResource.
+ #: This constant has a value of "MOVED"
+ ACTION_TYPE_MOVED = "MOVED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new WorkRequestResource object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param entity_type:
+ The value to assign to the entity_type property of this WorkRequestResource.
+ :type entity_type: str
+
+ :param action_type:
+ The value to assign to the action_type property of this WorkRequestResource.
+ Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "MOVED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type action_type: str
+
+ :param identifier:
+ The value to assign to the identifier property of this WorkRequestResource.
+ :type identifier: str
+
+ :param entity_uri:
+ The value to assign to the entity_uri property of this WorkRequestResource.
+ :type entity_uri: str
+
+ """
+ self.swagger_types = {
+ 'entity_type': 'str',
+ 'action_type': 'str',
+ 'identifier': 'str',
+ 'entity_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'entity_type': 'entityType',
+ 'action_type': 'actionType',
+ 'identifier': 'identifier',
+ 'entity_uri': 'entityUri'
+ }
+
+ self._entity_type = None
+ self._action_type = None
+ self._identifier = None
+ self._entity_uri = None
+
+ @property
+ def entity_type(self):
+ """
+ **[Required]** Gets the entity_type of this WorkRequestResource.
+ The resource type the work request affects.
+
+
+ :return: The entity_type of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._entity_type
+
+ @entity_type.setter
+ def entity_type(self, entity_type):
+ """
+ Sets the entity_type of this WorkRequestResource.
+ The resource type the work request affects.
+
+
+ :param entity_type: The entity_type of this WorkRequestResource.
+ :type: str
+ """
+ self._entity_type = entity_type
+
+ @property
+ def action_type(self):
+ """
+ **[Required]** Gets the action_type of this WorkRequestResource.
+ The way in which this resource is affected by the work tracked in the work request.
+ A resource being created, updated, or deleted will remain in the IN_PROGRESS state until
+ work is complete for that resource at which point it will transition to CREATED, UPDATED,
+ or DELETED, respectively.
+
+ Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "MOVED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The action_type of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._action_type
+
+ @action_type.setter
+ def action_type(self, action_type):
+ """
+ Sets the action_type of this WorkRequestResource.
+ The way in which this resource is affected by the work tracked in the work request.
+ A resource being created, updated, or deleted will remain in the IN_PROGRESS state until
+ work is complete for that resource at which point it will transition to CREATED, UPDATED,
+ or DELETED, respectively.
+
+
+ :param action_type: The action_type of this WorkRequestResource.
+ :type: str
+ """
+ allowed_values = ["CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "MOVED"]
+ if not value_allowed_none_or_none_sentinel(action_type, allowed_values):
+ action_type = 'UNKNOWN_ENUM_VALUE'
+ self._action_type = action_type
+
+ @property
+ def identifier(self):
+ """
+ **[Required]** Gets the identifier of this WorkRequestResource.
+ The identifier of the resource the work request affects.
+
+
+ :return: The identifier of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._identifier
+
+ @identifier.setter
+ def identifier(self, identifier):
+ """
+ Sets the identifier of this WorkRequestResource.
+ The identifier of the resource the work request affects.
+
+
+ :param identifier: The identifier of this WorkRequestResource.
+ :type: str
+ """
+ self._identifier = identifier
+
+ @property
+ def entity_uri(self):
+ """
+ Gets the entity_uri of this WorkRequestResource.
+ The URI path that the user can do a GET to access the resource metadata
+
+
+ :return: The entity_uri of this WorkRequestResource.
+ :rtype: str
+ """
+ return self._entity_uri
+
+ @entity_uri.setter
+ def entity_uri(self, entity_uri):
+ """
+ Sets the entity_uri of this WorkRequestResource.
+ The URI path that the user can do a GET to access the resource metadata
+
+
+ :param entity_uri: The entity_uri of this WorkRequestResource.
+ :type: str
+ """
+ self._entity_uri = entity_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/__init__.py b/src/oci/data_flow/__init__.py
new file mode 100644
index 0000000000..3856fcc36f
--- /dev/null
+++ b/src/oci/data_flow/__init__.py
@@ -0,0 +1,11 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+
+from .data_flow_client import DataFlowClient
+from .data_flow_client_composite_operations import DataFlowClientCompositeOperations
+from . import models
+
+__all__ = ["DataFlowClient", "DataFlowClientCompositeOperations", "models"]
diff --git a/src/oci/data_flow/data_flow_client.py b/src/oci/data_flow/data_flow_client.py
new file mode 100644
index 0000000000..34bac28208
--- /dev/null
+++ b/src/oci/data_flow/data_flow_client.py
@@ -0,0 +1,1147 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from oci._vendor import requests # noqa: F401
+from oci._vendor import six
+
+from oci import retry # noqa: F401
+from oci.base_client import BaseClient
+from oci.config import get_config_value_or_default, validate_config
+from oci.signer import Signer
+from oci.util import Sentinel
+from .models import data_flow_type_mapping
+missing = Sentinel("Missing")
+
+
+class DataFlowClient(object):
+ """
+ Use the Data Flow APIs to run any Apache Spark application at any scale without deploying or managing any infrastructure.
+ """
+
+ def __init__(self, config, **kwargs):
+ """
+ Creates a new service client
+
+ :param dict config:
+ Configuration keys and values as per `SDK and Tool Configuration `__.
+ The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
+ the dict using :py:meth:`~oci.config.validate_config`
+
+ :param str service_endpoint: (optional)
+ The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
+ not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
+ need to specify a service endpoint.
+
+ :param timeout: (optional)
+ The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
+ as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
+ a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
+ :type timeout: float or tuple(float, float)
+
+ :param signer: (optional)
+ The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
+ provided in the config parameter.
+
+ One use case for this parameter is for `Instance Principals authentication `__
+ by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
+ :type signer: :py:class:`~oci.signer.AbstractBaseSigner`
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
+ Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
+ Any value provided at the operation level will override whatever is specified at the client level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+ """
+ validate_config(config, signer=kwargs.get('signer'))
+ if 'signer' in kwargs:
+ signer = kwargs['signer']
+ else:
+ signer = Signer(
+ tenancy=config["tenancy"],
+ user=config["user"],
+ fingerprint=config["fingerprint"],
+ private_key_file_location=config.get("key_file"),
+ pass_phrase=get_config_value_or_default(config, "pass_phrase"),
+ private_key_content=config.get("key_content")
+ )
+
+ base_client_init_kwargs = {
+ 'regional_client': True,
+ 'service_endpoint': kwargs.get('service_endpoint'),
+ 'timeout': kwargs.get('timeout'),
+ 'base_path': '/20200129',
+ 'service_endpoint_template': 'https://dataflow.{region}.oci.{secondLevelDomain}',
+ 'skip_deserialization': kwargs.get('skip_deserialization', False)
+ }
+ self.base_client = BaseClient("data_flow", config, signer, data_flow_type_mapping, **base_client_init_kwargs)
+ self.retry_strategy = kwargs.get('retry_strategy')
+
+ def create_application(self, create_application_details, **kwargs):
+ """
+ Create an application.
+ Creates an application.
+
+
+ :param CreateApplicationDetails create_application_details: (required)
+ Details to create an application.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or server error
+ without risk of executing that same action again. Retry tokens expire after 24 hours,
+ but can be invalidated before then due to conflicting operations.
+ For example, if a resource has been deleted and purged from the system, then a retry of the original creation request may be rejected.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_flow.models.Application`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applications"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_retry_token",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_application got unknown kwargs: {!r}".format(extra_kwargs))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_application_details,
+ response_type="Application")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_application_details,
+ response_type="Application")
+
+ def create_run(self, create_run_details, **kwargs):
+ """
+ Create a run.
+ Creates a run for an application.
+
+
+ :param CreateRunDetails create_run_details: (required)
+ Details for creating a run of an application.
+
+ :param str opc_retry_token: (optional)
+ A token that uniquely identifies a request so it can be retried in case of a timeout or server error
+ without risk of executing that same action again. Retry tokens expire after 24 hours,
+ but can be invalidated before then due to conflicting operations.
+ For example, if a resource has been deleted and purged from the system, then a retry of the original creation request may be rejected.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_flow.models.Run`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_retry_token",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_run got unknown kwargs: {!r}".format(extra_kwargs))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_run_details,
+ response_type="Run")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_run_details,
+ response_type="Run")
+
+ def delete_application(self, application_id, **kwargs):
+ """
+ Delete the application.
+ Deletes an application using an `applicationId`.
+
+
+ :param str application_id: (required)
+ The unique ID for an application.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applications/{applicationId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_application got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applicationId": application_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def delete_run(self, run_id, **kwargs):
+ """
+ Cancels the specified run.
+ Cancels the specified run if it has not already completed or was previously cancelled.
+ If a run is in progress, the executing job will be killed.
+
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs/{runId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_run got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "runId": run_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def get_application(self, application_id, **kwargs):
+ """
+ Get the application.
+ Retrieves an application using an `applicationId`.
+
+
+ :param str application_id: (required)
+ The unique ID for an application.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_flow.models.Application`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applications/{applicationId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_application got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applicationId": application_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Application")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Application")
+
+ def get_run(self, run_id, **kwargs):
+ """
+ Get the run.
+ Retrieves the run for the specified `runId`.
+
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_flow.models.Run`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs/{runId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_run got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "runId": run_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Run")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="Run")
+
+ def get_run_log(self, run_id, name, **kwargs):
+ """
+ Get the gzipped content of the run log.
+ Retrieves the content of an run log.
+
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param str name: (required)
+ The name of the log. Avoid entering confidential information.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type stream
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs/{runId}/logs/{name}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_run_log got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "runId": run_id,
+ "name": name
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/octet-stream",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="stream")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="stream")
+
+ def list_applications(self, compartment_id, **kwargs):
+ """
+ List the applications.
+ Lists all applications in the specified compartment.
+
+
+ :param str compartment_id: (required)
+ The OCID of the compartment.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param int limit: (optional)
+ The maximum number of results to return in a paginated `List` call.
+
+ :param str page: (optional)
+ The value of the `opc-next-page` or `opc-prev-page` response header from the last `List` call
+ to sent back to server for getting the next page of results.
+
+ :param str sort_by: (optional)
+ The field used to sort the results. Multiple fields are not supported.
+
+ Allowed values are: "timeCreated", "displayName", "language"
+
+ :param str sort_order: (optional)
+ The ordering of results in ascending or descending order.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str display_name: (optional)
+ The query parameter for the Spark application name.
+
+ :param str owner_principal_id: (optional)
+ The OCID of the user who created the resource.
+
+ :param str display_name_starts_with: (optional)
+ The displayName prefix.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_flow.models.ApplicationSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applications"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "limit",
+ "page",
+ "sort_by",
+ "sort_order",
+ "display_name",
+ "owner_principal_id",
+ "display_name_starts_with"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_applications got unknown kwargs: {!r}".format(extra_kwargs))
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["timeCreated", "displayName", "language"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "ownerPrincipalId": kwargs.get("owner_principal_id", missing),
+ "displayNameStartsWith": kwargs.get("display_name_starts_with", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[ApplicationSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[ApplicationSummary]")
+
+ def list_run_logs(self, run_id, **kwargs):
+ """
+ List the run log summaries.
+ Retrieves summaries of the run's logs.
+
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param int limit: (optional)
+ The maximum number of results to return in a paginated \"List\" call.
+
+ :param str page: (optional)
+ The value of the `opc-next-page` or `opc-prev-page` response header from the last `List` call
+ to sent back to server for getting the next page of results.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_flow.models.RunLogSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs/{runId}/logs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "limit",
+ "page"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_run_logs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "runId": run_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ query_params = {
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[RunLogSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[RunLogSummary]")
+
+ def list_runs(self, compartment_id, **kwargs):
+ """
+ List the runs.
+ Lists all runs of an application in the specified compartment.
+
+
+ :param str compartment_id: (required)
+ The OCID of the compartment.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param str application_id: (optional)
+ The ID of the application.
+
+ :param str owner_principal_id: (optional)
+ The OCID of the user who created the resource.
+
+ :param str display_name_starts_with: (optional)
+ The displayName prefix.
+
+ :param str lifecycle_state: (optional)
+ The LifecycleState of the run.
+
+ Allowed values are: "ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED"
+
+ :param datetime time_created_greater_than: (optional)
+ The epoch time that the resource was created.
+
+ :param int limit: (optional)
+ The maximum number of results to return in a paginated `List` call.
+
+ :param str page: (optional)
+ The value of the `opc-next-page` or `opc-prev-page` response header from the last `List` call
+ to sent back to server for getting the next page of results.
+
+ :param str sort_by: (optional)
+ The field used to sort the results. Multiple fields are not supported.
+
+ Allowed values are: "timeCreated", "displayName", "language", "runDurationInMilliseconds", "lifecycleState", "totalOCpu", "dataReadInBytes", "dataWrittenInBytes"
+
+ :param str sort_order: (optional)
+ The ordering of results in ascending or descending order.
+
+ Allowed values are: "ASC", "DESC"
+
+ :param str display_name: (optional)
+ The query parameter for the Spark application name.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.data_flow.models.RunSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "application_id",
+ "owner_principal_id",
+ "display_name_starts_with",
+ "lifecycle_state",
+ "time_created_greater_than",
+ "limit",
+ "page",
+ "sort_by",
+ "sort_order",
+ "display_name"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_runs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED"]
+ if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values:
+ raise ValueError(
+ "Invalid value for `lifecycle_state`, must be one of {0}".format(lifecycle_state_allowed_values)
+ )
+
+ if 'sort_by' in kwargs:
+ sort_by_allowed_values = ["timeCreated", "displayName", "language", "runDurationInMilliseconds", "lifecycleState", "totalOCpu", "dataReadInBytes", "dataWrittenInBytes"]
+ if kwargs['sort_by'] not in sort_by_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_by`, must be one of {0}".format(sort_by_allowed_values)
+ )
+
+ if 'sort_order' in kwargs:
+ sort_order_allowed_values = ["ASC", "DESC"]
+ if kwargs['sort_order'] not in sort_order_allowed_values:
+ raise ValueError(
+ "Invalid value for `sort_order`, must be one of {0}".format(sort_order_allowed_values)
+ )
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "applicationId": kwargs.get("application_id", missing),
+ "ownerPrincipalId": kwargs.get("owner_principal_id", missing),
+ "displayNameStartsWith": kwargs.get("display_name_starts_with", missing),
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "timeCreatedGreaterThan": kwargs.get("time_created_greater_than", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing),
+ "sortBy": kwargs.get("sort_by", missing),
+ "sortOrder": kwargs.get("sort_order", missing),
+ "displayName": kwargs.get("display_name", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[RunSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[RunSummary]")
+
+ def update_application(self, update_application_details, application_id, **kwargs):
+ """
+ Update the application.
+ Updates an application using an `applicationId`.
+
+
+ :param UpdateApplicationDetails update_application_details: (required)
+ Details for updating an application.
+
+ :param str application_id: (required)
+ The unique ID for an application.
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_flow.models.Application`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applications/{applicationId}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_application got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applicationId": application_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_application_details,
+ response_type="Application")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_application_details,
+ response_type="Application")
+
+ def update_run(self, update_run_details, run_id, **kwargs):
+ """
+ Update the run.
+ Updates a run using a `runId`.
+
+
+ :param UpdateRunDetails update_run_details: (required)
+ Details for updating a run.
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param str opc_request_id: (optional)
+ Unique identifier for the request. If provided, the returned request ID will include this value.
+ Otherwise, a random request ID will be generated by the service.
+
+ :param str if_match: (optional)
+ 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.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_flow.models.Run`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/runs/{runId}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id",
+ "if_match"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_run got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "runId": run_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "if-match": kwargs.get("if_match", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_run_details,
+ response_type="Run")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_run_details,
+ response_type="Run")
diff --git a/src/oci/data_flow/data_flow_client_composite_operations.py b/src/oci/data_flow/data_flow_client_composite_operations.py
new file mode 100644
index 0000000000..b4a1c0e7b2
--- /dev/null
+++ b/src/oci/data_flow/data_flow_client_composite_operations.py
@@ -0,0 +1,275 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+import oci # noqa: F401
+from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
+
+
+class DataFlowClientCompositeOperations(object):
+ """
+ This class provides a wrapper around :py:class:`~oci.data_flow.DataFlowClient` and offers convenience methods
+ for operations that would otherwise need to be chained together. For example, instead of performing an action
+ on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource
+ to enter a given state, you can call a single method in this class to accomplish the same functionality
+ """
+
+ def __init__(self, client, **kwargs):
+ """
+ Creates a new DataFlowClientCompositeOperations object
+
+ :param DataFlowClient client:
+ The service client which will be wrapped by this object
+ """
+ self.client = client
+
+ def create_application_and_wait_for_state(self, create_application_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_flow.DataFlowClient.create_application` and waits for the :py:class:`~oci.data_flow.models.Application` acted upon
+ to enter the given state(s).
+
+ :param CreateApplicationDetails create_application_details: (required)
+ Details to create an application.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_flow.models.Application.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_flow.DataFlowClient.create_application`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.create_application(create_application_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_application(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def create_run_and_wait_for_state(self, create_run_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_flow.DataFlowClient.create_run` and waits for the :py:class:`~oci.data_flow.models.Run` acted upon
+ to enter the given state(s).
+
+ :param CreateRunDetails create_run_details: (required)
+ Details for creating a run of an application.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_flow.models.Run.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_flow.DataFlowClient.create_run`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.create_run(create_run_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_run(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def delete_application_and_wait_for_state(self, application_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_flow.DataFlowClient.delete_application` and waits for the :py:class:`~oci.data_flow.models.Application` acted upon
+ to enter the given state(s).
+
+ :param str application_id: (required)
+ The unique ID for an application.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_flow.models.Application.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_flow.DataFlowClient.delete_application`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ initial_get_result = self.client.get_application(application_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_application(application_id, **operation_kwargs)
+ except oci.exceptions.ServiceError as e:
+ if e.status == 404:
+ return WAIT_RESOURCE_NOT_FOUND
+ else:
+ raise e
+
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ initial_get_result,
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ succeed_on_not_found=True,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def delete_run_and_wait_for_state(self, run_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_flow.DataFlowClient.delete_run` and waits for the :py:class:`~oci.data_flow.models.Run` acted upon
+ to enter the given state(s).
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_flow.models.Run.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_flow.DataFlowClient.delete_run`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ initial_get_result = self.client.get_run(run_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_run(run_id, **operation_kwargs)
+ except oci.exceptions.ServiceError as e:
+ if e.status == 404:
+ return WAIT_RESOURCE_NOT_FOUND
+ else:
+ raise e
+
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ initial_get_result,
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ succeed_on_not_found=True,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def update_application_and_wait_for_state(self, update_application_details, application_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_flow.DataFlowClient.update_application` and waits for the :py:class:`~oci.data_flow.models.Application` acted upon
+ to enter the given state(s).
+
+ :param UpdateApplicationDetails update_application_details: (required)
+ Details for updating an application.
+
+ :param str application_id: (required)
+ The unique ID for an application.
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_flow.models.Application.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_flow.DataFlowClient.update_application`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.update_application(update_application_details, application_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_application(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def update_run_and_wait_for_state(self, update_run_details, run_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.data_flow.DataFlowClient.update_run` and waits for the :py:class:`~oci.data_flow.models.Run` acted upon
+ to enter the given state(s).
+
+ :param UpdateRunDetails update_run_details: (required)
+ Details for updating a run.
+
+ :param str run_id: (required)
+ The unique ID for the run
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.data_flow.models.Run.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.data_flow.DataFlowClient.update_run`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.update_run(update_run_details, run_id, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_run(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
diff --git a/src/oci/data_flow/models/__init__.py b/src/oci/data_flow/models/__init__.py
new file mode 100644
index 0000000000..6aaa2282d9
--- /dev/null
+++ b/src/oci/data_flow/models/__init__.py
@@ -0,0 +1,29 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from .application import Application
+from .application_parameter import ApplicationParameter
+from .application_summary import ApplicationSummary
+from .create_application_details import CreateApplicationDetails
+from .create_run_details import CreateRunDetails
+from .run import Run
+from .run_log_summary import RunLogSummary
+from .run_summary import RunSummary
+from .update_application_details import UpdateApplicationDetails
+from .update_run_details import UpdateRunDetails
+
+# Maps type names to classes for data_flow services.
+data_flow_type_mapping = {
+ "Application": Application,
+ "ApplicationParameter": ApplicationParameter,
+ "ApplicationSummary": ApplicationSummary,
+ "CreateApplicationDetails": CreateApplicationDetails,
+ "CreateRunDetails": CreateRunDetails,
+ "Run": Run,
+ "RunLogSummary": RunLogSummary,
+ "RunSummary": RunSummary,
+ "UpdateApplicationDetails": UpdateApplicationDetails,
+ "UpdateRunDetails": UpdateRunDetails
+}
diff --git a/src/oci/data_flow/models/application.py b/src/oci/data_flow/models/application.py
new file mode 100644
index 0000000000..15461abe70
--- /dev/null
+++ b/src/oci/data_flow/models/application.py
@@ -0,0 +1,859 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Application(object):
+ """
+ A data flow application object.
+ """
+
+ #: A constant which can be used with the language property of a Application.
+ #: This constant has a value of "SCALA"
+ LANGUAGE_SCALA = "SCALA"
+
+ #: A constant which can be used with the language property of a Application.
+ #: This constant has a value of "JAVA"
+ LANGUAGE_JAVA = "JAVA"
+
+ #: A constant which can be used with the language property of a Application.
+ #: This constant has a value of "PYTHON"
+ LANGUAGE_PYTHON = "PYTHON"
+
+ #: A constant which can be used with the language property of a Application.
+ #: This constant has a value of "SQL"
+ LANGUAGE_SQL = "SQL"
+
+ #: A constant which can be used with the lifecycle_state property of a Application.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a Application.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a Application.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Application object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param arguments:
+ The value to assign to the arguments property of this Application.
+ :type arguments: list[str]
+
+ :param class_name:
+ The value to assign to the class_name property of this Application.
+ :type class_name: str
+
+ :param configuration:
+ The value to assign to the configuration property of this Application.
+ :type configuration: dict(str, str)
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this Application.
+ :type compartment_id: str
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this Application.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param description:
+ The value to assign to the description property of this Application.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this Application.
+ :type display_name: str
+
+ :param driver_shape:
+ The value to assign to the driver_shape property of this Application.
+ :type driver_shape: str
+
+ :param executor_shape:
+ The value to assign to the executor_shape property of this Application.
+ :type executor_shape: str
+
+ :param file_uri:
+ The value to assign to the file_uri property of this Application.
+ :type file_uri: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this Application.
+ :type freeform_tags: dict(str, str)
+
+ :param id:
+ The value to assign to the id property of this Application.
+ :type id: str
+
+ :param language:
+ The value to assign to the language property of this Application.
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type language: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Application.
+ Allowed values for this property are: "ACTIVE", "DELETED", "INACTIVE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param logs_bucket_uri:
+ The value to assign to the logs_bucket_uri property of this Application.
+ :type logs_bucket_uri: str
+
+ :param num_executors:
+ The value to assign to the num_executors property of this Application.
+ :type num_executors: int
+
+ :param owner_principal_id:
+ The value to assign to the owner_principal_id property of this Application.
+ :type owner_principal_id: str
+
+ :param owner_user_name:
+ The value to assign to the owner_user_name property of this Application.
+ :type owner_user_name: str
+
+ :param parameters:
+ The value to assign to the parameters property of this Application.
+ :type parameters: list[ApplicationParameter]
+
+ :param spark_version:
+ The value to assign to the spark_version property of this Application.
+ :type spark_version: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Application.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Application.
+ :type time_updated: datetime
+
+ :param warehouse_bucket_uri:
+ The value to assign to the warehouse_bucket_uri property of this Application.
+ :type warehouse_bucket_uri: str
+
+ """
+ self.swagger_types = {
+ 'arguments': 'list[str]',
+ 'class_name': 'str',
+ 'configuration': 'dict(str, str)',
+ 'compartment_id': 'str',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'description': 'str',
+ 'display_name': 'str',
+ 'driver_shape': 'str',
+ 'executor_shape': 'str',
+ 'file_uri': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'id': 'str',
+ 'language': 'str',
+ 'lifecycle_state': 'str',
+ 'logs_bucket_uri': 'str',
+ 'num_executors': 'int',
+ 'owner_principal_id': 'str',
+ 'owner_user_name': 'str',
+ 'parameters': 'list[ApplicationParameter]',
+ 'spark_version': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'warehouse_bucket_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'arguments': 'arguments',
+ 'class_name': 'className',
+ 'configuration': 'configuration',
+ 'compartment_id': 'compartmentId',
+ 'defined_tags': 'definedTags',
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'driver_shape': 'driverShape',
+ 'executor_shape': 'executorShape',
+ 'file_uri': 'fileUri',
+ 'freeform_tags': 'freeformTags',
+ 'id': 'id',
+ 'language': 'language',
+ 'lifecycle_state': 'lifecycleState',
+ 'logs_bucket_uri': 'logsBucketUri',
+ 'num_executors': 'numExecutors',
+ 'owner_principal_id': 'ownerPrincipalId',
+ 'owner_user_name': 'ownerUserName',
+ 'parameters': 'parameters',
+ 'spark_version': 'sparkVersion',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'warehouse_bucket_uri': 'warehouseBucketUri'
+ }
+
+ self._arguments = None
+ self._class_name = None
+ self._configuration = None
+ self._compartment_id = None
+ self._defined_tags = None
+ self._description = None
+ self._display_name = None
+ self._driver_shape = None
+ self._executor_shape = None
+ self._file_uri = None
+ self._freeform_tags = None
+ self._id = None
+ self._language = None
+ self._lifecycle_state = None
+ self._logs_bucket_uri = None
+ self._num_executors = None
+ self._owner_principal_id = None
+ self._owner_user_name = None
+ self._parameters = None
+ self._spark_version = None
+ self._time_created = None
+ self._time_updated = None
+ self._warehouse_bucket_uri = None
+
+ @property
+ def arguments(self):
+ """
+ Gets the arguments of this Application.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :return: The arguments of this Application.
+ :rtype: list[str]
+ """
+ return self._arguments
+
+ @arguments.setter
+ def arguments(self, arguments):
+ """
+ Sets the arguments of this Application.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :param arguments: The arguments of this Application.
+ :type: list[str]
+ """
+ self._arguments = arguments
+
+ @property
+ def class_name(self):
+ """
+ Gets the class_name of this Application.
+ The class for the application.
+
+
+ :return: The class_name of this Application.
+ :rtype: str
+ """
+ return self._class_name
+
+ @class_name.setter
+ def class_name(self, class_name):
+ """
+ Sets the class_name of this Application.
+ The class for the application.
+
+
+ :param class_name: The class_name of this Application.
+ :type: str
+ """
+ self._class_name = class_name
+
+ @property
+ def configuration(self):
+ """
+ Gets the configuration of this Application.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :return: The configuration of this Application.
+ :rtype: dict(str, str)
+ """
+ return self._configuration
+
+ @configuration.setter
+ def configuration(self, configuration):
+ """
+ Sets the configuration of this Application.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :param configuration: The configuration of this Application.
+ :type: dict(str, str)
+ """
+ self._configuration = configuration
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this Application.
+ The OCID of the compartment that contains this application.
+
+
+ :return: The compartment_id of this Application.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this Application.
+ The OCID of the compartment that contains this application.
+
+
+ :param compartment_id: The compartment_id of this Application.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this Application.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this Application.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this Application.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this Application.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def description(self):
+ """
+ Gets the description of this Application.
+ A user-friendly description.
+
+
+ :return: The description of this Application.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this Application.
+ A user-friendly description.
+
+
+ :param description: The description of this Application.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this Application.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :return: The display_name of this Application.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Application.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :param display_name: The display_name of this Application.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def driver_shape(self):
+ """
+ **[Required]** Gets the driver_shape of this Application.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :return: The driver_shape of this Application.
+ :rtype: str
+ """
+ return self._driver_shape
+
+ @driver_shape.setter
+ def driver_shape(self, driver_shape):
+ """
+ Sets the driver_shape of this Application.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :param driver_shape: The driver_shape of this Application.
+ :type: str
+ """
+ self._driver_shape = driver_shape
+
+ @property
+ def executor_shape(self):
+ """
+ **[Required]** Gets the executor_shape of this Application.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :return: The executor_shape of this Application.
+ :rtype: str
+ """
+ return self._executor_shape
+
+ @executor_shape.setter
+ def executor_shape(self, executor_shape):
+ """
+ Sets the executor_shape of this Application.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :param executor_shape: The executor_shape of this Application.
+ :type: str
+ """
+ self._executor_shape = executor_shape
+
+ @property
+ def file_uri(self):
+ """
+ **[Required]** Gets the file_uri of this Application.
+ An Oracle Cloud Infrastructure URI of the file containing the application to execute.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The file_uri of this Application.
+ :rtype: str
+ """
+ return self._file_uri
+
+ @file_uri.setter
+ def file_uri(self, file_uri):
+ """
+ Sets the file_uri of this Application.
+ An Oracle Cloud Infrastructure URI of the file containing the application to execute.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param file_uri: The file_uri of this Application.
+ :type: str
+ """
+ self._file_uri = file_uri
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this Application.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this Application.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this Application.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this Application.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this Application.
+ The application ID.
+
+
+ :return: The id of this Application.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this Application.
+ The application ID.
+
+
+ :param id: The id of this Application.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def language(self):
+ """
+ **[Required]** Gets the language of this Application.
+ The Spark language.
+
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The language of this Application.
+ :rtype: str
+ """
+ return self._language
+
+ @language.setter
+ def language(self, language):
+ """
+ Sets the language of this Application.
+ The Spark language.
+
+
+ :param language: The language of this Application.
+ :type: str
+ """
+ allowed_values = ["SCALA", "JAVA", "PYTHON", "SQL"]
+ if not value_allowed_none_or_none_sentinel(language, allowed_values):
+ language = 'UNKNOWN_ENUM_VALUE'
+ self._language = language
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this Application.
+ The current state of this application.
+
+ Allowed values for this property are: "ACTIVE", "DELETED", "INACTIVE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this Application.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Application.
+ The current state of this application.
+
+
+ :param lifecycle_state: The lifecycle_state of this Application.
+ :type: str
+ """
+ allowed_values = ["ACTIVE", "DELETED", "INACTIVE"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def logs_bucket_uri(self):
+ """
+ Gets the logs_bucket_uri of this Application.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The logs_bucket_uri of this Application.
+ :rtype: str
+ """
+ return self._logs_bucket_uri
+
+ @logs_bucket_uri.setter
+ def logs_bucket_uri(self, logs_bucket_uri):
+ """
+ Sets the logs_bucket_uri of this Application.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param logs_bucket_uri: The logs_bucket_uri of this Application.
+ :type: str
+ """
+ self._logs_bucket_uri = logs_bucket_uri
+
+ @property
+ def num_executors(self):
+ """
+ **[Required]** Gets the num_executors of this Application.
+ The number of executor VMs requested.
+
+
+ :return: The num_executors of this Application.
+ :rtype: int
+ """
+ return self._num_executors
+
+ @num_executors.setter
+ def num_executors(self, num_executors):
+ """
+ Sets the num_executors of this Application.
+ The number of executor VMs requested.
+
+
+ :param num_executors: The num_executors of this Application.
+ :type: int
+ """
+ self._num_executors = num_executors
+
+ @property
+ def owner_principal_id(self):
+ """
+ **[Required]** Gets the owner_principal_id of this Application.
+ The OCID of the user who created the resource.
+
+
+ :return: The owner_principal_id of this Application.
+ :rtype: str
+ """
+ return self._owner_principal_id
+
+ @owner_principal_id.setter
+ def owner_principal_id(self, owner_principal_id):
+ """
+ Sets the owner_principal_id of this Application.
+ The OCID of the user who created the resource.
+
+
+ :param owner_principal_id: The owner_principal_id of this Application.
+ :type: str
+ """
+ self._owner_principal_id = owner_principal_id
+
+ @property
+ def owner_user_name(self):
+ """
+ Gets the owner_user_name of this Application.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :return: The owner_user_name of this Application.
+ :rtype: str
+ """
+ return self._owner_user_name
+
+ @owner_user_name.setter
+ def owner_user_name(self, owner_user_name):
+ """
+ Sets the owner_user_name of this Application.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :param owner_user_name: The owner_user_name of this Application.
+ :type: str
+ """
+ self._owner_user_name = owner_user_name
+
+ @property
+ def parameters(self):
+ """
+ Gets the parameters of this Application.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :return: The parameters of this Application.
+ :rtype: list[ApplicationParameter]
+ """
+ return self._parameters
+
+ @parameters.setter
+ def parameters(self, parameters):
+ """
+ Sets the parameters of this Application.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :param parameters: The parameters of this Application.
+ :type: list[ApplicationParameter]
+ """
+ self._parameters = parameters
+
+ @property
+ def spark_version(self):
+ """
+ **[Required]** Gets the spark_version of this Application.
+ The Spark version utilized to run the application.
+
+
+ :return: The spark_version of this Application.
+ :rtype: str
+ """
+ return self._spark_version
+
+ @spark_version.setter
+ def spark_version(self, spark_version):
+ """
+ Sets the spark_version of this Application.
+ The Spark version utilized to run the application.
+
+
+ :param spark_version: The spark_version of this Application.
+ :type: str
+ """
+ self._spark_version = spark_version
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this Application.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Application.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Application.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Application.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this Application.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Application.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Application.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Application.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def warehouse_bucket_uri(self):
+ """
+ Gets the warehouse_bucket_uri of this Application.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The warehouse_bucket_uri of this Application.
+ :rtype: str
+ """
+ return self._warehouse_bucket_uri
+
+ @warehouse_bucket_uri.setter
+ def warehouse_bucket_uri(self, warehouse_bucket_uri):
+ """
+ Sets the warehouse_bucket_uri of this Application.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param warehouse_bucket_uri: The warehouse_bucket_uri of this Application.
+ :type: str
+ """
+ self._warehouse_bucket_uri = warehouse_bucket_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/application_parameter.py b/src/oci/data_flow/models/application_parameter.py
new file mode 100644
index 0000000000..45264c3826
--- /dev/null
+++ b/src/oci/data_flow/models/application_parameter.py
@@ -0,0 +1,106 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ApplicationParameter(object):
+ """
+ The parameter of an application.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ApplicationParameter object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this ApplicationParameter.
+ :type name: str
+
+ :param value:
+ The value to assign to the value property of this ApplicationParameter.
+ :type value: str
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'value': 'str'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'value': 'value'
+ }
+
+ self._name = None
+ self._value = None
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this ApplicationParameter.
+ The name of the parameter. It must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _).
+ Examples: \"iterations\", \"input_file\"
+
+
+ :return: The name of this ApplicationParameter.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this ApplicationParameter.
+ The name of the parameter. It must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _).
+ Examples: \"iterations\", \"input_file\"
+
+
+ :param name: The name of this ApplicationParameter.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def value(self):
+ """
+ **[Required]** Gets the value of this ApplicationParameter.
+ The value of the parameter. It must be a string of 0 or more characters of any kind.
+ Examples: \"\" (empty string), \"10\", \"mydata.xml\", \"${x}\"
+
+
+ :return: The value of this ApplicationParameter.
+ :rtype: str
+ """
+ return self._value
+
+ @value.setter
+ def value(self, value):
+ """
+ Sets the value of this ApplicationParameter.
+ The value of the parameter. It must be a string of 0 or more characters of any kind.
+ Examples: \"\" (empty string), \"10\", \"mydata.xml\", \"${x}\"
+
+
+ :param value: The value of this ApplicationParameter.
+ :type: str
+ """
+ self._value = value
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/application_summary.py b/src/oci/data_flow/models/application_summary.py
new file mode 100644
index 0000000000..086c8b709a
--- /dev/null
+++ b/src/oci/data_flow/models/application_summary.py
@@ -0,0 +1,451 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ApplicationSummary(object):
+ """
+ A data flow application object used in bulk listings.
+ """
+
+ #: A constant which can be used with the language property of a ApplicationSummary.
+ #: This constant has a value of "SCALA"
+ LANGUAGE_SCALA = "SCALA"
+
+ #: A constant which can be used with the language property of a ApplicationSummary.
+ #: This constant has a value of "JAVA"
+ LANGUAGE_JAVA = "JAVA"
+
+ #: A constant which can be used with the language property of a ApplicationSummary.
+ #: This constant has a value of "PYTHON"
+ LANGUAGE_PYTHON = "PYTHON"
+
+ #: A constant which can be used with the language property of a ApplicationSummary.
+ #: This constant has a value of "SQL"
+ LANGUAGE_SQL = "SQL"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplicationSummary.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplicationSummary.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplicationSummary.
+ #: This constant has a value of "INACTIVE"
+ LIFECYCLE_STATE_INACTIVE = "INACTIVE"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ApplicationSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ApplicationSummary.
+ :type compartment_id: str
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this ApplicationSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param display_name:
+ The value to assign to the display_name property of this ApplicationSummary.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this ApplicationSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param id:
+ The value to assign to the id property of this ApplicationSummary.
+ :type id: str
+
+ :param language:
+ The value to assign to the language property of this ApplicationSummary.
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type language: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ApplicationSummary.
+ Allowed values for this property are: "ACTIVE", "DELETED", "INACTIVE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param owner_principal_id:
+ The value to assign to the owner_principal_id property of this ApplicationSummary.
+ :type owner_principal_id: str
+
+ :param owner_user_name:
+ The value to assign to the owner_user_name property of this ApplicationSummary.
+ :type owner_user_name: str
+
+ :param time_created:
+ The value to assign to the time_created property of this ApplicationSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this ApplicationSummary.
+ :type time_updated: datetime
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'display_name': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'id': 'str',
+ 'language': 'str',
+ 'lifecycle_state': 'str',
+ 'owner_principal_id': 'str',
+ 'owner_user_name': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'defined_tags': 'definedTags',
+ 'display_name': 'displayName',
+ 'freeform_tags': 'freeformTags',
+ 'id': 'id',
+ 'language': 'language',
+ 'lifecycle_state': 'lifecycleState',
+ 'owner_principal_id': 'ownerPrincipalId',
+ 'owner_user_name': 'ownerUserName',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated'
+ }
+
+ self._compartment_id = None
+ self._defined_tags = None
+ self._display_name = None
+ self._freeform_tags = None
+ self._id = None
+ self._language = None
+ self._lifecycle_state = None
+ self._owner_principal_id = None
+ self._owner_user_name = None
+ self._time_created = None
+ self._time_updated = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ApplicationSummary.
+ The OCID of the compartment that contains this application.
+
+
+ :return: The compartment_id of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ApplicationSummary.
+ The OCID of the compartment that contains this application.
+
+
+ :param compartment_id: The compartment_id of this ApplicationSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def defined_tags(self):
+ """
+ **[Required]** Gets the defined_tags of this ApplicationSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this ApplicationSummary.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this ApplicationSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this ApplicationSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this ApplicationSummary.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :return: The display_name of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ApplicationSummary.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :param display_name: The display_name of this ApplicationSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def freeform_tags(self):
+ """
+ **[Required]** Gets the freeform_tags of this ApplicationSummary.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this ApplicationSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this ApplicationSummary.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this ApplicationSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this ApplicationSummary.
+ The application ID.
+
+
+ :return: The id of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this ApplicationSummary.
+ The application ID.
+
+
+ :param id: The id of this ApplicationSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def language(self):
+ """
+ **[Required]** Gets the language of this ApplicationSummary.
+ The Spark language.
+
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The language of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._language
+
+ @language.setter
+ def language(self, language):
+ """
+ Sets the language of this ApplicationSummary.
+ The Spark language.
+
+
+ :param language: The language of this ApplicationSummary.
+ :type: str
+ """
+ allowed_values = ["SCALA", "JAVA", "PYTHON", "SQL"]
+ if not value_allowed_none_or_none_sentinel(language, allowed_values):
+ language = 'UNKNOWN_ENUM_VALUE'
+ self._language = language
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this ApplicationSummary.
+ The current state of this application.
+
+ Allowed values for this property are: "ACTIVE", "DELETED", "INACTIVE", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ApplicationSummary.
+ The current state of this application.
+
+
+ :param lifecycle_state: The lifecycle_state of this ApplicationSummary.
+ :type: str
+ """
+ allowed_values = ["ACTIVE", "DELETED", "INACTIVE"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def owner_principal_id(self):
+ """
+ **[Required]** Gets the owner_principal_id of this ApplicationSummary.
+ The OCID of the user who created the resource.
+
+
+ :return: The owner_principal_id of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._owner_principal_id
+
+ @owner_principal_id.setter
+ def owner_principal_id(self, owner_principal_id):
+ """
+ Sets the owner_principal_id of this ApplicationSummary.
+ The OCID of the user who created the resource.
+
+
+ :param owner_principal_id: The owner_principal_id of this ApplicationSummary.
+ :type: str
+ """
+ self._owner_principal_id = owner_principal_id
+
+ @property
+ def owner_user_name(self):
+ """
+ Gets the owner_user_name of this ApplicationSummary.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :return: The owner_user_name of this ApplicationSummary.
+ :rtype: str
+ """
+ return self._owner_user_name
+
+ @owner_user_name.setter
+ def owner_user_name(self, owner_user_name):
+ """
+ Sets the owner_user_name of this ApplicationSummary.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :param owner_user_name: The owner_user_name of this ApplicationSummary.
+ :type: str
+ """
+ self._owner_user_name = owner_user_name
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this ApplicationSummary.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this ApplicationSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this ApplicationSummary.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this ApplicationSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this ApplicationSummary.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this ApplicationSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this ApplicationSummary.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this ApplicationSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/create_application_details.py b/src/oci/data_flow/models/create_application_details.py
new file mode 100644
index 0000000000..b2f67550af
--- /dev/null
+++ b/src/oci/data_flow/models/create_application_details.py
@@ -0,0 +1,640 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateApplicationDetails(object):
+ """
+ The create application details.
+ """
+
+ #: A constant which can be used with the language property of a CreateApplicationDetails.
+ #: This constant has a value of "SCALA"
+ LANGUAGE_SCALA = "SCALA"
+
+ #: A constant which can be used with the language property of a CreateApplicationDetails.
+ #: This constant has a value of "JAVA"
+ LANGUAGE_JAVA = "JAVA"
+
+ #: A constant which can be used with the language property of a CreateApplicationDetails.
+ #: This constant has a value of "PYTHON"
+ LANGUAGE_PYTHON = "PYTHON"
+
+ #: A constant which can be used with the language property of a CreateApplicationDetails.
+ #: This constant has a value of "SQL"
+ LANGUAGE_SQL = "SQL"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateApplicationDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param arguments:
+ The value to assign to the arguments property of this CreateApplicationDetails.
+ :type arguments: list[str]
+
+ :param class_name:
+ The value to assign to the class_name property of this CreateApplicationDetails.
+ :type class_name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateApplicationDetails.
+ :type compartment_id: str
+
+ :param configuration:
+ The value to assign to the configuration property of this CreateApplicationDetails.
+ :type configuration: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateApplicationDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param description:
+ The value to assign to the description property of this CreateApplicationDetails.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateApplicationDetails.
+ :type display_name: str
+
+ :param driver_shape:
+ The value to assign to the driver_shape property of this CreateApplicationDetails.
+ :type driver_shape: str
+
+ :param executor_shape:
+ The value to assign to the executor_shape property of this CreateApplicationDetails.
+ :type executor_shape: str
+
+ :param file_uri:
+ The value to assign to the file_uri property of this CreateApplicationDetails.
+ :type file_uri: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateApplicationDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param language:
+ The value to assign to the language property of this CreateApplicationDetails.
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL"
+ :type language: str
+
+ :param logs_bucket_uri:
+ The value to assign to the logs_bucket_uri property of this CreateApplicationDetails.
+ :type logs_bucket_uri: str
+
+ :param num_executors:
+ The value to assign to the num_executors property of this CreateApplicationDetails.
+ :type num_executors: int
+
+ :param parameters:
+ The value to assign to the parameters property of this CreateApplicationDetails.
+ :type parameters: list[ApplicationParameter]
+
+ :param spark_version:
+ The value to assign to the spark_version property of this CreateApplicationDetails.
+ :type spark_version: str
+
+ :param warehouse_bucket_uri:
+ The value to assign to the warehouse_bucket_uri property of this CreateApplicationDetails.
+ :type warehouse_bucket_uri: str
+
+ """
+ self.swagger_types = {
+ 'arguments': 'list[str]',
+ 'class_name': 'str',
+ 'compartment_id': 'str',
+ 'configuration': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'description': 'str',
+ 'display_name': 'str',
+ 'driver_shape': 'str',
+ 'executor_shape': 'str',
+ 'file_uri': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'language': 'str',
+ 'logs_bucket_uri': 'str',
+ 'num_executors': 'int',
+ 'parameters': 'list[ApplicationParameter]',
+ 'spark_version': 'str',
+ 'warehouse_bucket_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'arguments': 'arguments',
+ 'class_name': 'className',
+ 'compartment_id': 'compartmentId',
+ 'configuration': 'configuration',
+ 'defined_tags': 'definedTags',
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'driver_shape': 'driverShape',
+ 'executor_shape': 'executorShape',
+ 'file_uri': 'fileUri',
+ 'freeform_tags': 'freeformTags',
+ 'language': 'language',
+ 'logs_bucket_uri': 'logsBucketUri',
+ 'num_executors': 'numExecutors',
+ 'parameters': 'parameters',
+ 'spark_version': 'sparkVersion',
+ 'warehouse_bucket_uri': 'warehouseBucketUri'
+ }
+
+ self._arguments = None
+ self._class_name = None
+ self._compartment_id = None
+ self._configuration = None
+ self._defined_tags = None
+ self._description = None
+ self._display_name = None
+ self._driver_shape = None
+ self._executor_shape = None
+ self._file_uri = None
+ self._freeform_tags = None
+ self._language = None
+ self._logs_bucket_uri = None
+ self._num_executors = None
+ self._parameters = None
+ self._spark_version = None
+ self._warehouse_bucket_uri = None
+
+ @property
+ def arguments(self):
+ """
+ Gets the arguments of this CreateApplicationDetails.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :return: The arguments of this CreateApplicationDetails.
+ :rtype: list[str]
+ """
+ return self._arguments
+
+ @arguments.setter
+ def arguments(self, arguments):
+ """
+ Sets the arguments of this CreateApplicationDetails.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :param arguments: The arguments of this CreateApplicationDetails.
+ :type: list[str]
+ """
+ self._arguments = arguments
+
+ @property
+ def class_name(self):
+ """
+ Gets the class_name of this CreateApplicationDetails.
+ The class for the application.
+
+
+ :return: The class_name of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._class_name
+
+ @class_name.setter
+ def class_name(self, class_name):
+ """
+ Sets the class_name of this CreateApplicationDetails.
+ The class for the application.
+
+
+ :param class_name: The class_name of this CreateApplicationDetails.
+ :type: str
+ """
+ self._class_name = class_name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateApplicationDetails.
+ The OCID of the compartment that contains this application.
+
+
+ :return: The compartment_id of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateApplicationDetails.
+ The OCID of the compartment that contains this application.
+
+
+ :param compartment_id: The compartment_id of this CreateApplicationDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def configuration(self):
+ """
+ Gets the configuration of this CreateApplicationDetails.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :return: The configuration of this CreateApplicationDetails.
+ :rtype: dict(str, str)
+ """
+ return self._configuration
+
+ @configuration.setter
+ def configuration(self, configuration):
+ """
+ Sets the configuration of this CreateApplicationDetails.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :param configuration: The configuration of this CreateApplicationDetails.
+ :type: dict(str, str)
+ """
+ self._configuration = configuration
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateApplicationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this CreateApplicationDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CreateApplicationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this CreateApplicationDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def description(self):
+ """
+ Gets the description of this CreateApplicationDetails.
+ A user-friendly description. Avoid entering confidential information.
+
+
+ :return: The description of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this CreateApplicationDetails.
+ A user-friendly description. Avoid entering confidential information.
+
+
+ :param description: The description of this CreateApplicationDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateApplicationDetails.
+ A user-friendly name. It does not have to be unique. Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateApplicationDetails.
+ A user-friendly name. It does not have to be unique. Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateApplicationDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def driver_shape(self):
+ """
+ **[Required]** Gets the driver_shape of this CreateApplicationDetails.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :return: The driver_shape of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._driver_shape
+
+ @driver_shape.setter
+ def driver_shape(self, driver_shape):
+ """
+ Sets the driver_shape of this CreateApplicationDetails.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :param driver_shape: The driver_shape of this CreateApplicationDetails.
+ :type: str
+ """
+ self._driver_shape = driver_shape
+
+ @property
+ def executor_shape(self):
+ """
+ **[Required]** Gets the executor_shape of this CreateApplicationDetails.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :return: The executor_shape of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._executor_shape
+
+ @executor_shape.setter
+ def executor_shape(self, executor_shape):
+ """
+ Sets the executor_shape of this CreateApplicationDetails.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :param executor_shape: The executor_shape of this CreateApplicationDetails.
+ :type: str
+ """
+ self._executor_shape = executor_shape
+
+ @property
+ def file_uri(self):
+ """
+ **[Required]** Gets the file_uri of this CreateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the file containing the application to execute.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The file_uri of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._file_uri
+
+ @file_uri.setter
+ def file_uri(self, file_uri):
+ """
+ Sets the file_uri of this CreateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the file containing the application to execute.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param file_uri: The file_uri of this CreateApplicationDetails.
+ :type: str
+ """
+ self._file_uri = file_uri
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateApplicationDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this CreateApplicationDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateApplicationDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this CreateApplicationDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def language(self):
+ """
+ **[Required]** Gets the language of this CreateApplicationDetails.
+ The Spark language.
+
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL"
+
+
+ :return: The language of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._language
+
+ @language.setter
+ def language(self, language):
+ """
+ Sets the language of this CreateApplicationDetails.
+ The Spark language.
+
+
+ :param language: The language of this CreateApplicationDetails.
+ :type: str
+ """
+ allowed_values = ["SCALA", "JAVA", "PYTHON", "SQL"]
+ if not value_allowed_none_or_none_sentinel(language, allowed_values):
+ raise ValueError(
+ "Invalid value for `language`, must be None or one of {0}"
+ .format(allowed_values)
+ )
+ self._language = language
+
+ @property
+ def logs_bucket_uri(self):
+ """
+ Gets the logs_bucket_uri of this CreateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The logs_bucket_uri of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._logs_bucket_uri
+
+ @logs_bucket_uri.setter
+ def logs_bucket_uri(self, logs_bucket_uri):
+ """
+ Sets the logs_bucket_uri of this CreateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param logs_bucket_uri: The logs_bucket_uri of this CreateApplicationDetails.
+ :type: str
+ """
+ self._logs_bucket_uri = logs_bucket_uri
+
+ @property
+ def num_executors(self):
+ """
+ **[Required]** Gets the num_executors of this CreateApplicationDetails.
+ The number of executor VMs requested.
+
+
+ :return: The num_executors of this CreateApplicationDetails.
+ :rtype: int
+ """
+ return self._num_executors
+
+ @num_executors.setter
+ def num_executors(self, num_executors):
+ """
+ Sets the num_executors of this CreateApplicationDetails.
+ The number of executor VMs requested.
+
+
+ :param num_executors: The num_executors of this CreateApplicationDetails.
+ :type: int
+ """
+ self._num_executors = num_executors
+
+ @property
+ def parameters(self):
+ """
+ Gets the parameters of this CreateApplicationDetails.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :return: The parameters of this CreateApplicationDetails.
+ :rtype: list[ApplicationParameter]
+ """
+ return self._parameters
+
+ @parameters.setter
+ def parameters(self, parameters):
+ """
+ Sets the parameters of this CreateApplicationDetails.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :param parameters: The parameters of this CreateApplicationDetails.
+ :type: list[ApplicationParameter]
+ """
+ self._parameters = parameters
+
+ @property
+ def spark_version(self):
+ """
+ **[Required]** Gets the spark_version of this CreateApplicationDetails.
+ The Spark version utilized to run the application.
+
+
+ :return: The spark_version of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._spark_version
+
+ @spark_version.setter
+ def spark_version(self, spark_version):
+ """
+ Sets the spark_version of this CreateApplicationDetails.
+ The Spark version utilized to run the application.
+
+
+ :param spark_version: The spark_version of this CreateApplicationDetails.
+ :type: str
+ """
+ self._spark_version = spark_version
+
+ @property
+ def warehouse_bucket_uri(self):
+ """
+ Gets the warehouse_bucket_uri of this CreateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The warehouse_bucket_uri of this CreateApplicationDetails.
+ :rtype: str
+ """
+ return self._warehouse_bucket_uri
+
+ @warehouse_bucket_uri.setter
+ def warehouse_bucket_uri(self, warehouse_bucket_uri):
+ """
+ Sets the warehouse_bucket_uri of this CreateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param warehouse_bucket_uri: The warehouse_bucket_uri of this CreateApplicationDetails.
+ :type: str
+ """
+ self._warehouse_bucket_uri = warehouse_bucket_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/create_run_details.py b/src/oci/data_flow/models/create_run_details.py
new file mode 100644
index 0000000000..324360d6a7
--- /dev/null
+++ b/src/oci/data_flow/models/create_run_details.py
@@ -0,0 +1,504 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateRunDetails(object):
+ """
+ The create run details. The following properties are optional and override the default values
+ set in the associated application:
+ - arguments
+ - configuration
+ - definedTags
+ - driverShape
+ - executorShape
+ - freeformTags
+ - logsBucketUri
+ - numExecutors
+ - parameters
+ - warehouseBucketUri
+ If the optional properties are not specified, they are copied over from the parent application.
+ Once a run is created, its properties (except for definedTags and freeformTags) cannot be changed.
+ If the parent application's properties (including definedTags and freeformTags) are updated,
+ the corresponding properties of the run will not update.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateRunDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param application_id:
+ The value to assign to the application_id property of this CreateRunDetails.
+ :type application_id: str
+
+ :param arguments:
+ The value to assign to the arguments property of this CreateRunDetails.
+ :type arguments: list[str]
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateRunDetails.
+ :type compartment_id: str
+
+ :param configuration:
+ The value to assign to the configuration property of this CreateRunDetails.
+ :type configuration: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateRunDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateRunDetails.
+ :type display_name: str
+
+ :param driver_shape:
+ The value to assign to the driver_shape property of this CreateRunDetails.
+ :type driver_shape: str
+
+ :param executor_shape:
+ The value to assign to the executor_shape property of this CreateRunDetails.
+ :type executor_shape: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateRunDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param logs_bucket_uri:
+ The value to assign to the logs_bucket_uri property of this CreateRunDetails.
+ :type logs_bucket_uri: str
+
+ :param num_executors:
+ The value to assign to the num_executors property of this CreateRunDetails.
+ :type num_executors: int
+
+ :param parameters:
+ The value to assign to the parameters property of this CreateRunDetails.
+ :type parameters: list[ApplicationParameter]
+
+ :param warehouse_bucket_uri:
+ The value to assign to the warehouse_bucket_uri property of this CreateRunDetails.
+ :type warehouse_bucket_uri: str
+
+ """
+ self.swagger_types = {
+ 'application_id': 'str',
+ 'arguments': 'list[str]',
+ 'compartment_id': 'str',
+ 'configuration': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'display_name': 'str',
+ 'driver_shape': 'str',
+ 'executor_shape': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'logs_bucket_uri': 'str',
+ 'num_executors': 'int',
+ 'parameters': 'list[ApplicationParameter]',
+ 'warehouse_bucket_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'application_id': 'applicationId',
+ 'arguments': 'arguments',
+ 'compartment_id': 'compartmentId',
+ 'configuration': 'configuration',
+ 'defined_tags': 'definedTags',
+ 'display_name': 'displayName',
+ 'driver_shape': 'driverShape',
+ 'executor_shape': 'executorShape',
+ 'freeform_tags': 'freeformTags',
+ 'logs_bucket_uri': 'logsBucketUri',
+ 'num_executors': 'numExecutors',
+ 'parameters': 'parameters',
+ 'warehouse_bucket_uri': 'warehouseBucketUri'
+ }
+
+ self._application_id = None
+ self._arguments = None
+ self._compartment_id = None
+ self._configuration = None
+ self._defined_tags = None
+ self._display_name = None
+ self._driver_shape = None
+ self._executor_shape = None
+ self._freeform_tags = None
+ self._logs_bucket_uri = None
+ self._num_executors = None
+ self._parameters = None
+ self._warehouse_bucket_uri = None
+
+ @property
+ def application_id(self):
+ """
+ **[Required]** Gets the application_id of this CreateRunDetails.
+ The application ID.
+
+
+ :return: The application_id of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._application_id
+
+ @application_id.setter
+ def application_id(self, application_id):
+ """
+ Sets the application_id of this CreateRunDetails.
+ The application ID.
+
+
+ :param application_id: The application_id of this CreateRunDetails.
+ :type: str
+ """
+ self._application_id = application_id
+
+ @property
+ def arguments(self):
+ """
+ Gets the arguments of this CreateRunDetails.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :return: The arguments of this CreateRunDetails.
+ :rtype: list[str]
+ """
+ return self._arguments
+
+ @arguments.setter
+ def arguments(self, arguments):
+ """
+ Sets the arguments of this CreateRunDetails.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :param arguments: The arguments of this CreateRunDetails.
+ :type: list[str]
+ """
+ self._arguments = arguments
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateRunDetails.
+ The OCID of the compartment that contains this application.
+
+
+ :return: The compartment_id of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateRunDetails.
+ The OCID of the compartment that contains this application.
+
+
+ :param compartment_id: The compartment_id of this CreateRunDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def configuration(self):
+ """
+ Gets the configuration of this CreateRunDetails.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :return: The configuration of this CreateRunDetails.
+ :rtype: dict(str, str)
+ """
+ return self._configuration
+
+ @configuration.setter
+ def configuration(self, configuration):
+ """
+ Sets the configuration of this CreateRunDetails.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :param configuration: The configuration of this CreateRunDetails.
+ :type: dict(str, str)
+ """
+ self._configuration = configuration
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateRunDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this CreateRunDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CreateRunDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this CreateRunDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateRunDetails.
+ A user-friendly name. It does not have to be unique. Avoid entering confidential information.
+
+
+ :return: The display_name of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateRunDetails.
+ A user-friendly name. It does not have to be unique. Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this CreateRunDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def driver_shape(self):
+ """
+ Gets the driver_shape of this CreateRunDetails.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :return: The driver_shape of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._driver_shape
+
+ @driver_shape.setter
+ def driver_shape(self, driver_shape):
+ """
+ Sets the driver_shape of this CreateRunDetails.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :param driver_shape: The driver_shape of this CreateRunDetails.
+ :type: str
+ """
+ self._driver_shape = driver_shape
+
+ @property
+ def executor_shape(self):
+ """
+ Gets the executor_shape of this CreateRunDetails.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :return: The executor_shape of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._executor_shape
+
+ @executor_shape.setter
+ def executor_shape(self, executor_shape):
+ """
+ Sets the executor_shape of this CreateRunDetails.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :param executor_shape: The executor_shape of this CreateRunDetails.
+ :type: str
+ """
+ self._executor_shape = executor_shape
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateRunDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this CreateRunDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateRunDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this CreateRunDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def logs_bucket_uri(self):
+ """
+ Gets the logs_bucket_uri of this CreateRunDetails.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The logs_bucket_uri of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._logs_bucket_uri
+
+ @logs_bucket_uri.setter
+ def logs_bucket_uri(self, logs_bucket_uri):
+ """
+ Sets the logs_bucket_uri of this CreateRunDetails.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param logs_bucket_uri: The logs_bucket_uri of this CreateRunDetails.
+ :type: str
+ """
+ self._logs_bucket_uri = logs_bucket_uri
+
+ @property
+ def num_executors(self):
+ """
+ Gets the num_executors of this CreateRunDetails.
+ The number of executor VMs requested.
+
+
+ :return: The num_executors of this CreateRunDetails.
+ :rtype: int
+ """
+ return self._num_executors
+
+ @num_executors.setter
+ def num_executors(self, num_executors):
+ """
+ Sets the num_executors of this CreateRunDetails.
+ The number of executor VMs requested.
+
+
+ :param num_executors: The num_executors of this CreateRunDetails.
+ :type: int
+ """
+ self._num_executors = num_executors
+
+ @property
+ def parameters(self):
+ """
+ Gets the parameters of this CreateRunDetails.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :return: The parameters of this CreateRunDetails.
+ :rtype: list[ApplicationParameter]
+ """
+ return self._parameters
+
+ @parameters.setter
+ def parameters(self, parameters):
+ """
+ Sets the parameters of this CreateRunDetails.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :param parameters: The parameters of this CreateRunDetails.
+ :type: list[ApplicationParameter]
+ """
+ self._parameters = parameters
+
+ @property
+ def warehouse_bucket_uri(self):
+ """
+ Gets the warehouse_bucket_uri of this CreateRunDetails.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The warehouse_bucket_uri of this CreateRunDetails.
+ :rtype: str
+ """
+ return self._warehouse_bucket_uri
+
+ @warehouse_bucket_uri.setter
+ def warehouse_bucket_uri(self, warehouse_bucket_uri):
+ """
+ Sets the warehouse_bucket_uri of this CreateRunDetails.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param warehouse_bucket_uri: The warehouse_bucket_uri of this CreateRunDetails.
+ :type: str
+ """
+ self._warehouse_bucket_uri = warehouse_bucket_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/run.py b/src/oci/data_flow/models/run.py
new file mode 100644
index 0000000000..821a45e0d5
--- /dev/null
+++ b/src/oci/data_flow/models/run.py
@@ -0,0 +1,1059 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class Run(object):
+ """
+ A run object.
+ """
+
+ #: A constant which can be used with the language property of a Run.
+ #: This constant has a value of "SCALA"
+ LANGUAGE_SCALA = "SCALA"
+
+ #: A constant which can be used with the language property of a Run.
+ #: This constant has a value of "JAVA"
+ LANGUAGE_JAVA = "JAVA"
+
+ #: A constant which can be used with the language property of a Run.
+ #: This constant has a value of "PYTHON"
+ LANGUAGE_PYTHON = "PYTHON"
+
+ #: A constant which can be used with the language property of a Run.
+ #: This constant has a value of "SQL"
+ LANGUAGE_SQL = "SQL"
+
+ #: A constant which can be used with the lifecycle_state property of a Run.
+ #: This constant has a value of "ACCEPTED"
+ LIFECYCLE_STATE_ACCEPTED = "ACCEPTED"
+
+ #: A constant which can be used with the lifecycle_state property of a Run.
+ #: This constant has a value of "IN_PROGRESS"
+ LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS"
+
+ #: A constant which can be used with the lifecycle_state property of a Run.
+ #: This constant has a value of "CANCELING"
+ LIFECYCLE_STATE_CANCELING = "CANCELING"
+
+ #: A constant which can be used with the lifecycle_state property of a Run.
+ #: This constant has a value of "CANCELED"
+ LIFECYCLE_STATE_CANCELED = "CANCELED"
+
+ #: A constant which can be used with the lifecycle_state property of a Run.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a Run.
+ #: This constant has a value of "SUCCEEDED"
+ LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new Run object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param arguments:
+ The value to assign to the arguments property of this Run.
+ :type arguments: list[str]
+
+ :param application_id:
+ The value to assign to the application_id property of this Run.
+ :type application_id: str
+
+ :param class_name:
+ The value to assign to the class_name property of this Run.
+ :type class_name: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this Run.
+ :type compartment_id: str
+
+ :param configuration:
+ The value to assign to the configuration property of this Run.
+ :type configuration: dict(str, str)
+
+ :param data_read_in_bytes:
+ The value to assign to the data_read_in_bytes property of this Run.
+ :type data_read_in_bytes: int
+
+ :param data_written_in_bytes:
+ The value to assign to the data_written_in_bytes property of this Run.
+ :type data_written_in_bytes: int
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this Run.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param display_name:
+ The value to assign to the display_name property of this Run.
+ :type display_name: str
+
+ :param driver_shape:
+ The value to assign to the driver_shape property of this Run.
+ :type driver_shape: str
+
+ :param executor_shape:
+ The value to assign to the executor_shape property of this Run.
+ :type executor_shape: str
+
+ :param file_uri:
+ The value to assign to the file_uri property of this Run.
+ :type file_uri: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this Run.
+ :type freeform_tags: dict(str, str)
+
+ :param id:
+ The value to assign to the id property of this Run.
+ :type id: str
+
+ :param language:
+ The value to assign to the language property of this Run.
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type language: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this Run.
+ :type lifecycle_details: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this Run.
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param logs_bucket_uri:
+ The value to assign to the logs_bucket_uri property of this Run.
+ :type logs_bucket_uri: str
+
+ :param num_executors:
+ The value to assign to the num_executors property of this Run.
+ :type num_executors: int
+
+ :param opc_request_id:
+ The value to assign to the opc_request_id property of this Run.
+ :type opc_request_id: str
+
+ :param owner_principal_id:
+ The value to assign to the owner_principal_id property of this Run.
+ :type owner_principal_id: str
+
+ :param owner_user_name:
+ The value to assign to the owner_user_name property of this Run.
+ :type owner_user_name: str
+
+ :param parameters:
+ The value to assign to the parameters property of this Run.
+ :type parameters: list[ApplicationParameter]
+
+ :param run_duration_in_milliseconds:
+ The value to assign to the run_duration_in_milliseconds property of this Run.
+ :type run_duration_in_milliseconds: int
+
+ :param spark_version:
+ The value to assign to the spark_version property of this Run.
+ :type spark_version: str
+
+ :param time_created:
+ The value to assign to the time_created property of this Run.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this Run.
+ :type time_updated: datetime
+
+ :param total_o_cpu:
+ The value to assign to the total_o_cpu property of this Run.
+ :type total_o_cpu: int
+
+ :param warehouse_bucket_uri:
+ The value to assign to the warehouse_bucket_uri property of this Run.
+ :type warehouse_bucket_uri: str
+
+ """
+ self.swagger_types = {
+ 'arguments': 'list[str]',
+ 'application_id': 'str',
+ 'class_name': 'str',
+ 'compartment_id': 'str',
+ 'configuration': 'dict(str, str)',
+ 'data_read_in_bytes': 'int',
+ 'data_written_in_bytes': 'int',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'display_name': 'str',
+ 'driver_shape': 'str',
+ 'executor_shape': 'str',
+ 'file_uri': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'id': 'str',
+ 'language': 'str',
+ 'lifecycle_details': 'str',
+ 'lifecycle_state': 'str',
+ 'logs_bucket_uri': 'str',
+ 'num_executors': 'int',
+ 'opc_request_id': 'str',
+ 'owner_principal_id': 'str',
+ 'owner_user_name': 'str',
+ 'parameters': 'list[ApplicationParameter]',
+ 'run_duration_in_milliseconds': 'int',
+ 'spark_version': 'str',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime',
+ 'total_o_cpu': 'int',
+ 'warehouse_bucket_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'arguments': 'arguments',
+ 'application_id': 'applicationId',
+ 'class_name': 'className',
+ 'compartment_id': 'compartmentId',
+ 'configuration': 'configuration',
+ 'data_read_in_bytes': 'dataReadInBytes',
+ 'data_written_in_bytes': 'dataWrittenInBytes',
+ 'defined_tags': 'definedTags',
+ 'display_name': 'displayName',
+ 'driver_shape': 'driverShape',
+ 'executor_shape': 'executorShape',
+ 'file_uri': 'fileUri',
+ 'freeform_tags': 'freeformTags',
+ 'id': 'id',
+ 'language': 'language',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'lifecycle_state': 'lifecycleState',
+ 'logs_bucket_uri': 'logsBucketUri',
+ 'num_executors': 'numExecutors',
+ 'opc_request_id': 'opcRequestId',
+ 'owner_principal_id': 'ownerPrincipalId',
+ 'owner_user_name': 'ownerUserName',
+ 'parameters': 'parameters',
+ 'run_duration_in_milliseconds': 'runDurationInMilliseconds',
+ 'spark_version': 'sparkVersion',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated',
+ 'total_o_cpu': 'totalOCpu',
+ 'warehouse_bucket_uri': 'warehouseBucketUri'
+ }
+
+ self._arguments = None
+ self._application_id = None
+ self._class_name = None
+ self._compartment_id = None
+ self._configuration = None
+ self._data_read_in_bytes = None
+ self._data_written_in_bytes = None
+ self._defined_tags = None
+ self._display_name = None
+ self._driver_shape = None
+ self._executor_shape = None
+ self._file_uri = None
+ self._freeform_tags = None
+ self._id = None
+ self._language = None
+ self._lifecycle_details = None
+ self._lifecycle_state = None
+ self._logs_bucket_uri = None
+ self._num_executors = None
+ self._opc_request_id = None
+ self._owner_principal_id = None
+ self._owner_user_name = None
+ self._parameters = None
+ self._run_duration_in_milliseconds = None
+ self._spark_version = None
+ self._time_created = None
+ self._time_updated = None
+ self._total_o_cpu = None
+ self._warehouse_bucket_uri = None
+
+ @property
+ def arguments(self):
+ """
+ Gets the arguments of this Run.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :return: The arguments of this Run.
+ :rtype: list[str]
+ """
+ return self._arguments
+
+ @arguments.setter
+ def arguments(self, arguments):
+ """
+ Sets the arguments of this Run.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :param arguments: The arguments of this Run.
+ :type: list[str]
+ """
+ self._arguments = arguments
+
+ @property
+ def application_id(self):
+ """
+ **[Required]** Gets the application_id of this Run.
+ The application ID.
+
+
+ :return: The application_id of this Run.
+ :rtype: str
+ """
+ return self._application_id
+
+ @application_id.setter
+ def application_id(self, application_id):
+ """
+ Sets the application_id of this Run.
+ The application ID.
+
+
+ :param application_id: The application_id of this Run.
+ :type: str
+ """
+ self._application_id = application_id
+
+ @property
+ def class_name(self):
+ """
+ Gets the class_name of this Run.
+ The class for the application.
+
+
+ :return: The class_name of this Run.
+ :rtype: str
+ """
+ return self._class_name
+
+ @class_name.setter
+ def class_name(self, class_name):
+ """
+ Sets the class_name of this Run.
+ The class for the application.
+
+
+ :param class_name: The class_name of this Run.
+ :type: str
+ """
+ self._class_name = class_name
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this Run.
+ The OCID of the compartment that contains this application.
+
+
+ :return: The compartment_id of this Run.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this Run.
+ The OCID of the compartment that contains this application.
+
+
+ :param compartment_id: The compartment_id of this Run.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def configuration(self):
+ """
+ Gets the configuration of this Run.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :return: The configuration of this Run.
+ :rtype: dict(str, str)
+ """
+ return self._configuration
+
+ @configuration.setter
+ def configuration(self, configuration):
+ """
+ Sets the configuration of this Run.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :param configuration: The configuration of this Run.
+ :type: dict(str, str)
+ """
+ self._configuration = configuration
+
+ @property
+ def data_read_in_bytes(self):
+ """
+ Gets the data_read_in_bytes of this Run.
+ The data read by the run in bytes.
+
+
+ :return: The data_read_in_bytes of this Run.
+ :rtype: int
+ """
+ return self._data_read_in_bytes
+
+ @data_read_in_bytes.setter
+ def data_read_in_bytes(self, data_read_in_bytes):
+ """
+ Sets the data_read_in_bytes of this Run.
+ The data read by the run in bytes.
+
+
+ :param data_read_in_bytes: The data_read_in_bytes of this Run.
+ :type: int
+ """
+ self._data_read_in_bytes = data_read_in_bytes
+
+ @property
+ def data_written_in_bytes(self):
+ """
+ Gets the data_written_in_bytes of this Run.
+ The data written by the run in bytes.
+
+
+ :return: The data_written_in_bytes of this Run.
+ :rtype: int
+ """
+ return self._data_written_in_bytes
+
+ @data_written_in_bytes.setter
+ def data_written_in_bytes(self, data_written_in_bytes):
+ """
+ Sets the data_written_in_bytes of this Run.
+ The data written by the run in bytes.
+
+
+ :param data_written_in_bytes: The data_written_in_bytes of this Run.
+ :type: int
+ """
+ self._data_written_in_bytes = data_written_in_bytes
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this Run.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this Run.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this Run.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this Run.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this Run.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :return: The display_name of this Run.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this Run.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :param display_name: The display_name of this Run.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def driver_shape(self):
+ """
+ **[Required]** Gets the driver_shape of this Run.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :return: The driver_shape of this Run.
+ :rtype: str
+ """
+ return self._driver_shape
+
+ @driver_shape.setter
+ def driver_shape(self, driver_shape):
+ """
+ Sets the driver_shape of this Run.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :param driver_shape: The driver_shape of this Run.
+ :type: str
+ """
+ self._driver_shape = driver_shape
+
+ @property
+ def executor_shape(self):
+ """
+ **[Required]** Gets the executor_shape of this Run.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :return: The executor_shape of this Run.
+ :rtype: str
+ """
+ return self._executor_shape
+
+ @executor_shape.setter
+ def executor_shape(self, executor_shape):
+ """
+ Sets the executor_shape of this Run.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :param executor_shape: The executor_shape of this Run.
+ :type: str
+ """
+ self._executor_shape = executor_shape
+
+ @property
+ def file_uri(self):
+ """
+ **[Required]** Gets the file_uri of this Run.
+ An Oracle Cloud Infrastructure URI of the file containing the application to execute.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The file_uri of this Run.
+ :rtype: str
+ """
+ return self._file_uri
+
+ @file_uri.setter
+ def file_uri(self, file_uri):
+ """
+ Sets the file_uri of this Run.
+ An Oracle Cloud Infrastructure URI of the file containing the application to execute.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param file_uri: The file_uri of this Run.
+ :type: str
+ """
+ self._file_uri = file_uri
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this Run.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this Run.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this Run.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this Run.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this Run.
+ The ID of a run.
+
+
+ :return: The id of this Run.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this Run.
+ The ID of a run.
+
+
+ :param id: The id of this Run.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def language(self):
+ """
+ **[Required]** Gets the language of this Run.
+ The Spark language.
+
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The language of this Run.
+ :rtype: str
+ """
+ return self._language
+
+ @language.setter
+ def language(self, language):
+ """
+ Sets the language of this Run.
+ The Spark language.
+
+
+ :param language: The language of this Run.
+ :type: str
+ """
+ allowed_values = ["SCALA", "JAVA", "PYTHON", "SQL"]
+ if not value_allowed_none_or_none_sentinel(language, allowed_values):
+ language = 'UNKNOWN_ENUM_VALUE'
+ self._language = language
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this Run.
+ The detailed messages about the lifecycle state.
+
+
+ :return: The lifecycle_details of this Run.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this Run.
+ The detailed messages about the lifecycle state.
+
+
+ :param lifecycle_details: The lifecycle_details of this Run.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this Run.
+ The current state of this run.
+
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this Run.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this Run.
+ The current state of this run.
+
+
+ :param lifecycle_state: The lifecycle_state of this Run.
+ :type: str
+ """
+ allowed_values = ["ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def logs_bucket_uri(self):
+ """
+ Gets the logs_bucket_uri of this Run.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The logs_bucket_uri of this Run.
+ :rtype: str
+ """
+ return self._logs_bucket_uri
+
+ @logs_bucket_uri.setter
+ def logs_bucket_uri(self, logs_bucket_uri):
+ """
+ Sets the logs_bucket_uri of this Run.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param logs_bucket_uri: The logs_bucket_uri of this Run.
+ :type: str
+ """
+ self._logs_bucket_uri = logs_bucket_uri
+
+ @property
+ def num_executors(self):
+ """
+ **[Required]** Gets the num_executors of this Run.
+ The number of executor VMs requested.
+
+
+ :return: The num_executors of this Run.
+ :rtype: int
+ """
+ return self._num_executors
+
+ @num_executors.setter
+ def num_executors(self, num_executors):
+ """
+ Sets the num_executors of this Run.
+ The number of executor VMs requested.
+
+
+ :param num_executors: The num_executors of this Run.
+ :type: int
+ """
+ self._num_executors = num_executors
+
+ @property
+ def opc_request_id(self):
+ """
+ Gets the opc_request_id of this Run.
+ Unique Oracle-assigned identifier for the request.
+ If you need to contact Oracle about a particular request, please provide the request ID.
+
+
+ :return: The opc_request_id of this Run.
+ :rtype: str
+ """
+ return self._opc_request_id
+
+ @opc_request_id.setter
+ def opc_request_id(self, opc_request_id):
+ """
+ Sets the opc_request_id of this Run.
+ Unique Oracle-assigned identifier for the request.
+ If you need to contact Oracle about a particular request, please provide the request ID.
+
+
+ :param opc_request_id: The opc_request_id of this Run.
+ :type: str
+ """
+ self._opc_request_id = opc_request_id
+
+ @property
+ def owner_principal_id(self):
+ """
+ Gets the owner_principal_id of this Run.
+ The OCID of the user who created the resource.
+
+
+ :return: The owner_principal_id of this Run.
+ :rtype: str
+ """
+ return self._owner_principal_id
+
+ @owner_principal_id.setter
+ def owner_principal_id(self, owner_principal_id):
+ """
+ Sets the owner_principal_id of this Run.
+ The OCID of the user who created the resource.
+
+
+ :param owner_principal_id: The owner_principal_id of this Run.
+ :type: str
+ """
+ self._owner_principal_id = owner_principal_id
+
+ @property
+ def owner_user_name(self):
+ """
+ Gets the owner_user_name of this Run.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :return: The owner_user_name of this Run.
+ :rtype: str
+ """
+ return self._owner_user_name
+
+ @owner_user_name.setter
+ def owner_user_name(self, owner_user_name):
+ """
+ Sets the owner_user_name of this Run.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :param owner_user_name: The owner_user_name of this Run.
+ :type: str
+ """
+ self._owner_user_name = owner_user_name
+
+ @property
+ def parameters(self):
+ """
+ Gets the parameters of this Run.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :return: The parameters of this Run.
+ :rtype: list[ApplicationParameter]
+ """
+ return self._parameters
+
+ @parameters.setter
+ def parameters(self, parameters):
+ """
+ Sets the parameters of this Run.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :param parameters: The parameters of this Run.
+ :type: list[ApplicationParameter]
+ """
+ self._parameters = parameters
+
+ @property
+ def run_duration_in_milliseconds(self):
+ """
+ Gets the run_duration_in_milliseconds of this Run.
+ The duration of the run in milliseconds.
+
+
+ :return: The run_duration_in_milliseconds of this Run.
+ :rtype: int
+ """
+ return self._run_duration_in_milliseconds
+
+ @run_duration_in_milliseconds.setter
+ def run_duration_in_milliseconds(self, run_duration_in_milliseconds):
+ """
+ Sets the run_duration_in_milliseconds of this Run.
+ The duration of the run in milliseconds.
+
+
+ :param run_duration_in_milliseconds: The run_duration_in_milliseconds of this Run.
+ :type: int
+ """
+ self._run_duration_in_milliseconds = run_duration_in_milliseconds
+
+ @property
+ def spark_version(self):
+ """
+ **[Required]** Gets the spark_version of this Run.
+ The Spark version utilized to run the application.
+
+
+ :return: The spark_version of this Run.
+ :rtype: str
+ """
+ return self._spark_version
+
+ @spark_version.setter
+ def spark_version(self, spark_version):
+ """
+ Sets the spark_version of this Run.
+ The Spark version utilized to run the application.
+
+
+ :param spark_version: The spark_version of this Run.
+ :type: str
+ """
+ self._spark_version = spark_version
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this Run.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this Run.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this Run.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this Run.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this Run.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this Run.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this Run.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this Run.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ @property
+ def total_o_cpu(self):
+ """
+ Gets the total_o_cpu of this Run.
+ The total number of oCPU requested by the run.
+
+
+ :return: The total_o_cpu of this Run.
+ :rtype: int
+ """
+ return self._total_o_cpu
+
+ @total_o_cpu.setter
+ def total_o_cpu(self, total_o_cpu):
+ """
+ Sets the total_o_cpu of this Run.
+ The total number of oCPU requested by the run.
+
+
+ :param total_o_cpu: The total_o_cpu of this Run.
+ :type: int
+ """
+ self._total_o_cpu = total_o_cpu
+
+ @property
+ def warehouse_bucket_uri(self):
+ """
+ Gets the warehouse_bucket_uri of this Run.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The warehouse_bucket_uri of this Run.
+ :rtype: str
+ """
+ return self._warehouse_bucket_uri
+
+ @warehouse_bucket_uri.setter
+ def warehouse_bucket_uri(self, warehouse_bucket_uri):
+ """
+ Sets the warehouse_bucket_uri of this Run.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param warehouse_bucket_uri: The warehouse_bucket_uri of this Run.
+ :type: str
+ """
+ self._warehouse_bucket_uri = warehouse_bucket_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/run_log_summary.py b/src/oci/data_flow/models/run_log_summary.py
new file mode 100644
index 0000000000..35755f8f73
--- /dev/null
+++ b/src/oci/data_flow/models/run_log_summary.py
@@ -0,0 +1,266 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class RunLogSummary(object):
+ """
+ A summary of a log associated with a particular run.
+ """
+
+ #: A constant which can be used with the source property of a RunLogSummary.
+ #: This constant has a value of "APPLICATION"
+ SOURCE_APPLICATION = "APPLICATION"
+
+ #: A constant which can be used with the source property of a RunLogSummary.
+ #: This constant has a value of "DRIVER"
+ SOURCE_DRIVER = "DRIVER"
+
+ #: A constant which can be used with the source property of a RunLogSummary.
+ #: This constant has a value of "EXECUTOR"
+ SOURCE_EXECUTOR = "EXECUTOR"
+
+ #: A constant which can be used with the type property of a RunLogSummary.
+ #: This constant has a value of "STDERR"
+ TYPE_STDERR = "STDERR"
+
+ #: A constant which can be used with the type property of a RunLogSummary.
+ #: This constant has a value of "STDOUT"
+ TYPE_STDOUT = "STDOUT"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new RunLogSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param name:
+ The value to assign to the name property of this RunLogSummary.
+ :type name: str
+
+ :param run_id:
+ The value to assign to the run_id property of this RunLogSummary.
+ :type run_id: str
+
+ :param size_in_bytes:
+ The value to assign to the size_in_bytes property of this RunLogSummary.
+ :type size_in_bytes: int
+
+ :param source:
+ The value to assign to the source property of this RunLogSummary.
+ Allowed values for this property are: "APPLICATION", "DRIVER", "EXECUTOR", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type source: str
+
+ :param time_created:
+ The value to assign to the time_created property of this RunLogSummary.
+ :type time_created: datetime
+
+ :param type:
+ The value to assign to the type property of this RunLogSummary.
+ Allowed values for this property are: "STDERR", "STDOUT", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type type: str
+
+ """
+ self.swagger_types = {
+ 'name': 'str',
+ 'run_id': 'str',
+ 'size_in_bytes': 'int',
+ 'source': 'str',
+ 'time_created': 'datetime',
+ 'type': 'str'
+ }
+
+ self.attribute_map = {
+ 'name': 'name',
+ 'run_id': 'runId',
+ 'size_in_bytes': 'sizeInBytes',
+ 'source': 'source',
+ 'time_created': 'timeCreated',
+ 'type': 'type'
+ }
+
+ self._name = None
+ self._run_id = None
+ self._size_in_bytes = None
+ self._source = None
+ self._time_created = None
+ self._type = None
+
+ @property
+ def name(self):
+ """
+ **[Required]** Gets the name of this RunLogSummary.
+ The name of the log.
+ Example: spark_driver_stderr_20190917T114000Z.log.gz
+
+
+ :return: The name of this RunLogSummary.
+ :rtype: str
+ """
+ return self._name
+
+ @name.setter
+ def name(self, name):
+ """
+ Sets the name of this RunLogSummary.
+ The name of the log.
+ Example: spark_driver_stderr_20190917T114000Z.log.gz
+
+
+ :param name: The name of this RunLogSummary.
+ :type: str
+ """
+ self._name = name
+
+ @property
+ def run_id(self):
+ """
+ **[Required]** Gets the run_id of this RunLogSummary.
+ The runId associated with the log.
+
+
+ :return: The run_id of this RunLogSummary.
+ :rtype: str
+ """
+ return self._run_id
+
+ @run_id.setter
+ def run_id(self, run_id):
+ """
+ Sets the run_id of this RunLogSummary.
+ The runId associated with the log.
+
+
+ :param run_id: The run_id of this RunLogSummary.
+ :type: str
+ """
+ self._run_id = run_id
+
+ @property
+ def size_in_bytes(self):
+ """
+ Gets the size_in_bytes of this RunLogSummary.
+ The size of the object in bytes.
+
+
+ :return: The size_in_bytes of this RunLogSummary.
+ :rtype: int
+ """
+ return self._size_in_bytes
+
+ @size_in_bytes.setter
+ def size_in_bytes(self, size_in_bytes):
+ """
+ Sets the size_in_bytes of this RunLogSummary.
+ The size of the object in bytes.
+
+
+ :param size_in_bytes: The size_in_bytes of this RunLogSummary.
+ :type: int
+ """
+ self._size_in_bytes = size_in_bytes
+
+ @property
+ def source(self):
+ """
+ **[Required]** Gets the source of this RunLogSummary.
+ The source of the log such as driver and executor.
+
+ Allowed values for this property are: "APPLICATION", "DRIVER", "EXECUTOR", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The source of this RunLogSummary.
+ :rtype: str
+ """
+ return self._source
+
+ @source.setter
+ def source(self, source):
+ """
+ Sets the source of this RunLogSummary.
+ The source of the log such as driver and executor.
+
+
+ :param source: The source of this RunLogSummary.
+ :type: str
+ """
+ allowed_values = ["APPLICATION", "DRIVER", "EXECUTOR"]
+ if not value_allowed_none_or_none_sentinel(source, allowed_values):
+ source = 'UNKNOWN_ENUM_VALUE'
+ self._source = source
+
+ @property
+ def time_created(self):
+ """
+ Gets the time_created of this RunLogSummary.
+ The date and time the object was created, as described in `RFC 2616`__, section 14.29.
+
+ __ https://tools.ietf.org/rfc/rfc2616
+
+
+ :return: The time_created of this RunLogSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this RunLogSummary.
+ The date and time the object was created, as described in `RFC 2616`__, section 14.29.
+
+ __ https://tools.ietf.org/rfc/rfc2616
+
+
+ :param time_created: The time_created of this RunLogSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def type(self):
+ """
+ **[Required]** Gets the type of this RunLogSummary.
+ The type of log such as stdout and stderr.
+
+ Allowed values for this property are: "STDERR", "STDOUT", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The type of this RunLogSummary.
+ :rtype: str
+ """
+ return self._type
+
+ @type.setter
+ def type(self, type):
+ """
+ Sets the type of this RunLogSummary.
+ The type of log such as stdout and stderr.
+
+
+ :param type: The type of this RunLogSummary.
+ :type: str
+ """
+ allowed_values = ["STDERR", "STDOUT"]
+ if not value_allowed_none_or_none_sentinel(type, allowed_values):
+ type = 'UNKNOWN_ENUM_VALUE'
+ self._type = type
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/run_summary.py b/src/oci/data_flow/models/run_summary.py
new file mode 100644
index 0000000000..581ca9d4c9
--- /dev/null
+++ b/src/oci/data_flow/models/run_summary.py
@@ -0,0 +1,682 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class RunSummary(object):
+ """
+ A summary of the run.
+ """
+
+ #: A constant which can be used with the language property of a RunSummary.
+ #: This constant has a value of "SCALA"
+ LANGUAGE_SCALA = "SCALA"
+
+ #: A constant which can be used with the language property of a RunSummary.
+ #: This constant has a value of "JAVA"
+ LANGUAGE_JAVA = "JAVA"
+
+ #: A constant which can be used with the language property of a RunSummary.
+ #: This constant has a value of "PYTHON"
+ LANGUAGE_PYTHON = "PYTHON"
+
+ #: A constant which can be used with the language property of a RunSummary.
+ #: This constant has a value of "SQL"
+ LANGUAGE_SQL = "SQL"
+
+ #: A constant which can be used with the lifecycle_state property of a RunSummary.
+ #: This constant has a value of "ACCEPTED"
+ LIFECYCLE_STATE_ACCEPTED = "ACCEPTED"
+
+ #: A constant which can be used with the lifecycle_state property of a RunSummary.
+ #: This constant has a value of "IN_PROGRESS"
+ LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS"
+
+ #: A constant which can be used with the lifecycle_state property of a RunSummary.
+ #: This constant has a value of "CANCELING"
+ LIFECYCLE_STATE_CANCELING = "CANCELING"
+
+ #: A constant which can be used with the lifecycle_state property of a RunSummary.
+ #: This constant has a value of "CANCELED"
+ LIFECYCLE_STATE_CANCELED = "CANCELED"
+
+ #: A constant which can be used with the lifecycle_state property of a RunSummary.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a RunSummary.
+ #: This constant has a value of "SUCCEEDED"
+ LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new RunSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param application_id:
+ The value to assign to the application_id property of this RunSummary.
+ :type application_id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this RunSummary.
+ :type compartment_id: str
+
+ :param data_read_in_bytes:
+ The value to assign to the data_read_in_bytes property of this RunSummary.
+ :type data_read_in_bytes: int
+
+ :param data_written_in_bytes:
+ The value to assign to the data_written_in_bytes property of this RunSummary.
+ :type data_written_in_bytes: int
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this RunSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param display_name:
+ The value to assign to the display_name property of this RunSummary.
+ :type display_name: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this RunSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param id:
+ The value to assign to the id property of this RunSummary.
+ :type id: str
+
+ :param language:
+ The value to assign to the language property of this RunSummary.
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type language: str
+
+ :param lifecycle_details:
+ The value to assign to the lifecycle_details property of this RunSummary.
+ :type lifecycle_details: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this RunSummary.
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param opc_request_id:
+ The value to assign to the opc_request_id property of this RunSummary.
+ :type opc_request_id: str
+
+ :param owner_principal_id:
+ The value to assign to the owner_principal_id property of this RunSummary.
+ :type owner_principal_id: str
+
+ :param owner_user_name:
+ The value to assign to the owner_user_name property of this RunSummary.
+ :type owner_user_name: str
+
+ :param run_duration_in_milliseconds:
+ The value to assign to the run_duration_in_milliseconds property of this RunSummary.
+ :type run_duration_in_milliseconds: int
+
+ :param total_o_cpu:
+ The value to assign to the total_o_cpu property of this RunSummary.
+ :type total_o_cpu: int
+
+ :param time_created:
+ The value to assign to the time_created property of this RunSummary.
+ :type time_created: datetime
+
+ :param time_updated:
+ The value to assign to the time_updated property of this RunSummary.
+ :type time_updated: datetime
+
+ """
+ self.swagger_types = {
+ 'application_id': 'str',
+ 'compartment_id': 'str',
+ 'data_read_in_bytes': 'int',
+ 'data_written_in_bytes': 'int',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'display_name': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'id': 'str',
+ 'language': 'str',
+ 'lifecycle_details': 'str',
+ 'lifecycle_state': 'str',
+ 'opc_request_id': 'str',
+ 'owner_principal_id': 'str',
+ 'owner_user_name': 'str',
+ 'run_duration_in_milliseconds': 'int',
+ 'total_o_cpu': 'int',
+ 'time_created': 'datetime',
+ 'time_updated': 'datetime'
+ }
+
+ self.attribute_map = {
+ 'application_id': 'applicationId',
+ 'compartment_id': 'compartmentId',
+ 'data_read_in_bytes': 'dataReadInBytes',
+ 'data_written_in_bytes': 'dataWrittenInBytes',
+ 'defined_tags': 'definedTags',
+ 'display_name': 'displayName',
+ 'freeform_tags': 'freeformTags',
+ 'id': 'id',
+ 'language': 'language',
+ 'lifecycle_details': 'lifecycleDetails',
+ 'lifecycle_state': 'lifecycleState',
+ 'opc_request_id': 'opcRequestId',
+ 'owner_principal_id': 'ownerPrincipalId',
+ 'owner_user_name': 'ownerUserName',
+ 'run_duration_in_milliseconds': 'runDurationInMilliseconds',
+ 'total_o_cpu': 'totalOCpu',
+ 'time_created': 'timeCreated',
+ 'time_updated': 'timeUpdated'
+ }
+
+ self._application_id = None
+ self._compartment_id = None
+ self._data_read_in_bytes = None
+ self._data_written_in_bytes = None
+ self._defined_tags = None
+ self._display_name = None
+ self._freeform_tags = None
+ self._id = None
+ self._language = None
+ self._lifecycle_details = None
+ self._lifecycle_state = None
+ self._opc_request_id = None
+ self._owner_principal_id = None
+ self._owner_user_name = None
+ self._run_duration_in_milliseconds = None
+ self._total_o_cpu = None
+ self._time_created = None
+ self._time_updated = None
+
+ @property
+ def application_id(self):
+ """
+ **[Required]** Gets the application_id of this RunSummary.
+ The application ID.
+
+
+ :return: The application_id of this RunSummary.
+ :rtype: str
+ """
+ return self._application_id
+
+ @application_id.setter
+ def application_id(self, application_id):
+ """
+ Sets the application_id of this RunSummary.
+ The application ID.
+
+
+ :param application_id: The application_id of this RunSummary.
+ :type: str
+ """
+ self._application_id = application_id
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this RunSummary.
+ The OCID of the compartment that contains this application.
+
+
+ :return: The compartment_id of this RunSummary.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this RunSummary.
+ The OCID of the compartment that contains this application.
+
+
+ :param compartment_id: The compartment_id of this RunSummary.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def data_read_in_bytes(self):
+ """
+ Gets the data_read_in_bytes of this RunSummary.
+ The data read by the run in bytes.
+
+
+ :return: The data_read_in_bytes of this RunSummary.
+ :rtype: int
+ """
+ return self._data_read_in_bytes
+
+ @data_read_in_bytes.setter
+ def data_read_in_bytes(self, data_read_in_bytes):
+ """
+ Sets the data_read_in_bytes of this RunSummary.
+ The data read by the run in bytes.
+
+
+ :param data_read_in_bytes: The data_read_in_bytes of this RunSummary.
+ :type: int
+ """
+ self._data_read_in_bytes = data_read_in_bytes
+
+ @property
+ def data_written_in_bytes(self):
+ """
+ Gets the data_written_in_bytes of this RunSummary.
+ The data written by the run in bytes.
+
+
+ :return: The data_written_in_bytes of this RunSummary.
+ :rtype: int
+ """
+ return self._data_written_in_bytes
+
+ @data_written_in_bytes.setter
+ def data_written_in_bytes(self, data_written_in_bytes):
+ """
+ Sets the data_written_in_bytes of this RunSummary.
+ The data written by the run in bytes.
+
+
+ :param data_written_in_bytes: The data_written_in_bytes of this RunSummary.
+ :type: int
+ """
+ self._data_written_in_bytes = data_written_in_bytes
+
+ @property
+ def defined_tags(self):
+ """
+ **[Required]** Gets the defined_tags of this RunSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this RunSummary.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this RunSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this RunSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this RunSummary.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :return: The display_name of this RunSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this RunSummary.
+ A user-friendly name. This name is not necessarily unique.
+
+
+ :param display_name: The display_name of this RunSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def freeform_tags(self):
+ """
+ **[Required]** Gets the freeform_tags of this RunSummary.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this RunSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this RunSummary.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this RunSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this RunSummary.
+ The ID of a run.
+
+
+ :return: The id of this RunSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this RunSummary.
+ The ID of a run.
+
+
+ :param id: The id of this RunSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def language(self):
+ """
+ **[Required]** Gets the language of this RunSummary.
+ The Spark language.
+
+ Allowed values for this property are: "SCALA", "JAVA", "PYTHON", "SQL", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The language of this RunSummary.
+ :rtype: str
+ """
+ return self._language
+
+ @language.setter
+ def language(self, language):
+ """
+ Sets the language of this RunSummary.
+ The Spark language.
+
+
+ :param language: The language of this RunSummary.
+ :type: str
+ """
+ allowed_values = ["SCALA", "JAVA", "PYTHON", "SQL"]
+ if not value_allowed_none_or_none_sentinel(language, allowed_values):
+ language = 'UNKNOWN_ENUM_VALUE'
+ self._language = language
+
+ @property
+ def lifecycle_details(self):
+ """
+ Gets the lifecycle_details of this RunSummary.
+ The detailed messages about the lifecycle state.
+
+
+ :return: The lifecycle_details of this RunSummary.
+ :rtype: str
+ """
+ return self._lifecycle_details
+
+ @lifecycle_details.setter
+ def lifecycle_details(self, lifecycle_details):
+ """
+ Sets the lifecycle_details of this RunSummary.
+ The detailed messages about the lifecycle state.
+
+
+ :param lifecycle_details: The lifecycle_details of this RunSummary.
+ :type: str
+ """
+ self._lifecycle_details = lifecycle_details
+
+ @property
+ def lifecycle_state(self):
+ """
+ **[Required]** Gets the lifecycle_state of this RunSummary.
+ The current state of this run.
+
+ Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this RunSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this RunSummary.
+ The current state of this run.
+
+
+ :param lifecycle_state: The lifecycle_state of this RunSummary.
+ :type: str
+ """
+ allowed_values = ["ACCEPTED", "IN_PROGRESS", "CANCELING", "CANCELED", "FAILED", "SUCCEEDED"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def opc_request_id(self):
+ """
+ Gets the opc_request_id of this RunSummary.
+ Unique Oracle-assigned identifier for the request.
+ If you need to contact Oracle about a particular request, please provide the request ID.
+
+
+ :return: The opc_request_id of this RunSummary.
+ :rtype: str
+ """
+ return self._opc_request_id
+
+ @opc_request_id.setter
+ def opc_request_id(self, opc_request_id):
+ """
+ Sets the opc_request_id of this RunSummary.
+ Unique Oracle-assigned identifier for the request.
+ If you need to contact Oracle about a particular request, please provide the request ID.
+
+
+ :param opc_request_id: The opc_request_id of this RunSummary.
+ :type: str
+ """
+ self._opc_request_id = opc_request_id
+
+ @property
+ def owner_principal_id(self):
+ """
+ Gets the owner_principal_id of this RunSummary.
+ The OCID of the user who created the resource.
+
+
+ :return: The owner_principal_id of this RunSummary.
+ :rtype: str
+ """
+ return self._owner_principal_id
+
+ @owner_principal_id.setter
+ def owner_principal_id(self, owner_principal_id):
+ """
+ Sets the owner_principal_id of this RunSummary.
+ The OCID of the user who created the resource.
+
+
+ :param owner_principal_id: The owner_principal_id of this RunSummary.
+ :type: str
+ """
+ self._owner_principal_id = owner_principal_id
+
+ @property
+ def owner_user_name(self):
+ """
+ Gets the owner_user_name of this RunSummary.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :return: The owner_user_name of this RunSummary.
+ :rtype: str
+ """
+ return self._owner_user_name
+
+ @owner_user_name.setter
+ def owner_user_name(self, owner_user_name):
+ """
+ Sets the owner_user_name of this RunSummary.
+ The username of the user who created the resource. If the username of the owner does not exist,
+ `null` will be returned and the caller should refer to the ownerPrincipalId value instead.
+
+
+ :param owner_user_name: The owner_user_name of this RunSummary.
+ :type: str
+ """
+ self._owner_user_name = owner_user_name
+
+ @property
+ def run_duration_in_milliseconds(self):
+ """
+ Gets the run_duration_in_milliseconds of this RunSummary.
+ The duration of the run in milliseconds.
+
+
+ :return: The run_duration_in_milliseconds of this RunSummary.
+ :rtype: int
+ """
+ return self._run_duration_in_milliseconds
+
+ @run_duration_in_milliseconds.setter
+ def run_duration_in_milliseconds(self, run_duration_in_milliseconds):
+ """
+ Sets the run_duration_in_milliseconds of this RunSummary.
+ The duration of the run in milliseconds.
+
+
+ :param run_duration_in_milliseconds: The run_duration_in_milliseconds of this RunSummary.
+ :type: int
+ """
+ self._run_duration_in_milliseconds = run_duration_in_milliseconds
+
+ @property
+ def total_o_cpu(self):
+ """
+ Gets the total_o_cpu of this RunSummary.
+ The total number of oCPU requested by the run.
+
+
+ :return: The total_o_cpu of this RunSummary.
+ :rtype: int
+ """
+ return self._total_o_cpu
+
+ @total_o_cpu.setter
+ def total_o_cpu(self, total_o_cpu):
+ """
+ Sets the total_o_cpu of this RunSummary.
+ The total number of oCPU requested by the run.
+
+
+ :param total_o_cpu: The total_o_cpu of this RunSummary.
+ :type: int
+ """
+ self._total_o_cpu = total_o_cpu
+
+ @property
+ def time_created(self):
+ """
+ **[Required]** Gets the time_created of this RunSummary.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_created of this RunSummary.
+ :rtype: datetime
+ """
+ return self._time_created
+
+ @time_created.setter
+ def time_created(self, time_created):
+ """
+ Sets the time_created of this RunSummary.
+ The date and time a application was created, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_created: The time_created of this RunSummary.
+ :type: datetime
+ """
+ self._time_created = time_created
+
+ @property
+ def time_updated(self):
+ """
+ **[Required]** Gets the time_updated of this RunSummary.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :return: The time_updated of this RunSummary.
+ :rtype: datetime
+ """
+ return self._time_updated
+
+ @time_updated.setter
+ def time_updated(self, time_updated):
+ """
+ Sets the time_updated of this RunSummary.
+ The date and time a application was updated, expressed in `RFC 3339`__ timestamp format.
+ Example: `2018-04-03T21:10:29.600Z`
+
+ __ https://tools.ietf.org/html/rfc3339
+
+
+ :param time_updated: The time_updated of this RunSummary.
+ :type: datetime
+ """
+ self._time_updated = time_updated
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/update_application_details.py b/src/oci/data_flow/models/update_application_details.py
new file mode 100644
index 0000000000..f7e2482fbf
--- /dev/null
+++ b/src/oci/data_flow/models/update_application_details.py
@@ -0,0 +1,458 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateApplicationDetails(object):
+ """
+ The update application details.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateApplicationDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param arguments:
+ The value to assign to the arguments property of this UpdateApplicationDetails.
+ :type arguments: list[str]
+
+ :param configuration:
+ The value to assign to the configuration property of this UpdateApplicationDetails.
+ :type configuration: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateApplicationDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param description:
+ The value to assign to the description property of this UpdateApplicationDetails.
+ :type description: str
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateApplicationDetails.
+ :type display_name: str
+
+ :param driver_shape:
+ The value to assign to the driver_shape property of this UpdateApplicationDetails.
+ :type driver_shape: str
+
+ :param executor_shape:
+ The value to assign to the executor_shape property of this UpdateApplicationDetails.
+ :type executor_shape: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateApplicationDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param logs_bucket_uri:
+ The value to assign to the logs_bucket_uri property of this UpdateApplicationDetails.
+ :type logs_bucket_uri: str
+
+ :param num_executors:
+ The value to assign to the num_executors property of this UpdateApplicationDetails.
+ :type num_executors: int
+
+ :param parameters:
+ The value to assign to the parameters property of this UpdateApplicationDetails.
+ :type parameters: list[ApplicationParameter]
+
+ :param warehouse_bucket_uri:
+ The value to assign to the warehouse_bucket_uri property of this UpdateApplicationDetails.
+ :type warehouse_bucket_uri: str
+
+ """
+ self.swagger_types = {
+ 'arguments': 'list[str]',
+ 'configuration': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'description': 'str',
+ 'display_name': 'str',
+ 'driver_shape': 'str',
+ 'executor_shape': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'logs_bucket_uri': 'str',
+ 'num_executors': 'int',
+ 'parameters': 'list[ApplicationParameter]',
+ 'warehouse_bucket_uri': 'str'
+ }
+
+ self.attribute_map = {
+ 'arguments': 'arguments',
+ 'configuration': 'configuration',
+ 'defined_tags': 'definedTags',
+ 'description': 'description',
+ 'display_name': 'displayName',
+ 'driver_shape': 'driverShape',
+ 'executor_shape': 'executorShape',
+ 'freeform_tags': 'freeformTags',
+ 'logs_bucket_uri': 'logsBucketUri',
+ 'num_executors': 'numExecutors',
+ 'parameters': 'parameters',
+ 'warehouse_bucket_uri': 'warehouseBucketUri'
+ }
+
+ self._arguments = None
+ self._configuration = None
+ self._defined_tags = None
+ self._description = None
+ self._display_name = None
+ self._driver_shape = None
+ self._executor_shape = None
+ self._freeform_tags = None
+ self._logs_bucket_uri = None
+ self._num_executors = None
+ self._parameters = None
+ self._warehouse_bucket_uri = None
+
+ @property
+ def arguments(self):
+ """
+ Gets the arguments of this UpdateApplicationDetails.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :return: The arguments of this UpdateApplicationDetails.
+ :rtype: list[str]
+ """
+ return self._arguments
+
+ @arguments.setter
+ def arguments(self, arguments):
+ """
+ Sets the arguments of this UpdateApplicationDetails.
+ The arguments passed to the running application as command line arguments. An argument is
+ either a plain text or a placeholder. Placeholders are replaced using values from the parameters
+ map. Each placeholder specified must be represented in the parameters map else the request
+ (POST or PUT) will fail with a HTTP 400 status code. Placeholders are specified as
+ `Service Api Spec`, where `name` is the name of the parameter.
+ Example: `[ \"--input\", \"${input_file}\", \"--name\", \"John Doe\" ]`
+ If \"input_file\" has a value of \"mydata.xml\", then the value above will be translated to
+ `--input mydata.xml --name \"John Doe\"`
+
+
+ :param arguments: The arguments of this UpdateApplicationDetails.
+ :type: list[str]
+ """
+ self._arguments = arguments
+
+ @property
+ def configuration(self):
+ """
+ Gets the configuration of this UpdateApplicationDetails.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :return: The configuration of this UpdateApplicationDetails.
+ :rtype: dict(str, str)
+ """
+ return self._configuration
+
+ @configuration.setter
+ def configuration(self, configuration):
+ """
+ Sets the configuration of this UpdateApplicationDetails.
+ The Spark configuration passed to the running process.
+ See https://spark.apache.org/docs/latest/configuration.html#available-properties
+ Example: { \"spark.app.name\" : \"My App Name\", \"spark.shuffle.io.maxRetries\" : \"4\" }
+ Note: Not all Spark properties are permitted to be set. Attempting to set a property that is
+ not allowed to be overwritten will cause a 400 status to be returned.
+
+
+ :param configuration: The configuration of this UpdateApplicationDetails.
+ :type: dict(str, str)
+ """
+ self._configuration = configuration
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateApplicationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this UpdateApplicationDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this UpdateApplicationDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this UpdateApplicationDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def description(self):
+ """
+ Gets the description of this UpdateApplicationDetails.
+ A user-friendly description. Avoid entering confidential information.
+
+
+ :return: The description of this UpdateApplicationDetails.
+ :rtype: str
+ """
+ return self._description
+
+ @description.setter
+ def description(self, description):
+ """
+ Sets the description of this UpdateApplicationDetails.
+ A user-friendly description. Avoid entering confidential information.
+
+
+ :param description: The description of this UpdateApplicationDetails.
+ :type: str
+ """
+ self._description = description
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateApplicationDetails.
+ A user-friendly name. It does not have to be unique. Avoid entering confidential information.
+
+
+ :return: The display_name of this UpdateApplicationDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateApplicationDetails.
+ A user-friendly name. It does not have to be unique. Avoid entering confidential information.
+
+
+ :param display_name: The display_name of this UpdateApplicationDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def driver_shape(self):
+ """
+ Gets the driver_shape of this UpdateApplicationDetails.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :return: The driver_shape of this UpdateApplicationDetails.
+ :rtype: str
+ """
+ return self._driver_shape
+
+ @driver_shape.setter
+ def driver_shape(self, driver_shape):
+ """
+ Sets the driver_shape of this UpdateApplicationDetails.
+ The VM shape for the driver. Sets the driver cores and memory.
+
+
+ :param driver_shape: The driver_shape of this UpdateApplicationDetails.
+ :type: str
+ """
+ self._driver_shape = driver_shape
+
+ @property
+ def executor_shape(self):
+ """
+ Gets the executor_shape of this UpdateApplicationDetails.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :return: The executor_shape of this UpdateApplicationDetails.
+ :rtype: str
+ """
+ return self._executor_shape
+
+ @executor_shape.setter
+ def executor_shape(self, executor_shape):
+ """
+ Sets the executor_shape of this UpdateApplicationDetails.
+ The VM shape for the executors. Sets the executor cores and memory.
+
+
+ :param executor_shape: The executor_shape of this UpdateApplicationDetails.
+ :type: str
+ """
+ self._executor_shape = executor_shape
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateApplicationDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this UpdateApplicationDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateApplicationDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this UpdateApplicationDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def logs_bucket_uri(self):
+ """
+ Gets the logs_bucket_uri of this UpdateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The logs_bucket_uri of this UpdateApplicationDetails.
+ :rtype: str
+ """
+ return self._logs_bucket_uri
+
+ @logs_bucket_uri.setter
+ def logs_bucket_uri(self, logs_bucket_uri):
+ """
+ Sets the logs_bucket_uri of this UpdateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket where the Spark job logs are to be uploaded.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param logs_bucket_uri: The logs_bucket_uri of this UpdateApplicationDetails.
+ :type: str
+ """
+ self._logs_bucket_uri = logs_bucket_uri
+
+ @property
+ def num_executors(self):
+ """
+ Gets the num_executors of this UpdateApplicationDetails.
+ The number of executor VMs requested.
+
+
+ :return: The num_executors of this UpdateApplicationDetails.
+ :rtype: int
+ """
+ return self._num_executors
+
+ @num_executors.setter
+ def num_executors(self, num_executors):
+ """
+ Sets the num_executors of this UpdateApplicationDetails.
+ The number of executor VMs requested.
+
+
+ :param num_executors: The num_executors of this UpdateApplicationDetails.
+ :type: int
+ """
+ self._num_executors = num_executors
+
+ @property
+ def parameters(self):
+ """
+ Gets the parameters of this UpdateApplicationDetails.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :return: The parameters of this UpdateApplicationDetails.
+ :rtype: list[ApplicationParameter]
+ """
+ return self._parameters
+
+ @parameters.setter
+ def parameters(self, parameters):
+ """
+ Sets the parameters of this UpdateApplicationDetails.
+ An array of name/value pairs used to fill placeholders found in properties like
+ `Application.arguments`. The name must be a string of one or more word characters
+ (a-z, A-Z, 0-9, _). The value can be a string of 0 or more characters of any kind.
+ Example: [ { name: \"iterations\", value: \"10\"}, { name: \"input_file\", value: \"mydata.xml\" }, { name: \"variable_x\", value: \"${x}\"} ]
+
+
+ :param parameters: The parameters of this UpdateApplicationDetails.
+ :type: list[ApplicationParameter]
+ """
+ self._parameters = parameters
+
+ @property
+ def warehouse_bucket_uri(self):
+ """
+ Gets the warehouse_bucket_uri of this UpdateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :return: The warehouse_bucket_uri of this UpdateApplicationDetails.
+ :rtype: str
+ """
+ return self._warehouse_bucket_uri
+
+ @warehouse_bucket_uri.setter
+ def warehouse_bucket_uri(self, warehouse_bucket_uri):
+ """
+ Sets the warehouse_bucket_uri of this UpdateApplicationDetails.
+ An Oracle Cloud Infrastructure URI of the bucket to be used as default warehouse directory
+ for BATCH SQL runs.
+ See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat
+
+
+ :param warehouse_bucket_uri: The warehouse_bucket_uri of this UpdateApplicationDetails.
+ :type: str
+ """
+ self._warehouse_bucket_uri = warehouse_bucket_uri
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/data_flow/models/update_run_details.py b/src/oci/data_flow/models/update_run_details.py
new file mode 100644
index 0000000000..339ca3952c
--- /dev/null
+++ b/src/oci/data_flow/models/update_run_details.py
@@ -0,0 +1,114 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateRunDetails(object):
+ """
+ The update run details. Only the tags of a run can be updated.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateRunDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateRunDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateRunDetails.
+ :type freeform_tags: dict(str, str)
+
+ """
+ self.swagger_types = {
+ 'defined_tags': 'dict(str, dict(str, object))',
+ 'freeform_tags': 'dict(str, str)'
+ }
+
+ self.attribute_map = {
+ 'defined_tags': 'definedTags',
+ 'freeform_tags': 'freeformTags'
+ }
+
+ self._defined_tags = None
+ self._freeform_tags = None
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateRunDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this UpdateRunDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this UpdateRunDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__.
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this UpdateRunDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateRunDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this UpdateRunDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateRunDetails.
+ 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`__.
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this UpdateRunDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py b/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py
index 596b03caf6..2127313c65 100644
--- a/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py
+++ b/src/oci/database/models/create_data_guard_association_with_new_db_system_details.py
@@ -46,6 +46,10 @@ def __init__(self, **kwargs):
The value to assign to the availability_domain property of this CreateDataGuardAssociationWithNewDbSystemDetails.
:type availability_domain: str
+ :param shape:
+ The value to assign to the shape property of this CreateDataGuardAssociationWithNewDbSystemDetails.
+ :type shape: str
+
:param subnet_id:
The value to assign to the subnet_id property of this CreateDataGuardAssociationWithNewDbSystemDetails.
:type subnet_id: str
@@ -70,6 +74,7 @@ def __init__(self, **kwargs):
'creation_type': 'str',
'display_name': 'str',
'availability_domain': 'str',
+ 'shape': 'str',
'subnet_id': 'str',
'nsg_ids': 'list[str]',
'backup_network_nsg_ids': 'list[str]',
@@ -83,6 +88,7 @@ def __init__(self, **kwargs):
'creation_type': 'creationType',
'display_name': 'displayName',
'availability_domain': 'availabilityDomain',
+ 'shape': 'shape',
'subnet_id': 'subnetId',
'nsg_ids': 'nsgIds',
'backup_network_nsg_ids': 'backupNetworkNsgIds',
@@ -95,6 +101,7 @@ def __init__(self, **kwargs):
self._creation_type = None
self._display_name = None
self._availability_domain = None
+ self._shape = None
self._subnet_id = None
self._nsg_ids = None
self._backup_network_nsg_ids = None
@@ -149,6 +156,36 @@ def availability_domain(self, availability_domain):
"""
self._availability_domain = availability_domain
+ @property
+ def shape(self):
+ """
+ Gets the shape of this CreateDataGuardAssociationWithNewDbSystemDetails.
+ The shape of the DB system to launch to set up the Data Guard association. The shape determines the number of CPU cores and the amount of memory available for the DB system.
+ Only virtual machine shapes are valid shapes. If you do not supply this parameter, the default shape is the shape of the primary DB system.
+
+ To get a list of all shapes, use the :func:`list_db_system_shapes` operation.
+
+
+ :return: The shape of this CreateDataGuardAssociationWithNewDbSystemDetails.
+ :rtype: str
+ """
+ return self._shape
+
+ @shape.setter
+ def shape(self, shape):
+ """
+ Sets the shape of this CreateDataGuardAssociationWithNewDbSystemDetails.
+ The shape of the DB system to launch to set up the Data Guard association. The shape determines the number of CPU cores and the amount of memory available for the DB system.
+ Only virtual machine shapes are valid shapes. If you do not supply this parameter, the default shape is the shape of the primary DB system.
+
+ To get a list of all shapes, use the :func:`list_db_system_shapes` operation.
+
+
+ :param shape: The shape of this CreateDataGuardAssociationWithNewDbSystemDetails.
+ :type: str
+ """
+ self._shape = shape
+
@property
def subnet_id(self):
"""
diff --git a/src/oci/dts/__init__.py b/src/oci/dts/__init__.py
index 23e063724d..eb45e7a876 100644
--- a/src/oci/dts/__init__.py
+++ b/src/oci/dts/__init__.py
@@ -4,6 +4,8 @@
from __future__ import absolute_import
+from .appliance_export_job_client import ApplianceExportJobClient
+from .appliance_export_job_client_composite_operations import ApplianceExportJobClientCompositeOperations
from .shipping_vendors_client import ShippingVendorsClient
from .shipping_vendors_client_composite_operations import ShippingVendorsClientCompositeOperations
from .transfer_appliance_client import TransferApplianceClient
@@ -18,4 +20,4 @@
from .transfer_package_client_composite_operations import TransferPackageClientCompositeOperations
from . import models
-__all__ = ["ShippingVendorsClient", "ShippingVendorsClientCompositeOperations", "TransferApplianceClient", "TransferApplianceClientCompositeOperations", "TransferApplianceEntitlementClient", "TransferApplianceEntitlementClientCompositeOperations", "TransferDeviceClient", "TransferDeviceClientCompositeOperations", "TransferJobClient", "TransferJobClientCompositeOperations", "TransferPackageClient", "TransferPackageClientCompositeOperations", "models"]
+__all__ = ["ApplianceExportJobClient", "ApplianceExportJobClientCompositeOperations", "ShippingVendorsClient", "ShippingVendorsClientCompositeOperations", "TransferApplianceClient", "TransferApplianceClientCompositeOperations", "TransferApplianceEntitlementClient", "TransferApplianceEntitlementClientCompositeOperations", "TransferDeviceClient", "TransferDeviceClientCompositeOperations", "TransferJobClient", "TransferJobClientCompositeOperations", "TransferPackageClient", "TransferPackageClientCompositeOperations", "models"]
diff --git a/src/oci/dts/appliance_export_job_client.py b/src/oci/dts/appliance_export_job_client.py
new file mode 100644
index 0000000000..44b16cf8ca
--- /dev/null
+++ b/src/oci/dts/appliance_export_job_client.py
@@ -0,0 +1,595 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+from __future__ import absolute_import
+
+from oci._vendor import requests # noqa: F401
+from oci._vendor import six
+
+from oci import retry # noqa: F401
+from oci.base_client import BaseClient
+from oci.config import get_config_value_or_default, validate_config
+from oci.signer import Signer
+from oci.util import Sentinel
+from .models import dts_type_mapping
+missing = Sentinel("Missing")
+
+
+class ApplianceExportJobClient(object):
+ """
+ Data Transfer Service API Specification
+ """
+
+ def __init__(self, config, **kwargs):
+ """
+ Creates a new service client
+
+ :param dict config:
+ Configuration keys and values as per `SDK and Tool Configuration `__.
+ The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
+ the dict using :py:meth:`~oci.config.validate_config`
+
+ :param str service_endpoint: (optional)
+ The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
+ not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
+ need to specify a service endpoint.
+
+ :param timeout: (optional)
+ The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
+ as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
+ a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
+ :type timeout: float or tuple(float, float)
+
+ :param signer: (optional)
+ The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
+ provided in the config parameter.
+
+ One use case for this parameter is for `Instance Principals authentication `__
+ by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
+ :type signer: :py:class:`~oci.signer.AbstractBaseSigner`
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
+ Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
+ Any value provided at the operation level will override whatever is specified at the client level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+ """
+ validate_config(config, signer=kwargs.get('signer'))
+ if 'signer' in kwargs:
+ signer = kwargs['signer']
+ else:
+ signer = Signer(
+ tenancy=config["tenancy"],
+ user=config["user"],
+ fingerprint=config["fingerprint"],
+ private_key_file_location=config.get("key_file"),
+ pass_phrase=get_config_value_or_default(config, "pass_phrase"),
+ private_key_content=config.get("key_content")
+ )
+
+ base_client_init_kwargs = {
+ 'regional_client': True,
+ 'service_endpoint': kwargs.get('service_endpoint'),
+ 'timeout': kwargs.get('timeout'),
+ 'base_path': '/20171001',
+ 'service_endpoint_template': 'https://datatransfer.{region}.{secondLevelDomain}',
+ 'skip_deserialization': kwargs.get('skip_deserialization', False)
+ }
+ self.base_client = BaseClient("appliance_export_job", config, signer, dts_type_mapping, **base_client_init_kwargs)
+ self.retry_strategy = kwargs.get('retry_strategy')
+
+ def change_appliance_export_job_compartment(self, appliance_export_job_id, change_appliance_export_job_compartment_details, **kwargs):
+ """
+ Move a job into a different compartment. When provided, if-Match is matched against ETag values of the resource.
+ Moves a ApplianceExportJob into a different compartment.
+
+
+ :param str appliance_export_job_id: (required)
+ ID of the Appliance Export Job
+
+ :param ChangeApplianceExportJobCompartmentDetails change_appliance_export_job_compartment_details: (required)
+ CompartmentId of the destination compartment
+
+ :param str if_match: (optional)
+ The entity tag to match. Optional, if set, the update will be successful only if the
+ object's tag matches the tag specified in the request.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
+ :param str opc_retry_token: (optional)
+ 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 (e.g., if a resource
+ has been deleted and purged from the system, then a retry of the original creation request
+ may be rejected).
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applianceExportJobs/{applianceExportJobId}/actions/changeCompartment"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id",
+ "opc_retry_token"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "change_appliance_export_job_compartment got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applianceExportJobId": appliance_export_job_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing),
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_appliance_export_job_compartment_details)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=change_appliance_export_job_compartment_details)
+
+ def create_appliance_export_job(self, create_appliance_export_job_details, **kwargs):
+ """
+ Creates a new Appliance Export Job
+ Creates a new Appliance Export Job that corresponds with customer's logical dataset
+
+
+ :param CreateApplianceExportJobDetails create_appliance_export_job_details: (required)
+ Creates a new Appliance Export Job
+
+ :param str opc_retry_token: (optional)
+ 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 (e.g., if a resource
+ has been deleted and purged from the system, then a retry of the original creation request
+ may be rejected).
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.dts.models.ApplianceExportJob`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applianceExportJobs"
+ method = "POST"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_retry_token",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "create_appliance_export_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
+ self.base_client.add_opc_retry_token_if_needed(header_params)
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_appliance_export_job_details,
+ response_type="ApplianceExportJob")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ header_params=header_params,
+ body=create_appliance_export_job_details,
+ response_type="ApplianceExportJob")
+
+ def delete_appliance_export_job(self, appliance_export_job_id, **kwargs):
+ """
+ deletes a Appliance Export Job
+ deletes a Appliance Export Job
+
+
+ :param str appliance_export_job_id: (required)
+ ID of the Appliance Export Job
+
+ :param str if_match: (optional)
+ The entity tag to match. Optional, if set, the update will be successful only if the
+ object's tag matches the tag specified in the request.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type None
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applianceExportJobs/{applianceExportJobId}"
+ method = "DELETE"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "delete_appliance_export_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applianceExportJobId": appliance_export_job_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params)
+
+ def get_appliance_export_job(self, appliance_export_job_id, **kwargs):
+ """
+ Describes a Appliance Export Job in detail
+ Describes a Appliance Export Job in detail
+
+
+ :param str appliance_export_job_id: (required)
+ OCID of the Appliance Export Job
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.dts.models.ApplianceExportJob`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applianceExportJobs/{applianceExportJobId}"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "get_appliance_export_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applianceExportJobId": appliance_export_job_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="ApplianceExportJob")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ response_type="ApplianceExportJob")
+
+ def list_appliance_export_jobs(self, compartment_id, **kwargs):
+ """
+ Lists Appliance Export Jobs in a given compartment
+ Lists Appliance Export Jobs in a given compartment
+
+
+ :param str compartment_id: (required)
+ compartment id
+
+ :param str lifecycle_state: (optional)
+ filtering by lifecycleState
+
+ Allowed values are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"
+
+ :param str display_name: (optional)
+ filtering by displayName
+
+ :param int limit: (optional)
+ For list pagination. The maximum number of results per page, or items to return in a paginated
+ \"List\" call. For important details about how pagination works, see
+ `List Pagination`__.
+
+ Example: `50`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
+ call. For important details about how pagination works, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.dts.models.ApplianceExportJobSummary`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applianceExportJobs"
+ method = "GET"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "lifecycle_state",
+ "display_name",
+ "limit",
+ "page",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "list_appliance_export_jobs got unknown kwargs: {!r}".format(extra_kwargs))
+
+ if 'lifecycle_state' in kwargs:
+ lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"]
+ if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values:
+ raise ValueError(
+ "Invalid value for `lifecycle_state`, must be one of {0}".format(lifecycle_state_allowed_values)
+ )
+
+ query_params = {
+ "compartmentId": compartment_id,
+ "lifecycleState": kwargs.get("lifecycle_state", missing),
+ "displayName": kwargs.get("display_name", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
+ }
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[ApplianceExportJobSummary]")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ query_params=query_params,
+ header_params=header_params,
+ response_type="list[ApplianceExportJobSummary]")
+
+ def update_appliance_export_job(self, appliance_export_job_id, update_appliance_export_job_details, **kwargs):
+ """
+ Updates an Appliance Export Job
+ Updates a Appliance Export Job that corresponds with customer's logical dataset.
+
+
+ :param str appliance_export_job_id: (required)
+ ID of the Appliance Export Job
+
+ :param UpdateApplianceExportJobDetails update_appliance_export_job_details: (required)
+ fields to update
+
+ :param str if_match: (optional)
+ The entity tag to match. Optional, if set, the update will be successful only if the
+ object's tag matches the tag specified in the request.
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
+ :param obj retry_strategy: (optional)
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
+
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
+ is also available. The specifics of the default retry strategy are described `here `__.
+
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
+
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.dts.models.ApplianceExportJob`
+ :rtype: :class:`~oci.response.Response`
+ """
+ resource_path = "/applianceExportJobs/{applianceExportJobId}"
+ method = "PUT"
+
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "if_match",
+ "opc_request_id"
+ ]
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
+ if extra_kwargs:
+ raise ValueError(
+ "update_appliance_export_job got unknown kwargs: {!r}".format(extra_kwargs))
+
+ path_params = {
+ "applianceExportJobId": appliance_export_job_id
+ }
+
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
+
+ for (k, v) in six.iteritems(path_params):
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
+ raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k))
+
+ header_params = {
+ "accept": "application/json",
+ "content-type": "application/json",
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
+ }
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
+
+ retry_strategy = self.retry_strategy
+ if kwargs.get('retry_strategy'):
+ retry_strategy = kwargs.get('retry_strategy')
+
+ if retry_strategy:
+ return retry_strategy.make_retrying_call(
+ self.base_client.call_api,
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_appliance_export_job_details,
+ response_type="ApplianceExportJob")
+ else:
+ return self.base_client.call_api(
+ resource_path=resource_path,
+ method=method,
+ path_params=path_params,
+ header_params=header_params,
+ body=update_appliance_export_job_details,
+ response_type="ApplianceExportJob")
diff --git a/src/oci/dts/appliance_export_job_client_composite_operations.py b/src/oci/dts/appliance_export_job_client_composite_operations.py
new file mode 100644
index 0000000000..449273cec4
--- /dev/null
+++ b/src/oci/dts/appliance_export_job_client_composite_operations.py
@@ -0,0 +1,149 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+import oci # noqa: F401
+from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401
+
+
+class ApplianceExportJobClientCompositeOperations(object):
+ """
+ This class provides a wrapper around :py:class:`~oci.dts.ApplianceExportJobClient` and offers convenience methods
+ for operations that would otherwise need to be chained together. For example, instead of performing an action
+ on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource
+ to enter a given state, you can call a single method in this class to accomplish the same functionality
+ """
+
+ def __init__(self, client, **kwargs):
+ """
+ Creates a new ApplianceExportJobClientCompositeOperations object
+
+ :param ApplianceExportJobClient client:
+ The service client which will be wrapped by this object
+ """
+ self.client = client
+
+ def create_appliance_export_job_and_wait_for_state(self, create_appliance_export_job_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.dts.ApplianceExportJobClient.create_appliance_export_job` and waits for the :py:class:`~oci.dts.models.ApplianceExportJob` acted upon
+ to enter the given state(s).
+
+ :param CreateApplianceExportJobDetails create_appliance_export_job_details: (required)
+ Creates a new Appliance Export Job
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.dts.models.ApplianceExportJob.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.dts.ApplianceExportJobClient.create_appliance_export_job`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.create_appliance_export_job(create_appliance_export_job_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_appliance_export_job(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def delete_appliance_export_job_and_wait_for_state(self, appliance_export_job_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.dts.ApplianceExportJobClient.delete_appliance_export_job` and waits for the :py:class:`~oci.dts.models.ApplianceExportJob` acted upon
+ to enter the given state(s).
+
+ :param str appliance_export_job_id: (required)
+ ID of the Appliance Export Job
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.dts.models.ApplianceExportJob.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.dts.ApplianceExportJobClient.delete_appliance_export_job`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ initial_get_result = self.client.get_appliance_export_job(appliance_export_job_id)
+ operation_result = None
+ try:
+ operation_result = self.client.delete_appliance_export_job(appliance_export_job_id, **operation_kwargs)
+ except oci.exceptions.ServiceError as e:
+ if e.status == 404:
+ return WAIT_RESOURCE_NOT_FOUND
+ else:
+ raise e
+
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ initial_get_result,
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ succeed_on_not_found=True,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
+
+ def update_appliance_export_job_and_wait_for_state(self, appliance_export_job_id, update_appliance_export_job_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}):
+ """
+ Calls :py:func:`~oci.dts.ApplianceExportJobClient.update_appliance_export_job` and waits for the :py:class:`~oci.dts.models.ApplianceExportJob` acted upon
+ to enter the given state(s).
+
+ :param str appliance_export_job_id: (required)
+ ID of the Appliance Export Job
+
+ :param UpdateApplianceExportJobDetails update_appliance_export_job_details: (required)
+ fields to update
+
+ :param list[str] wait_for_states:
+ An array of states to wait on. These should be valid values for :py:attr:`~oci.dts.models.ApplianceExportJob.lifecycle_state`
+
+ :param dict operation_kwargs:
+ A dictionary of keyword arguments to pass to :py:func:`~oci.dts.ApplianceExportJobClient.update_appliance_export_job`
+
+ :param dict waiter_kwargs:
+ A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds``
+ as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait
+ """
+ operation_result = self.client.update_appliance_export_job(appliance_export_job_id, update_appliance_export_job_details, **operation_kwargs)
+ if not wait_for_states:
+ return operation_result
+
+ lowered_wait_for_states = [w.lower() for w in wait_for_states]
+ wait_for_resource_id = operation_result.data.id
+
+ try:
+ waiter_result = oci.wait_until(
+ self.client,
+ self.client.get_appliance_export_job(wait_for_resource_id),
+ evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states,
+ **waiter_kwargs
+ )
+ result_to_return = waiter_result
+
+ return result_to_return
+ except Exception as e:
+ raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e)
diff --git a/src/oci/dts/models/__init__.py b/src/oci/dts/models/__init__.py
index 92d666b068..c8b829cc3d 100644
--- a/src/oci/dts/models/__init__.py
+++ b/src/oci/dts/models/__init__.py
@@ -3,8 +3,12 @@
from __future__ import absolute_import
+from .appliance_export_job import ApplianceExportJob
+from .appliance_export_job_summary import ApplianceExportJobSummary
from .attach_devices_details import AttachDevicesDetails
+from .change_appliance_export_job_compartment_details import ChangeApplianceExportJobCompartmentDetails
from .change_transfer_job_compartment_details import ChangeTransferJobCompartmentDetails
+from .create_appliance_export_job_details import CreateApplianceExportJobDetails
from .create_transfer_appliance_details import CreateTransferApplianceDetails
from .create_transfer_appliance_entitlement_details import CreateTransferApplianceEntitlementDetails
from .create_transfer_device_details import CreateTransferDeviceDetails
@@ -30,6 +34,7 @@
from .transfer_job_summary import TransferJobSummary
from .transfer_package import TransferPackage
from .transfer_package_summary import TransferPackageSummary
+from .update_appliance_export_job_details import UpdateApplianceExportJobDetails
from .update_transfer_appliance_details import UpdateTransferApplianceDetails
from .update_transfer_device_details import UpdateTransferDeviceDetails
from .update_transfer_job_details import UpdateTransferJobDetails
@@ -37,8 +42,12 @@
# Maps type names to classes for dts services.
dts_type_mapping = {
+ "ApplianceExportJob": ApplianceExportJob,
+ "ApplianceExportJobSummary": ApplianceExportJobSummary,
"AttachDevicesDetails": AttachDevicesDetails,
+ "ChangeApplianceExportJobCompartmentDetails": ChangeApplianceExportJobCompartmentDetails,
"ChangeTransferJobCompartmentDetails": ChangeTransferJobCompartmentDetails,
+ "CreateApplianceExportJobDetails": CreateApplianceExportJobDetails,
"CreateTransferApplianceDetails": CreateTransferApplianceDetails,
"CreateTransferApplianceEntitlementDetails": CreateTransferApplianceEntitlementDetails,
"CreateTransferDeviceDetails": CreateTransferDeviceDetails,
@@ -64,6 +73,7 @@
"TransferJobSummary": TransferJobSummary,
"TransferPackage": TransferPackage,
"TransferPackageSummary": TransferPackageSummary,
+ "UpdateApplianceExportJobDetails": UpdateApplianceExportJobDetails,
"UpdateTransferApplianceDetails": UpdateTransferApplianceDetails,
"UpdateTransferDeviceDetails": UpdateTransferDeviceDetails,
"UpdateTransferJobDetails": UpdateTransferJobDetails,
diff --git a/src/oci/dts/models/appliance_export_job.py b/src/oci/dts/models/appliance_export_job.py
new file mode 100644
index 0000000000..29e4eca886
--- /dev/null
+++ b/src/oci/dts/models/appliance_export_job.py
@@ -0,0 +1,934 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ApplianceExportJob(object):
+ """
+ ApplianceExportJob model.
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "INPROGRESS"
+ LIFECYCLE_STATE_INPROGRESS = "INPROGRESS"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "SUCCEEDED"
+ LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "CANCELLED"
+ LIFECYCLE_STATE_CANCELLED = "CANCELLED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJob.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ApplianceExportJob object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this ApplianceExportJob.
+ :type id: str
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ApplianceExportJob.
+ :type compartment_id: str
+
+ :param bucket_name:
+ The value to assign to the bucket_name property of this ApplianceExportJob.
+ :type bucket_name: str
+
+ :param display_name:
+ The value to assign to the display_name property of this ApplianceExportJob.
+ :type display_name: str
+
+ :param creation_time:
+ The value to assign to the creation_time property of this ApplianceExportJob.
+ :type creation_time: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ApplianceExportJob.
+ Allowed values for this property are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this ApplianceExportJob.
+ :type lifecycle_state_details: str
+
+ :param appliance_serial_number:
+ The value to assign to the appliance_serial_number property of this ApplianceExportJob.
+ :type appliance_serial_number: str
+
+ :param appliance_decryption_passphrase:
+ The value to assign to the appliance_decryption_passphrase property of this ApplianceExportJob.
+ :type appliance_decryption_passphrase: str
+
+ :param appliance_delivery_vendor:
+ The value to assign to the appliance_delivery_vendor property of this ApplianceExportJob.
+ :type appliance_delivery_vendor: str
+
+ :param appliance_delivery_tracking_number:
+ The value to assign to the appliance_delivery_tracking_number property of this ApplianceExportJob.
+ :type appliance_delivery_tracking_number: str
+
+ :param appliance_return_delivery_tracking_number:
+ The value to assign to the appliance_return_delivery_tracking_number property of this ApplianceExportJob.
+ :type appliance_return_delivery_tracking_number: str
+
+ :param sending_security_tie:
+ The value to assign to the sending_security_tie property of this ApplianceExportJob.
+ :type sending_security_tie: str
+
+ :param receiving_security_tie:
+ The value to assign to the receiving_security_tie property of this ApplianceExportJob.
+ :type receiving_security_tie: str
+
+ :param prefix:
+ The value to assign to the prefix property of this ApplianceExportJob.
+ :type prefix: str
+
+ :param range_start:
+ The value to assign to the range_start property of this ApplianceExportJob.
+ :type range_start: str
+
+ :param range_end:
+ The value to assign to the range_end property of this ApplianceExportJob.
+ :type range_end: str
+
+ :param number_of_objects:
+ The value to assign to the number_of_objects property of this ApplianceExportJob.
+ :type number_of_objects: str
+
+ :param total_size_in_bytes:
+ The value to assign to the total_size_in_bytes property of this ApplianceExportJob.
+ :type total_size_in_bytes: str
+
+ :param first_object:
+ The value to assign to the first_object property of this ApplianceExportJob.
+ :type first_object: str
+
+ :param last_object:
+ The value to assign to the last_object property of this ApplianceExportJob.
+ :type last_object: str
+
+ :param next_object:
+ The value to assign to the next_object property of this ApplianceExportJob.
+ :type next_object: str
+
+ :param manifest_file:
+ The value to assign to the manifest_file property of this ApplianceExportJob.
+ :type manifest_file: str
+
+ :param manifest_md5:
+ The value to assign to the manifest_md5 property of this ApplianceExportJob.
+ :type manifest_md5: str
+
+ :param bucket_access_policies:
+ The value to assign to the bucket_access_policies property of this ApplianceExportJob.
+ :type bucket_access_policies: list[str]
+
+ :param customer_shipping_address:
+ The value to assign to the customer_shipping_address property of this ApplianceExportJob.
+ :type customer_shipping_address: ShippingAddress
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this ApplianceExportJob.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this ApplianceExportJob.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'compartment_id': 'str',
+ 'bucket_name': 'str',
+ 'display_name': 'str',
+ 'creation_time': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'appliance_serial_number': 'str',
+ 'appliance_decryption_passphrase': 'str',
+ 'appliance_delivery_vendor': 'str',
+ 'appliance_delivery_tracking_number': 'str',
+ 'appliance_return_delivery_tracking_number': 'str',
+ 'sending_security_tie': 'str',
+ 'receiving_security_tie': 'str',
+ 'prefix': 'str',
+ 'range_start': 'str',
+ 'range_end': 'str',
+ 'number_of_objects': 'str',
+ 'total_size_in_bytes': 'str',
+ 'first_object': 'str',
+ 'last_object': 'str',
+ 'next_object': 'str',
+ 'manifest_file': 'str',
+ 'manifest_md5': 'str',
+ 'bucket_access_policies': 'list[str]',
+ 'customer_shipping_address': 'ShippingAddress',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'compartment_id': 'compartmentId',
+ 'bucket_name': 'bucketName',
+ 'display_name': 'displayName',
+ 'creation_time': 'creationTime',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'appliance_serial_number': 'applianceSerialNumber',
+ 'appliance_decryption_passphrase': 'applianceDecryptionPassphrase',
+ 'appliance_delivery_vendor': 'applianceDeliveryVendor',
+ 'appliance_delivery_tracking_number': 'applianceDeliveryTrackingNumber',
+ 'appliance_return_delivery_tracking_number': 'applianceReturnDeliveryTrackingNumber',
+ 'sending_security_tie': 'sendingSecurityTie',
+ 'receiving_security_tie': 'receivingSecurityTie',
+ 'prefix': 'prefix',
+ 'range_start': 'rangeStart',
+ 'range_end': 'rangeEnd',
+ 'number_of_objects': 'numberOfObjects',
+ 'total_size_in_bytes': 'totalSizeInBytes',
+ 'first_object': 'firstObject',
+ 'last_object': 'lastObject',
+ 'next_object': 'nextObject',
+ 'manifest_file': 'manifestFile',
+ 'manifest_md5': 'manifestMd5',
+ 'bucket_access_policies': 'bucketAccessPolicies',
+ 'customer_shipping_address': 'customerShippingAddress',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._compartment_id = None
+ self._bucket_name = None
+ self._display_name = None
+ self._creation_time = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._appliance_serial_number = None
+ self._appliance_decryption_passphrase = None
+ self._appliance_delivery_vendor = None
+ self._appliance_delivery_tracking_number = None
+ self._appliance_return_delivery_tracking_number = None
+ self._sending_security_tie = None
+ self._receiving_security_tie = None
+ self._prefix = None
+ self._range_start = None
+ self._range_end = None
+ self._number_of_objects = None
+ self._total_size_in_bytes = None
+ self._first_object = None
+ self._last_object = None
+ self._next_object = None
+ self._manifest_file = None
+ self._manifest_md5 = None
+ self._bucket_access_policies = None
+ self._customer_shipping_address = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ **[Required]** Gets the id of this ApplianceExportJob.
+
+ :return: The id of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this ApplianceExportJob.
+
+ :param id: The id of this ApplianceExportJob.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def compartment_id(self):
+ """
+ Gets the compartment_id of this ApplianceExportJob.
+
+ :return: The compartment_id of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ApplianceExportJob.
+
+ :param compartment_id: The compartment_id of this ApplianceExportJob.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def bucket_name(self):
+ """
+ Gets the bucket_name of this ApplianceExportJob.
+
+ :return: The bucket_name of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._bucket_name
+
+ @bucket_name.setter
+ def bucket_name(self, bucket_name):
+ """
+ Sets the bucket_name of this ApplianceExportJob.
+
+ :param bucket_name: The bucket_name of this ApplianceExportJob.
+ :type: str
+ """
+ self._bucket_name = bucket_name
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this ApplianceExportJob.
+
+ :return: The display_name of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ApplianceExportJob.
+
+ :param display_name: The display_name of this ApplianceExportJob.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def creation_time(self):
+ """
+ Gets the creation_time of this ApplianceExportJob.
+
+ :return: The creation_time of this ApplianceExportJob.
+ :rtype: datetime
+ """
+ return self._creation_time
+
+ @creation_time.setter
+ def creation_time(self, creation_time):
+ """
+ Sets the creation_time of this ApplianceExportJob.
+
+ :param creation_time: The creation_time of this ApplianceExportJob.
+ :type: datetime
+ """
+ self._creation_time = creation_time
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this ApplianceExportJob.
+ Allowed values for this property are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ApplianceExportJob.
+
+ :param lifecycle_state: The lifecycle_state of this ApplianceExportJob.
+ :type: str
+ """
+ allowed_values = ["CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_state_details(self):
+ """
+ Gets the lifecycle_state_details of this ApplianceExportJob.
+ A property that can contain details on the lifecycle.
+
+
+ :return: The lifecycle_state_details of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._lifecycle_state_details
+
+ @lifecycle_state_details.setter
+ def lifecycle_state_details(self, lifecycle_state_details):
+ """
+ Sets the lifecycle_state_details of this ApplianceExportJob.
+ A property that can contain details on the lifecycle.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this ApplianceExportJob.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def appliance_serial_number(self):
+ """
+ Gets the appliance_serial_number of this ApplianceExportJob.
+ Serial Number of the Appliance associated with this Export Job.
+
+
+ :return: The appliance_serial_number of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._appliance_serial_number
+
+ @appliance_serial_number.setter
+ def appliance_serial_number(self, appliance_serial_number):
+ """
+ Sets the appliance_serial_number of this ApplianceExportJob.
+ Serial Number of the Appliance associated with this Export Job.
+
+
+ :param appliance_serial_number: The appliance_serial_number of this ApplianceExportJob.
+ :type: str
+ """
+ self._appliance_serial_number = appliance_serial_number
+
+ @property
+ def appliance_decryption_passphrase(self):
+ """
+ Gets the appliance_decryption_passphrase of this ApplianceExportJob.
+ Passphrase associated with the Appliance.
+
+
+ :return: The appliance_decryption_passphrase of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._appliance_decryption_passphrase
+
+ @appliance_decryption_passphrase.setter
+ def appliance_decryption_passphrase(self, appliance_decryption_passphrase):
+ """
+ Sets the appliance_decryption_passphrase of this ApplianceExportJob.
+ Passphrase associated with the Appliance.
+
+
+ :param appliance_decryption_passphrase: The appliance_decryption_passphrase of this ApplianceExportJob.
+ :type: str
+ """
+ self._appliance_decryption_passphrase = appliance_decryption_passphrase
+
+ @property
+ def appliance_delivery_vendor(self):
+ """
+ Gets the appliance_delivery_vendor of this ApplianceExportJob.
+ Shipping Vendor selected to ship the Appliance associated with this job.
+
+
+ :return: The appliance_delivery_vendor of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._appliance_delivery_vendor
+
+ @appliance_delivery_vendor.setter
+ def appliance_delivery_vendor(self, appliance_delivery_vendor):
+ """
+ Sets the appliance_delivery_vendor of this ApplianceExportJob.
+ Shipping Vendor selected to ship the Appliance associated with this job.
+
+
+ :param appliance_delivery_vendor: The appliance_delivery_vendor of this ApplianceExportJob.
+ :type: str
+ """
+ self._appliance_delivery_vendor = appliance_delivery_vendor
+
+ @property
+ def appliance_delivery_tracking_number(self):
+ """
+ Gets the appliance_delivery_tracking_number of this ApplianceExportJob.
+ Tracking number associated with the shipment while shipping the Appliance to Customer.
+
+
+ :return: The appliance_delivery_tracking_number of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._appliance_delivery_tracking_number
+
+ @appliance_delivery_tracking_number.setter
+ def appliance_delivery_tracking_number(self, appliance_delivery_tracking_number):
+ """
+ Sets the appliance_delivery_tracking_number of this ApplianceExportJob.
+ Tracking number associated with the shipment while shipping the Appliance to Customer.
+
+
+ :param appliance_delivery_tracking_number: The appliance_delivery_tracking_number of this ApplianceExportJob.
+ :type: str
+ """
+ self._appliance_delivery_tracking_number = appliance_delivery_tracking_number
+
+ @property
+ def appliance_return_delivery_tracking_number(self):
+ """
+ Gets the appliance_return_delivery_tracking_number of this ApplianceExportJob.
+ Tracking number associated with the shipment while shipping the Appliance back to Oracle.
+
+
+ :return: The appliance_return_delivery_tracking_number of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._appliance_return_delivery_tracking_number
+
+ @appliance_return_delivery_tracking_number.setter
+ def appliance_return_delivery_tracking_number(self, appliance_return_delivery_tracking_number):
+ """
+ Sets the appliance_return_delivery_tracking_number of this ApplianceExportJob.
+ Tracking number associated with the shipment while shipping the Appliance back to Oracle.
+
+
+ :param appliance_return_delivery_tracking_number: The appliance_return_delivery_tracking_number of this ApplianceExportJob.
+ :type: str
+ """
+ self._appliance_return_delivery_tracking_number = appliance_return_delivery_tracking_number
+
+ @property
+ def sending_security_tie(self):
+ """
+ Gets the sending_security_tie of this ApplianceExportJob.
+ Unique number associated with the security tie used to seal the Appliance case.
+
+
+ :return: The sending_security_tie of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._sending_security_tie
+
+ @sending_security_tie.setter
+ def sending_security_tie(self, sending_security_tie):
+ """
+ Sets the sending_security_tie of this ApplianceExportJob.
+ Unique number associated with the security tie used to seal the Appliance case.
+
+
+ :param sending_security_tie: The sending_security_tie of this ApplianceExportJob.
+ :type: str
+ """
+ self._sending_security_tie = sending_security_tie
+
+ @property
+ def receiving_security_tie(self):
+ """
+ Gets the receiving_security_tie of this ApplianceExportJob.
+ Unique number associated with the return security tie used to seal the Appliance case.
+
+
+ :return: The receiving_security_tie of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._receiving_security_tie
+
+ @receiving_security_tie.setter
+ def receiving_security_tie(self, receiving_security_tie):
+ """
+ Sets the receiving_security_tie of this ApplianceExportJob.
+ Unique number associated with the return security tie used to seal the Appliance case.
+
+
+ :param receiving_security_tie: The receiving_security_tie of this ApplianceExportJob.
+ :type: str
+ """
+ self._receiving_security_tie = receiving_security_tie
+
+ @property
+ def prefix(self):
+ """
+ Gets the prefix of this ApplianceExportJob.
+ List of objects with names matching this prefix would be part of this export job.
+
+
+ :return: The prefix of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._prefix
+
+ @prefix.setter
+ def prefix(self, prefix):
+ """
+ Sets the prefix of this ApplianceExportJob.
+ List of objects with names matching this prefix would be part of this export job.
+
+
+ :param prefix: The prefix of this ApplianceExportJob.
+ :type: str
+ """
+ self._prefix = prefix
+
+ @property
+ def range_start(self):
+ """
+ Gets the range_start of this ApplianceExportJob.
+ The name of the first object in the range of objects that are expected to be part of this export job.
+
+
+ :return: The range_start of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._range_start
+
+ @range_start.setter
+ def range_start(self, range_start):
+ """
+ Sets the range_start of this ApplianceExportJob.
+ The name of the first object in the range of objects that are expected to be part of this export job.
+
+
+ :param range_start: The range_start of this ApplianceExportJob.
+ :type: str
+ """
+ self._range_start = range_start
+
+ @property
+ def range_end(self):
+ """
+ Gets the range_end of this ApplianceExportJob.
+ The name of the last object in the range of objects that are expected to be part of this export job.
+
+
+ :return: The range_end of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._range_end
+
+ @range_end.setter
+ def range_end(self, range_end):
+ """
+ Sets the range_end of this ApplianceExportJob.
+ The name of the last object in the range of objects that are expected to be part of this export job.
+
+
+ :param range_end: The range_end of this ApplianceExportJob.
+ :type: str
+ """
+ self._range_end = range_end
+
+ @property
+ def number_of_objects(self):
+ """
+ Gets the number_of_objects of this ApplianceExportJob.
+ Total number of objects that are exported in this job.
+
+
+ :return: The number_of_objects of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._number_of_objects
+
+ @number_of_objects.setter
+ def number_of_objects(self, number_of_objects):
+ """
+ Sets the number_of_objects of this ApplianceExportJob.
+ Total number of objects that are exported in this job.
+
+
+ :param number_of_objects: The number_of_objects of this ApplianceExportJob.
+ :type: str
+ """
+ self._number_of_objects = number_of_objects
+
+ @property
+ def total_size_in_bytes(self):
+ """
+ Gets the total_size_in_bytes of this ApplianceExportJob.
+ Total size of objects in Bytes that are exported in this job.
+
+
+ :return: The total_size_in_bytes of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._total_size_in_bytes
+
+ @total_size_in_bytes.setter
+ def total_size_in_bytes(self, total_size_in_bytes):
+ """
+ Sets the total_size_in_bytes of this ApplianceExportJob.
+ Total size of objects in Bytes that are exported in this job.
+
+
+ :param total_size_in_bytes: The total_size_in_bytes of this ApplianceExportJob.
+ :type: str
+ """
+ self._total_size_in_bytes = total_size_in_bytes
+
+ @property
+ def first_object(self):
+ """
+ Gets the first_object of this ApplianceExportJob.
+ First object in the list of objects that are exported in this job.
+
+
+ :return: The first_object of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._first_object
+
+ @first_object.setter
+ def first_object(self, first_object):
+ """
+ Sets the first_object of this ApplianceExportJob.
+ First object in the list of objects that are exported in this job.
+
+
+ :param first_object: The first_object of this ApplianceExportJob.
+ :type: str
+ """
+ self._first_object = first_object
+
+ @property
+ def last_object(self):
+ """
+ Gets the last_object of this ApplianceExportJob.
+ Last object in the list of objects that are exported in this job.
+
+
+ :return: The last_object of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._last_object
+
+ @last_object.setter
+ def last_object(self, last_object):
+ """
+ Sets the last_object of this ApplianceExportJob.
+ Last object in the list of objects that are exported in this job.
+
+
+ :param last_object: The last_object of this ApplianceExportJob.
+ :type: str
+ """
+ self._last_object = last_object
+
+ @property
+ def next_object(self):
+ """
+ Gets the next_object of this ApplianceExportJob.
+ First object from which the next potential export job could start.
+
+
+ :return: The next_object of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._next_object
+
+ @next_object.setter
+ def next_object(self, next_object):
+ """
+ Sets the next_object of this ApplianceExportJob.
+ First object from which the next potential export job could start.
+
+
+ :param next_object: The next_object of this ApplianceExportJob.
+ :type: str
+ """
+ self._next_object = next_object
+
+ @property
+ def manifest_file(self):
+ """
+ Gets the manifest_file of this ApplianceExportJob.
+ Url of the Manifest File associated with this export job.
+
+
+ :return: The manifest_file of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._manifest_file
+
+ @manifest_file.setter
+ def manifest_file(self, manifest_file):
+ """
+ Sets the manifest_file of this ApplianceExportJob.
+ Url of the Manifest File associated with this export job.
+
+
+ :param manifest_file: The manifest_file of this ApplianceExportJob.
+ :type: str
+ """
+ self._manifest_file = manifest_file
+
+ @property
+ def manifest_md5(self):
+ """
+ Gets the manifest_md5 of this ApplianceExportJob.
+ md5 digest of the manifest file.
+
+
+ :return: The manifest_md5 of this ApplianceExportJob.
+ :rtype: str
+ """
+ return self._manifest_md5
+
+ @manifest_md5.setter
+ def manifest_md5(self, manifest_md5):
+ """
+ Sets the manifest_md5 of this ApplianceExportJob.
+ md5 digest of the manifest file.
+
+
+ :param manifest_md5: The manifest_md5 of this ApplianceExportJob.
+ :type: str
+ """
+ self._manifest_md5 = manifest_md5
+
+ @property
+ def bucket_access_policies(self):
+ """
+ Gets the bucket_access_policies of this ApplianceExportJob.
+ Polices to grant Data Transfer Service to access objects in the Bucket
+
+
+ :return: The bucket_access_policies of this ApplianceExportJob.
+ :rtype: list[str]
+ """
+ return self._bucket_access_policies
+
+ @bucket_access_policies.setter
+ def bucket_access_policies(self, bucket_access_policies):
+ """
+ Sets the bucket_access_policies of this ApplianceExportJob.
+ Polices to grant Data Transfer Service to access objects in the Bucket
+
+
+ :param bucket_access_policies: The bucket_access_policies of this ApplianceExportJob.
+ :type: list[str]
+ """
+ self._bucket_access_policies = bucket_access_policies
+
+ @property
+ def customer_shipping_address(self):
+ """
+ Gets the customer_shipping_address of this ApplianceExportJob.
+
+ :return: The customer_shipping_address of this ApplianceExportJob.
+ :rtype: ShippingAddress
+ """
+ return self._customer_shipping_address
+
+ @customer_shipping_address.setter
+ def customer_shipping_address(self, customer_shipping_address):
+ """
+ Sets the customer_shipping_address of this ApplianceExportJob.
+
+ :param customer_shipping_address: The customer_shipping_address of this ApplianceExportJob.
+ :type: ShippingAddress
+ """
+ self._customer_shipping_address = customer_shipping_address
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this ApplianceExportJob.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this ApplianceExportJob.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this ApplianceExportJob.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this ApplianceExportJob.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this ApplianceExportJob.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this ApplianceExportJob.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this ApplianceExportJob.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this ApplianceExportJob.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/dts/models/appliance_export_job_summary.py b/src/oci/dts/models/appliance_export_job_summary.py
new file mode 100644
index 0000000000..1303f96cf4
--- /dev/null
+++ b/src/oci/dts/models/appliance_export_job_summary.py
@@ -0,0 +1,322 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ApplianceExportJobSummary(object):
+ """
+ ApplianceExportJobSummary model.
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "INPROGRESS"
+ LIFECYCLE_STATE_INPROGRESS = "INPROGRESS"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "SUCCEEDED"
+ LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "CANCELLED"
+ LIFECYCLE_STATE_CANCELLED = "CANCELLED"
+
+ #: A constant which can be used with the lifecycle_state property of a ApplianceExportJobSummary.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ApplianceExportJobSummary object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param id:
+ The value to assign to the id property of this ApplianceExportJobSummary.
+ :type id: str
+
+ :param bucket_name:
+ The value to assign to the bucket_name property of this ApplianceExportJobSummary.
+ :type bucket_name: str
+
+ :param display_name:
+ The value to assign to the display_name property of this ApplianceExportJobSummary.
+ :type display_name: str
+
+ :param creation_time:
+ The value to assign to the creation_time property of this ApplianceExportJobSummary.
+ :type creation_time: datetime
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this ApplianceExportJobSummary.
+ Allowed values for this property are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this ApplianceExportJobSummary.
+ :type lifecycle_state_details: str
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this ApplianceExportJobSummary.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this ApplianceExportJobSummary.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'id': 'str',
+ 'bucket_name': 'str',
+ 'display_name': 'str',
+ 'creation_time': 'datetime',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'id': 'id',
+ 'bucket_name': 'bucketName',
+ 'display_name': 'displayName',
+ 'creation_time': 'creationTime',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._id = None
+ self._bucket_name = None
+ self._display_name = None
+ self._creation_time = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def id(self):
+ """
+ Gets the id of this ApplianceExportJobSummary.
+
+ :return: The id of this ApplianceExportJobSummary.
+ :rtype: str
+ """
+ return self._id
+
+ @id.setter
+ def id(self, id):
+ """
+ Sets the id of this ApplianceExportJobSummary.
+
+ :param id: The id of this ApplianceExportJobSummary.
+ :type: str
+ """
+ self._id = id
+
+ @property
+ def bucket_name(self):
+ """
+ Gets the bucket_name of this ApplianceExportJobSummary.
+
+ :return: The bucket_name of this ApplianceExportJobSummary.
+ :rtype: str
+ """
+ return self._bucket_name
+
+ @bucket_name.setter
+ def bucket_name(self, bucket_name):
+ """
+ Sets the bucket_name of this ApplianceExportJobSummary.
+
+ :param bucket_name: The bucket_name of this ApplianceExportJobSummary.
+ :type: str
+ """
+ self._bucket_name = bucket_name
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this ApplianceExportJobSummary.
+
+ :return: The display_name of this ApplianceExportJobSummary.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this ApplianceExportJobSummary.
+
+ :param display_name: The display_name of this ApplianceExportJobSummary.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def creation_time(self):
+ """
+ Gets the creation_time of this ApplianceExportJobSummary.
+
+ :return: The creation_time of this ApplianceExportJobSummary.
+ :rtype: datetime
+ """
+ return self._creation_time
+
+ @creation_time.setter
+ def creation_time(self, creation_time):
+ """
+ Sets the creation_time of this ApplianceExportJobSummary.
+
+ :param creation_time: The creation_time of this ApplianceExportJobSummary.
+ :type: datetime
+ """
+ self._creation_time = creation_time
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this ApplianceExportJobSummary.
+ Allowed values for this property are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED", 'UNKNOWN_ENUM_VALUE'.
+ Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
+
+
+ :return: The lifecycle_state of this ApplianceExportJobSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this ApplianceExportJobSummary.
+
+ :param lifecycle_state: The lifecycle_state of this ApplianceExportJobSummary.
+ :type: str
+ """
+ allowed_values = ["CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ lifecycle_state = 'UNKNOWN_ENUM_VALUE'
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_state_details(self):
+ """
+ Gets the lifecycle_state_details of this ApplianceExportJobSummary.
+ A property that can contain details on the lifecycle.
+
+
+ :return: The lifecycle_state_details of this ApplianceExportJobSummary.
+ :rtype: str
+ """
+ return self._lifecycle_state_details
+
+ @lifecycle_state_details.setter
+ def lifecycle_state_details(self, lifecycle_state_details):
+ """
+ Sets the lifecycle_state_details of this ApplianceExportJobSummary.
+ A property that can contain details on the lifecycle.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this ApplianceExportJobSummary.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this ApplianceExportJobSummary.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this ApplianceExportJobSummary.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this ApplianceExportJobSummary.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this ApplianceExportJobSummary.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this ApplianceExportJobSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this ApplianceExportJobSummary.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this ApplianceExportJobSummary.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this ApplianceExportJobSummary.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/dts/models/change_appliance_export_job_compartment_details.py b/src/oci/dts/models/change_appliance_export_job_compartment_details.py
new file mode 100644
index 0000000000..ab4b5be68b
--- /dev/null
+++ b/src/oci/dts/models/change_appliance_export_job_compartment_details.py
@@ -0,0 +1,73 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class ChangeApplianceExportJobCompartmentDetails(object):
+ """
+ ChangeApplianceExportJobCompartmentDetails model.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new ChangeApplianceExportJobCompartmentDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this ChangeApplianceExportJobCompartmentDetails.
+ :type compartment_id: str
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId'
+ }
+
+ self._compartment_id = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this ChangeApplianceExportJobCompartmentDetails.
+ The `OCID]`__ of the compartment into which the resources should be moved.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :return: The compartment_id of this ChangeApplianceExportJobCompartmentDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this ChangeApplianceExportJobCompartmentDetails.
+ The `OCID]`__ of the compartment into which the resources should be moved.
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm
+
+
+ :param compartment_id: The compartment_id of this ChangeApplianceExportJobCompartmentDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/dts/models/create_appliance_export_job_details.py b/src/oci/dts/models/create_appliance_export_job_details.py
new file mode 100644
index 0000000000..f559f3be7b
--- /dev/null
+++ b/src/oci/dts/models/create_appliance_export_job_details.py
@@ -0,0 +1,321 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class CreateApplianceExportJobDetails(object):
+ """
+ CreateApplianceExportJobDetails model.
+ """
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new CreateApplianceExportJobDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param compartment_id:
+ The value to assign to the compartment_id property of this CreateApplianceExportJobDetails.
+ :type compartment_id: str
+
+ :param bucket_name:
+ The value to assign to the bucket_name property of this CreateApplianceExportJobDetails.
+ :type bucket_name: str
+
+ :param display_name:
+ The value to assign to the display_name property of this CreateApplianceExportJobDetails.
+ :type display_name: str
+
+ :param prefix:
+ The value to assign to the prefix property of this CreateApplianceExportJobDetails.
+ :type prefix: str
+
+ :param range_start:
+ The value to assign to the range_start property of this CreateApplianceExportJobDetails.
+ :type range_start: str
+
+ :param range_end:
+ The value to assign to the range_end property of this CreateApplianceExportJobDetails.
+ :type range_end: str
+
+ :param customer_shipping_address:
+ The value to assign to the customer_shipping_address property of this CreateApplianceExportJobDetails.
+ :type customer_shipping_address: ShippingAddress
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this CreateApplianceExportJobDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this CreateApplianceExportJobDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'compartment_id': 'str',
+ 'bucket_name': 'str',
+ 'display_name': 'str',
+ 'prefix': 'str',
+ 'range_start': 'str',
+ 'range_end': 'str',
+ 'customer_shipping_address': 'ShippingAddress',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'compartment_id': 'compartmentId',
+ 'bucket_name': 'bucketName',
+ 'display_name': 'displayName',
+ 'prefix': 'prefix',
+ 'range_start': 'rangeStart',
+ 'range_end': 'rangeEnd',
+ 'customer_shipping_address': 'customerShippingAddress',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._compartment_id = None
+ self._bucket_name = None
+ self._display_name = None
+ self._prefix = None
+ self._range_start = None
+ self._range_end = None
+ self._customer_shipping_address = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def compartment_id(self):
+ """
+ **[Required]** Gets the compartment_id of this CreateApplianceExportJobDetails.
+
+ :return: The compartment_id of this CreateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._compartment_id
+
+ @compartment_id.setter
+ def compartment_id(self, compartment_id):
+ """
+ Sets the compartment_id of this CreateApplianceExportJobDetails.
+
+ :param compartment_id: The compartment_id of this CreateApplianceExportJobDetails.
+ :type: str
+ """
+ self._compartment_id = compartment_id
+
+ @property
+ def bucket_name(self):
+ """
+ **[Required]** Gets the bucket_name of this CreateApplianceExportJobDetails.
+
+ :return: The bucket_name of this CreateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._bucket_name
+
+ @bucket_name.setter
+ def bucket_name(self, bucket_name):
+ """
+ Sets the bucket_name of this CreateApplianceExportJobDetails.
+
+ :param bucket_name: The bucket_name of this CreateApplianceExportJobDetails.
+ :type: str
+ """
+ self._bucket_name = bucket_name
+
+ @property
+ def display_name(self):
+ """
+ **[Required]** Gets the display_name of this CreateApplianceExportJobDetails.
+
+ :return: The display_name of this CreateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this CreateApplianceExportJobDetails.
+
+ :param display_name: The display_name of this CreateApplianceExportJobDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def prefix(self):
+ """
+ Gets the prefix of this CreateApplianceExportJobDetails.
+ List of objects with names matching this prefix would be part of this export job.
+
+
+ :return: The prefix of this CreateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._prefix
+
+ @prefix.setter
+ def prefix(self, prefix):
+ """
+ Sets the prefix of this CreateApplianceExportJobDetails.
+ List of objects with names matching this prefix would be part of this export job.
+
+
+ :param prefix: The prefix of this CreateApplianceExportJobDetails.
+ :type: str
+ """
+ self._prefix = prefix
+
+ @property
+ def range_start(self):
+ """
+ Gets the range_start of this CreateApplianceExportJobDetails.
+ Object names returned by a list query must be greater or equal to this parameter.
+
+
+ :return: The range_start of this CreateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._range_start
+
+ @range_start.setter
+ def range_start(self, range_start):
+ """
+ Sets the range_start of this CreateApplianceExportJobDetails.
+ Object names returned by a list query must be greater or equal to this parameter.
+
+
+ :param range_start: The range_start of this CreateApplianceExportJobDetails.
+ :type: str
+ """
+ self._range_start = range_start
+
+ @property
+ def range_end(self):
+ """
+ Gets the range_end of this CreateApplianceExportJobDetails.
+ Object names returned by a list query must be strictly less than this parameter.
+
+
+ :return: The range_end of this CreateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._range_end
+
+ @range_end.setter
+ def range_end(self, range_end):
+ """
+ Sets the range_end of this CreateApplianceExportJobDetails.
+ Object names returned by a list query must be strictly less than this parameter.
+
+
+ :param range_end: The range_end of this CreateApplianceExportJobDetails.
+ :type: str
+ """
+ self._range_end = range_end
+
+ @property
+ def customer_shipping_address(self):
+ """
+ **[Required]** Gets the customer_shipping_address of this CreateApplianceExportJobDetails.
+
+ :return: The customer_shipping_address of this CreateApplianceExportJobDetails.
+ :rtype: ShippingAddress
+ """
+ return self._customer_shipping_address
+
+ @customer_shipping_address.setter
+ def customer_shipping_address(self, customer_shipping_address):
+ """
+ Sets the customer_shipping_address of this CreateApplianceExportJobDetails.
+
+ :param customer_shipping_address: The customer_shipping_address of this CreateApplianceExportJobDetails.
+ :type: ShippingAddress
+ """
+ self._customer_shipping_address = customer_shipping_address
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this CreateApplianceExportJobDetails.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this CreateApplianceExportJobDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this CreateApplianceExportJobDetails.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this CreateApplianceExportJobDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this CreateApplianceExportJobDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this CreateApplianceExportJobDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this CreateApplianceExportJobDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this CreateApplianceExportJobDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/dts/models/create_transfer_appliance_entitlement_details.py b/src/oci/dts/models/create_transfer_appliance_entitlement_details.py
index ba5e66ffe7..d0407de375 100644
--- a/src/oci/dts/models/create_transfer_appliance_entitlement_details.py
+++ b/src/oci/dts/models/create_transfer_appliance_entitlement_details.py
@@ -151,8 +151,12 @@ def requestor_email(self, requestor_email):
def freeform_tags(self):
"""
Gets the freeform_tags of this CreateTransferApplianceEntitlementDetails.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this CreateTransferApplianceEntitlementDetails.
@@ -164,8 +168,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this CreateTransferApplianceEntitlementDetails.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this CreateTransferApplianceEntitlementDetails.
@@ -177,8 +185,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this CreateTransferApplianceEntitlementDetails.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this CreateTransferApplianceEntitlementDetails.
@@ -190,8 +202,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this CreateTransferApplianceEntitlementDetails.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this CreateTransferApplianceEntitlementDetails.
diff --git a/src/oci/dts/models/create_transfer_job_details.py b/src/oci/dts/models/create_transfer_job_details.py
index 246b8219e8..d18d2614e4 100644
--- a/src/oci/dts/models/create_transfer_job_details.py
+++ b/src/oci/dts/models/create_transfer_job_details.py
@@ -168,8 +168,12 @@ def device_type(self, device_type):
def freeform_tags(self):
"""
Gets the freeform_tags of this CreateTransferJobDetails.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this CreateTransferJobDetails.
@@ -181,8 +185,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this CreateTransferJobDetails.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this CreateTransferJobDetails.
@@ -194,8 +202,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this CreateTransferJobDetails.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this CreateTransferJobDetails.
@@ -207,8 +219,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this CreateTransferJobDetails.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this CreateTransferJobDetails.
diff --git a/src/oci/dts/models/transfer_appliance_entitlement.py b/src/oci/dts/models/transfer_appliance_entitlement.py
index ad9a2ae3e6..0b7eebce25 100644
--- a/src/oci/dts/models/transfer_appliance_entitlement.py
+++ b/src/oci/dts/models/transfer_appliance_entitlement.py
@@ -314,8 +314,12 @@ def update_time(self, update_time):
def freeform_tags(self):
"""
Gets the freeform_tags of this TransferApplianceEntitlement.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this TransferApplianceEntitlement.
@@ -327,8 +331,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this TransferApplianceEntitlement.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this TransferApplianceEntitlement.
@@ -340,8 +348,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this TransferApplianceEntitlement.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this TransferApplianceEntitlement.
@@ -353,8 +365,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this TransferApplianceEntitlement.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this TransferApplianceEntitlement.
diff --git a/src/oci/dts/models/transfer_appliance_entitlement_summary.py b/src/oci/dts/models/transfer_appliance_entitlement_summary.py
index a1b6b20c5a..da102aba66 100644
--- a/src/oci/dts/models/transfer_appliance_entitlement_summary.py
+++ b/src/oci/dts/models/transfer_appliance_entitlement_summary.py
@@ -236,8 +236,12 @@ def lifecycle_state_details(self, lifecycle_state_details):
def freeform_tags(self):
"""
Gets the freeform_tags of this TransferApplianceEntitlementSummary.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this TransferApplianceEntitlementSummary.
@@ -249,8 +253,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this TransferApplianceEntitlementSummary.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this TransferApplianceEntitlementSummary.
@@ -262,8 +270,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this TransferApplianceEntitlementSummary.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this TransferApplianceEntitlementSummary.
@@ -275,8 +287,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this TransferApplianceEntitlementSummary.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this TransferApplianceEntitlementSummary.
diff --git a/src/oci/dts/models/transfer_job.py b/src/oci/dts/models/transfer_job.py
index 0a26699d71..59768a225c 100644
--- a/src/oci/dts/models/transfer_job.py
+++ b/src/oci/dts/models/transfer_job.py
@@ -396,8 +396,12 @@ def attached_transfer_device_labels(self, attached_transfer_device_labels):
def freeform_tags(self):
"""
Gets the freeform_tags of this TransferJob.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this TransferJob.
@@ -409,8 +413,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this TransferJob.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this TransferJob.
@@ -422,8 +430,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this TransferJob.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this TransferJob.
@@ -435,8 +447,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this TransferJob.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this TransferJob.
diff --git a/src/oci/dts/models/transfer_job_summary.py b/src/oci/dts/models/transfer_job_summary.py
index a57fae2837..35d30d1b0d 100644
--- a/src/oci/dts/models/transfer_job_summary.py
+++ b/src/oci/dts/models/transfer_job_summary.py
@@ -276,8 +276,12 @@ def lifecycle_state(self, lifecycle_state):
def freeform_tags(self):
"""
Gets the freeform_tags of this TransferJobSummary.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this TransferJobSummary.
@@ -289,8 +293,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this TransferJobSummary.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this TransferJobSummary.
@@ -302,8 +310,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this TransferJobSummary.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this TransferJobSummary.
@@ -315,8 +327,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this TransferJobSummary.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this TransferJobSummary.
diff --git a/src/oci/dts/models/update_appliance_export_job_details.py b/src/oci/dts/models/update_appliance_export_job_details.py
new file mode 100644
index 0000000000..8307f265b9
--- /dev/null
+++ b/src/oci/dts/models/update_appliance_export_job_details.py
@@ -0,0 +1,606 @@
+# coding: utf-8
+# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
+
+
+from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401
+from oci.decorators import init_model_state_from_kwargs
+
+
+@init_model_state_from_kwargs
+class UpdateApplianceExportJobDetails(object):
+ """
+ UpdateApplianceExportJobDetails model.
+ """
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "CREATING"
+ LIFECYCLE_STATE_CREATING = "CREATING"
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "ACTIVE"
+ LIFECYCLE_STATE_ACTIVE = "ACTIVE"
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "INPROGRESS"
+ LIFECYCLE_STATE_INPROGRESS = "INPROGRESS"
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "SUCCEEDED"
+ LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED"
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "FAILED"
+ LIFECYCLE_STATE_FAILED = "FAILED"
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "CANCELLED"
+ LIFECYCLE_STATE_CANCELLED = "CANCELLED"
+
+ #: A constant which can be used with the lifecycle_state property of a UpdateApplianceExportJobDetails.
+ #: This constant has a value of "DELETED"
+ LIFECYCLE_STATE_DELETED = "DELETED"
+
+ def __init__(self, **kwargs):
+ """
+ Initializes a new UpdateApplianceExportJobDetails object with values from keyword arguments.
+ The following keyword arguments are supported (corresponding to the getters/setters of this class):
+
+ :param bucket_name:
+ The value to assign to the bucket_name property of this UpdateApplianceExportJobDetails.
+ :type bucket_name: str
+
+ :param prefix:
+ The value to assign to the prefix property of this UpdateApplianceExportJobDetails.
+ :type prefix: str
+
+ :param range_start:
+ The value to assign to the range_start property of this UpdateApplianceExportJobDetails.
+ :type range_start: str
+
+ :param range_end:
+ The value to assign to the range_end property of this UpdateApplianceExportJobDetails.
+ :type range_end: str
+
+ :param display_name:
+ The value to assign to the display_name property of this UpdateApplianceExportJobDetails.
+ :type display_name: str
+
+ :param lifecycle_state:
+ The value to assign to the lifecycle_state property of this UpdateApplianceExportJobDetails.
+ Allowed values for this property are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"
+ :type lifecycle_state: str
+
+ :param lifecycle_state_details:
+ The value to assign to the lifecycle_state_details property of this UpdateApplianceExportJobDetails.
+ :type lifecycle_state_details: str
+
+ :param manifest_file:
+ The value to assign to the manifest_file property of this UpdateApplianceExportJobDetails.
+ :type manifest_file: str
+
+ :param manifest_md5:
+ The value to assign to the manifest_md5 property of this UpdateApplianceExportJobDetails.
+ :type manifest_md5: str
+
+ :param number_of_objects:
+ The value to assign to the number_of_objects property of this UpdateApplianceExportJobDetails.
+ :type number_of_objects: str
+
+ :param total_size_in_bytes:
+ The value to assign to the total_size_in_bytes property of this UpdateApplianceExportJobDetails.
+ :type total_size_in_bytes: str
+
+ :param first_object:
+ The value to assign to the first_object property of this UpdateApplianceExportJobDetails.
+ :type first_object: str
+
+ :param last_object:
+ The value to assign to the last_object property of this UpdateApplianceExportJobDetails.
+ :type last_object: str
+
+ :param next_object:
+ The value to assign to the next_object property of this UpdateApplianceExportJobDetails.
+ :type next_object: str
+
+ :param customer_shipping_address:
+ The value to assign to the customer_shipping_address property of this UpdateApplianceExportJobDetails.
+ :type customer_shipping_address: ShippingAddress
+
+ :param freeform_tags:
+ The value to assign to the freeform_tags property of this UpdateApplianceExportJobDetails.
+ :type freeform_tags: dict(str, str)
+
+ :param defined_tags:
+ The value to assign to the defined_tags property of this UpdateApplianceExportJobDetails.
+ :type defined_tags: dict(str, dict(str, object))
+
+ """
+ self.swagger_types = {
+ 'bucket_name': 'str',
+ 'prefix': 'str',
+ 'range_start': 'str',
+ 'range_end': 'str',
+ 'display_name': 'str',
+ 'lifecycle_state': 'str',
+ 'lifecycle_state_details': 'str',
+ 'manifest_file': 'str',
+ 'manifest_md5': 'str',
+ 'number_of_objects': 'str',
+ 'total_size_in_bytes': 'str',
+ 'first_object': 'str',
+ 'last_object': 'str',
+ 'next_object': 'str',
+ 'customer_shipping_address': 'ShippingAddress',
+ 'freeform_tags': 'dict(str, str)',
+ 'defined_tags': 'dict(str, dict(str, object))'
+ }
+
+ self.attribute_map = {
+ 'bucket_name': 'bucketName',
+ 'prefix': 'prefix',
+ 'range_start': 'rangeStart',
+ 'range_end': 'rangeEnd',
+ 'display_name': 'displayName',
+ 'lifecycle_state': 'lifecycleState',
+ 'lifecycle_state_details': 'lifecycleStateDetails',
+ 'manifest_file': 'manifestFile',
+ 'manifest_md5': 'manifestMd5',
+ 'number_of_objects': 'numberOfObjects',
+ 'total_size_in_bytes': 'totalSizeInBytes',
+ 'first_object': 'firstObject',
+ 'last_object': 'lastObject',
+ 'next_object': 'nextObject',
+ 'customer_shipping_address': 'customerShippingAddress',
+ 'freeform_tags': 'freeformTags',
+ 'defined_tags': 'definedTags'
+ }
+
+ self._bucket_name = None
+ self._prefix = None
+ self._range_start = None
+ self._range_end = None
+ self._display_name = None
+ self._lifecycle_state = None
+ self._lifecycle_state_details = None
+ self._manifest_file = None
+ self._manifest_md5 = None
+ self._number_of_objects = None
+ self._total_size_in_bytes = None
+ self._first_object = None
+ self._last_object = None
+ self._next_object = None
+ self._customer_shipping_address = None
+ self._freeform_tags = None
+ self._defined_tags = None
+
+ @property
+ def bucket_name(self):
+ """
+ Gets the bucket_name of this UpdateApplianceExportJobDetails.
+
+ :return: The bucket_name of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._bucket_name
+
+ @bucket_name.setter
+ def bucket_name(self, bucket_name):
+ """
+ Sets the bucket_name of this UpdateApplianceExportJobDetails.
+
+ :param bucket_name: The bucket_name of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._bucket_name = bucket_name
+
+ @property
+ def prefix(self):
+ """
+ Gets the prefix of this UpdateApplianceExportJobDetails.
+ List of objects with names matching this prefix would be part of this export job.
+
+
+ :return: The prefix of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._prefix
+
+ @prefix.setter
+ def prefix(self, prefix):
+ """
+ Sets the prefix of this UpdateApplianceExportJobDetails.
+ List of objects with names matching this prefix would be part of this export job.
+
+
+ :param prefix: The prefix of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._prefix = prefix
+
+ @property
+ def range_start(self):
+ """
+ Gets the range_start of this UpdateApplianceExportJobDetails.
+ Object names returned by a list query must be greater or equal to this parameter.
+
+
+ :return: The range_start of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._range_start
+
+ @range_start.setter
+ def range_start(self, range_start):
+ """
+ Sets the range_start of this UpdateApplianceExportJobDetails.
+ Object names returned by a list query must be greater or equal to this parameter.
+
+
+ :param range_start: The range_start of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._range_start = range_start
+
+ @property
+ def range_end(self):
+ """
+ Gets the range_end of this UpdateApplianceExportJobDetails.
+ Object names returned by a list query must be strictly less than this parameter.
+
+
+ :return: The range_end of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._range_end
+
+ @range_end.setter
+ def range_end(self, range_end):
+ """
+ Sets the range_end of this UpdateApplianceExportJobDetails.
+ Object names returned by a list query must be strictly less than this parameter.
+
+
+ :param range_end: The range_end of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._range_end = range_end
+
+ @property
+ def display_name(self):
+ """
+ Gets the display_name of this UpdateApplianceExportJobDetails.
+
+ :return: The display_name of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._display_name
+
+ @display_name.setter
+ def display_name(self, display_name):
+ """
+ Sets the display_name of this UpdateApplianceExportJobDetails.
+
+ :param display_name: The display_name of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._display_name = display_name
+
+ @property
+ def lifecycle_state(self):
+ """
+ Gets the lifecycle_state of this UpdateApplianceExportJobDetails.
+ Allowed values for this property are: "CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"
+
+
+ :return: The lifecycle_state of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._lifecycle_state
+
+ @lifecycle_state.setter
+ def lifecycle_state(self, lifecycle_state):
+ """
+ Sets the lifecycle_state of this UpdateApplianceExportJobDetails.
+
+ :param lifecycle_state: The lifecycle_state of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ allowed_values = ["CREATING", "ACTIVE", "INPROGRESS", "SUCCEEDED", "FAILED", "CANCELLED", "DELETED"]
+ if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values):
+ raise ValueError(
+ "Invalid value for `lifecycle_state`, must be None or one of {0}"
+ .format(allowed_values)
+ )
+ self._lifecycle_state = lifecycle_state
+
+ @property
+ def lifecycle_state_details(self):
+ """
+ Gets the lifecycle_state_details of this UpdateApplianceExportJobDetails.
+ A property that can contain details on the lifecycle.
+
+
+ :return: The lifecycle_state_details of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._lifecycle_state_details
+
+ @lifecycle_state_details.setter
+ def lifecycle_state_details(self, lifecycle_state_details):
+ """
+ Sets the lifecycle_state_details of this UpdateApplianceExportJobDetails.
+ A property that can contain details on the lifecycle.
+
+
+ :param lifecycle_state_details: The lifecycle_state_details of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._lifecycle_state_details = lifecycle_state_details
+
+ @property
+ def manifest_file(self):
+ """
+ Gets the manifest_file of this UpdateApplianceExportJobDetails.
+ Manifest File associated with this export job.
+
+
+ :return: The manifest_file of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._manifest_file
+
+ @manifest_file.setter
+ def manifest_file(self, manifest_file):
+ """
+ Sets the manifest_file of this UpdateApplianceExportJobDetails.
+ Manifest File associated with this export job.
+
+
+ :param manifest_file: The manifest_file of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._manifest_file = manifest_file
+
+ @property
+ def manifest_md5(self):
+ """
+ Gets the manifest_md5 of this UpdateApplianceExportJobDetails.
+ md5 digest of the manifest file.
+
+
+ :return: The manifest_md5 of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._manifest_md5
+
+ @manifest_md5.setter
+ def manifest_md5(self, manifest_md5):
+ """
+ Sets the manifest_md5 of this UpdateApplianceExportJobDetails.
+ md5 digest of the manifest file.
+
+
+ :param manifest_md5: The manifest_md5 of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._manifest_md5 = manifest_md5
+
+ @property
+ def number_of_objects(self):
+ """
+ Gets the number_of_objects of this UpdateApplianceExportJobDetails.
+ Total number of objects that are exported in this job.
+
+
+ :return: The number_of_objects of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._number_of_objects
+
+ @number_of_objects.setter
+ def number_of_objects(self, number_of_objects):
+ """
+ Sets the number_of_objects of this UpdateApplianceExportJobDetails.
+ Total number of objects that are exported in this job.
+
+
+ :param number_of_objects: The number_of_objects of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._number_of_objects = number_of_objects
+
+ @property
+ def total_size_in_bytes(self):
+ """
+ Gets the total_size_in_bytes of this UpdateApplianceExportJobDetails.
+ Total size of objects in Bytes that are exported in this job.
+
+
+ :return: The total_size_in_bytes of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._total_size_in_bytes
+
+ @total_size_in_bytes.setter
+ def total_size_in_bytes(self, total_size_in_bytes):
+ """
+ Sets the total_size_in_bytes of this UpdateApplianceExportJobDetails.
+ Total size of objects in Bytes that are exported in this job.
+
+
+ :param total_size_in_bytes: The total_size_in_bytes of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._total_size_in_bytes = total_size_in_bytes
+
+ @property
+ def first_object(self):
+ """
+ Gets the first_object of this UpdateApplianceExportJobDetails.
+ First object in the list of objects that are exported in this job.
+
+
+ :return: The first_object of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._first_object
+
+ @first_object.setter
+ def first_object(self, first_object):
+ """
+ Sets the first_object of this UpdateApplianceExportJobDetails.
+ First object in the list of objects that are exported in this job.
+
+
+ :param first_object: The first_object of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._first_object = first_object
+
+ @property
+ def last_object(self):
+ """
+ Gets the last_object of this UpdateApplianceExportJobDetails.
+ Last object in the list of objects that are exported in this job.
+
+
+ :return: The last_object of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._last_object
+
+ @last_object.setter
+ def last_object(self, last_object):
+ """
+ Sets the last_object of this UpdateApplianceExportJobDetails.
+ Last object in the list of objects that are exported in this job.
+
+
+ :param last_object: The last_object of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._last_object = last_object
+
+ @property
+ def next_object(self):
+ """
+ Gets the next_object of this UpdateApplianceExportJobDetails.
+ First object from which the next potential export job could start.
+
+
+ :return: The next_object of this UpdateApplianceExportJobDetails.
+ :rtype: str
+ """
+ return self._next_object
+
+ @next_object.setter
+ def next_object(self, next_object):
+ """
+ Sets the next_object of this UpdateApplianceExportJobDetails.
+ First object from which the next potential export job could start.
+
+
+ :param next_object: The next_object of this UpdateApplianceExportJobDetails.
+ :type: str
+ """
+ self._next_object = next_object
+
+ @property
+ def customer_shipping_address(self):
+ """
+ Gets the customer_shipping_address of this UpdateApplianceExportJobDetails.
+
+ :return: The customer_shipping_address of this UpdateApplianceExportJobDetails.
+ :rtype: ShippingAddress
+ """
+ return self._customer_shipping_address
+
+ @customer_shipping_address.setter
+ def customer_shipping_address(self, customer_shipping_address):
+ """
+ Sets the customer_shipping_address of this UpdateApplianceExportJobDetails.
+
+ :param customer_shipping_address: The customer_shipping_address of this UpdateApplianceExportJobDetails.
+ :type: ShippingAddress
+ """
+ self._customer_shipping_address = customer_shipping_address
+
+ @property
+ def freeform_tags(self):
+ """
+ Gets the freeform_tags of this UpdateApplianceExportJobDetails.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The freeform_tags of this UpdateApplianceExportJobDetails.
+ :rtype: dict(str, str)
+ """
+ return self._freeform_tags
+
+ @freeform_tags.setter
+ def freeform_tags(self, freeform_tags):
+ """
+ Sets the freeform_tags of this UpdateApplianceExportJobDetails.
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param freeform_tags: The freeform_tags of this UpdateApplianceExportJobDetails.
+ :type: dict(str, str)
+ """
+ self._freeform_tags = freeform_tags
+
+ @property
+ def defined_tags(self):
+ """
+ Gets the defined_tags of this UpdateApplianceExportJobDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :return: The defined_tags of this UpdateApplianceExportJobDetails.
+ :rtype: dict(str, dict(str, object))
+ """
+ return self._defined_tags
+
+ @defined_tags.setter
+ def defined_tags(self, defined_tags):
+ """
+ Sets the defined_tags of this UpdateApplianceExportJobDetails.
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
+
+
+ :param defined_tags: The defined_tags of this UpdateApplianceExportJobDetails.
+ :type: dict(str, dict(str, object))
+ """
+ self._defined_tags = defined_tags
+
+ def __repr__(self):
+ return formatted_flat_dict(self)
+
+ def __eq__(self, other):
+ if other is None:
+ return False
+
+ return self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not self == other
diff --git a/src/oci/dts/models/update_transfer_job_details.py b/src/oci/dts/models/update_transfer_job_details.py
index 0e38f56d3e..a41fd94cd1 100644
--- a/src/oci/dts/models/update_transfer_job_details.py
+++ b/src/oci/dts/models/update_transfer_job_details.py
@@ -154,8 +154,12 @@ def device_type(self, device_type):
def freeform_tags(self):
"""
Gets the freeform_tags of this UpdateTransferJobDetails.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The freeform_tags of this UpdateTransferJobDetails.
@@ -167,8 +171,12 @@ def freeform_tags(self):
def freeform_tags(self, freeform_tags):
"""
Sets the freeform_tags of this UpdateTransferJobDetails.
- Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
- Example: `{\"bar-key\": \"value\"}`
+ 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`__.
+
+ Example: `{\"Department\": \"Finance\"}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param freeform_tags: The freeform_tags of this UpdateTransferJobDetails.
@@ -180,8 +188,12 @@ def freeform_tags(self, freeform_tags):
def defined_tags(self):
"""
Gets the defined_tags of this UpdateTransferJobDetails.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:return: The defined_tags of this UpdateTransferJobDetails.
@@ -193,8 +205,12 @@ def defined_tags(self):
def defined_tags(self, defined_tags):
"""
Sets the defined_tags of this UpdateTransferJobDetails.
- Usage of predefined tag keys. These predefined keys are scoped to namespaces.
- Example: `{\"foo-namespace\": {\"bar-key\": \"foo-value\"}}`
+ Defined tags for this resource. Each key is predefined and scoped to a
+ namespace. For more information, see `Resource Tags`__.
+
+ Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
+
+ __ https://docs.cloud.oracle.com/Content/General/Concepts/resourcetags.htm
:param defined_tags: The defined_tags of this UpdateTransferJobDetails.
diff --git a/src/oci/dts/transfer_job_client.py b/src/oci/dts/transfer_job_client.py
index f34a0ecbfc..5e72e14e50 100644
--- a/src/oci/dts/transfer_job_client.py
+++ b/src/oci/dts/transfer_job_client.py
@@ -185,6 +185,10 @@ def create_transfer_job(self, create_transfer_job_details, **kwargs):
:param str opc_retry_token: (optional)
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
:param obj retry_strategy: (optional)
A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
@@ -202,7 +206,8 @@ def create_transfer_job(self, create_transfer_job_details, **kwargs):
# Don't accept unknown kwargs
expected_kwargs = [
"retry_strategy",
- "opc_retry_token"
+ "opc_retry_token",
+ "opc_request_id"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
@@ -212,7 +217,8 @@ def create_transfer_job(self, create_transfer_job_details, **kwargs):
header_params = {
"accept": "application/json",
"content-type": "application/json",
- "opc-retry-token": kwargs.get("opc_retry_token", missing)
+ "opc-retry-token": kwargs.get("opc_retry_token", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
}
header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
@@ -247,6 +253,10 @@ def delete_transfer_job(self, id, **kwargs):
:param str id: (required)
ID of the Transfer Job
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
:param obj retry_strategy: (optional)
A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
@@ -261,7 +271,11 @@ def delete_transfer_job(self, id, **kwargs):
resource_path = "/transferJobs/{id}"
method = "DELETE"
- expected_kwargs = ["retry_strategy"]
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
@@ -279,8 +293,10 @@ def delete_transfer_job(self, id, **kwargs):
header_params = {
"accept": "application/json",
- "content-type": "application/json"
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
}
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
retry_strategy = self.retry_strategy
if kwargs.get('retry_strategy'):
@@ -309,6 +325,10 @@ def get_transfer_job(self, id, **kwargs):
:param str id: (required)
OCID of the Transfer Job
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
:param obj retry_strategy: (optional)
A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
@@ -323,7 +343,11 @@ def get_transfer_job(self, id, **kwargs):
resource_path = "/transferJobs/{id}"
method = "GET"
- expected_kwargs = ["retry_strategy"]
+ # Don't accept unknown kwargs
+ expected_kwargs = [
+ "retry_strategy",
+ "opc_request_id"
+ ]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
raise ValueError(
@@ -341,8 +365,10 @@ def get_transfer_job(self, id, **kwargs):
header_params = {
"accept": "application/json",
- "content-type": "application/json"
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
}
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
retry_strategy = self.retry_strategy
if kwargs.get('retry_strategy'):
@@ -381,6 +407,26 @@ def list_transfer_jobs(self, compartment_id, **kwargs):
:param str display_name: (optional)
filtering by displayName
+ :param int limit: (optional)
+ For list pagination. The maximum number of results per page, or items to return in a paginated
+ \"List\" call. For important details about how pagination works, see
+ `List Pagination`__.
+
+ Example: `50`
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str page: (optional)
+ For list pagination. The value of the `opc-next-page` response header from the previous \"List\"
+ call. For important details about how pagination works, see
+ `List Pagination`__.
+
+ __ https://docs.cloud.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine
+
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
:param obj retry_strategy: (optional)
A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
@@ -399,7 +445,10 @@ def list_transfer_jobs(self, compartment_id, **kwargs):
expected_kwargs = [
"retry_strategy",
"lifecycle_state",
- "display_name"
+ "display_name",
+ "limit",
+ "page",
+ "opc_request_id"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
@@ -416,14 +465,18 @@ def list_transfer_jobs(self, compartment_id, **kwargs):
query_params = {
"compartmentId": compartment_id,
"lifecycleState": kwargs.get("lifecycle_state", missing),
- "displayName": kwargs.get("display_name", missing)
+ "displayName": kwargs.get("display_name", missing),
+ "limit": kwargs.get("limit", missing),
+ "page": kwargs.get("page", missing)
}
query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
header_params = {
"accept": "application/json",
- "content-type": "application/json"
+ "content-type": "application/json",
+ "opc-request-id": kwargs.get("opc_request_id", missing)
}
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
retry_strategy = self.retry_strategy
if kwargs.get('retry_strategy'):
@@ -461,6 +514,10 @@ def update_transfer_job(self, id, update_transfer_job_details, **kwargs):
The entity tag to match. Optional, if set, the update will be successful only if the
object's tag matches the tag specified in the request.
+ :param str opc_request_id: (optional)
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about
+ a particular request, please provide the request ID.
+
:param obj retry_strategy: (optional)
A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
@@ -478,7 +535,8 @@ def update_transfer_job(self, id, update_transfer_job_details, **kwargs):
# Don't accept unknown kwargs
expected_kwargs = [
"retry_strategy",
- "if_match"
+ "if_match",
+ "opc_request_id"
]
extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
if extra_kwargs:
@@ -498,7 +556,8 @@ def update_transfer_job(self, id, update_transfer_job_details, **kwargs):
header_params = {
"accept": "application/json",
"content-type": "application/json",
- "if-match": kwargs.get("if_match", missing)
+ "if-match": kwargs.get("if_match", missing),
+ "opc-request-id": kwargs.get("opc_request_id", missing)
}
header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
diff --git a/src/oci/version.py b/src/oci/version.py
index b734b307e5..f2d3c8f31b 100644
--- a/src/oci/version.py
+++ b/src/oci/version.py
@@ -1,4 +1,4 @@
# coding: utf-8
# Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
-__version__ = "2.10.1"
+__version__ = "2.10.2"