o
    ɶd^                     @   s8   d dl mZmZmZ d dlmZ eG dd deZdS )    )formatted_flat_dictNONE_SENTINEL#value_allowed_none_or_none_sentinel)init_model_state_from_kwargsc                   @   s  e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zedd Zejdd Zed d! Zejd"d! Zed#d$ Zejd%d$ Zed&d' Zejd(d' Zed)d* Zejd+d* Zed,d- Zejd.d- Zed/d0 Zejd1d0 Zed2d3 Zejd4d3 Zed5d6 Zejd7d6 Zed8d9 Zejd:d9 Zed;d< Z e jd=d< Z ed>d? Z!e!jd@d? Z!edAdB Z"e"jdCdB Z"edDdE Z#e#jdFdE Z#edGdH Z$e$jdIdH Z$edJdK Z%e%jdLdK Z%edMdN Z&e&jdOdN Z&edPdQ Z'e'jdRdQ Z'edSdT Z(e(jdUdT Z(edVdW Z)e)jdXdW Z)edYdZ Z*e*jd[dZ Z*ed\d] Z+e+jd^d] Z+ed_d` Z,e,jdad` Z,edbdc Z-e-jdddc Z-ededf Z.e.jdgdf Z.edhdi Z/e/jdjdi Z/edkdl Z0e0jdmdl Z0edndo Z1e1jdpdo Z1edqdr Z2e2jdsdr Z2dtdu Z3dvdw Z4dxdy Z5dzS ){Applicationz)
    A Data Flow application object.
    SCALAJAVAPYTHONSQLACTIVEDELETEDINACTIVEBATCH	STREAMINGSESSIONc                 K   s|  i dddddddddd	d
ddddddddddddddddddddd	ddi ddddddddddddddd d!d"dd#dd$dd%d&d'd&d(dd)dd*dd+d| _ i dd,dd-dddd.ddd
d/dd0dddd1dd2dd3dddd4dd5dd6dd7ddi dddd8dd9dd:dd;dd<dd=d d d"d>d#d?d$d@d%dAd'dBd(d(d)dCd*dDd+dE| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _	dF| _
dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _dF| _ dF| _!dF| _"dF| _#dFS )Ga  
        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 application_log_config:
            The value to assign to the application_log_config property of this Application.
        :type application_log_config: oci.data_flow.models.ApplicationLogConfig

        :param archive_uri:
            The value to assign to the archive_uri property of this Application.
        :type archive_uri: str

        :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 driver_shape_config:
            The value to assign to the driver_shape_config property of this Application.
        :type driver_shape_config: oci.data_flow.models.ShapeConfig

        :param execute:
            The value to assign to the execute property of this Application.
        :type execute: str

        :param executor_shape:
            The value to assign to the executor_shape property of this Application.
        :type executor_shape: str

        :param executor_shape_config:
            The value to assign to the executor_shape_config property of this Application.
        :type executor_shape_config: oci.data_flow.models.ShapeConfig

        :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 metastore_id:
            The value to assign to the metastore_id property of this Application.
        :type metastore_id: 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[oci.data_flow.models.ApplicationParameter]

        :param pool_id:
            The value to assign to the pool_id property of this Application.
        :type pool_id: str

        :param private_endpoint_id:
            The value to assign to the private_endpoint_id property of this Application.
        :type private_endpoint_id: str

        :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 type:
            The value to assign to the type property of this Application.
            Allowed values for this property are: "BATCH", "STREAMING", "SESSION", 'UNKNOWN_ENUM_VALUE'.
            Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.
        :type type: str

        :param warehouse_bucket_uri:
            The value to assign to the warehouse_bucket_uri property of this Application.
        :type warehouse_bucket_uri: str

        :param max_duration_in_minutes:
            The value to assign to the max_duration_in_minutes property of this Application.
        :type max_duration_in_minutes: int

        :param idle_timeout_in_minutes:
            The value to assign to the idle_timeout_in_minutes property of this Application.
        :type idle_timeout_in_minutes: int

        application_log_configZApplicationLogConfigarchive_uristr	argumentsz	list[str]
class_nameconfigurationzdict(str, str)compartment_iddefined_tagszdict(str, dict(str, object))descriptiondisplay_namedriver_shapedriver_shape_configZShapeConfigexecuteexecutor_shapeexecutor_shape_configfile_urifreeform_tagsidlanguagelifecycle_statelogs_bucket_urimetastore_idnum_executorsintowner_principal_idowner_user_name
parameterszlist[ApplicationParameter]pool_idprivate_endpoint_idspark_versiontime_createddatetimetime_updatedtypewarehouse_bucket_urimax_duration_in_minutesidle_timeout_in_minutesZapplicationLogConfigZ
archiveUriZ	classNameZcompartmentIdZdefinedTagsZdisplayNameZdriverShapeZdriverShapeConfigZexecutorShapeZexecutorShapeConfigZfileUriZfreeformTagsZlifecycleStateZlogsBucketUriZmetastoreIdZnumExecutorsZownerPrincipalIdZownerUserNameZpoolIdZprivateEndpointIdZsparkVersionZtimeCreatedZtimeUpdatedZwarehouseBucketUriZmaxDurationInMinutesZidleTimeoutInMinutesN)$Zswagger_typesZattribute_map_application_log_config_archive_uri
_arguments_class_name_configuration_compartment_id_defined_tags_description_display_name_driver_shape_driver_shape_config_execute_executor_shape_executor_shape_config	_file_uri_freeform_tags_id	_language_lifecycle_state_logs_bucket_uri_metastore_id_num_executors_owner_principal_id_owner_user_name_parameters_pool_id_private_endpoint_id_spark_version_time_created_time_updated_type_warehouse_bucket_uri_max_duration_in_minutes_idle_timeout_in_minutes)selfkwargs rZ   Dusr/lib/python3.10/site-packages/oci/data_flow/models/application.py__init__:   sZ   	
 !"%	
 !"%
zApplication.__init__c                 C      | j S )z
        Gets the application_log_config of this Application.

        :return: The application_log_config of this Application.
        :rtype: oci.data_flow.models.ApplicationLogConfig
        r6   rX   rZ   rZ   r[   r   ;     z"Application.application_log_configc                 C   
   || _ dS )z
        Sets the application_log_config of this Application.

        :param application_log_config: The application_log_config of this Application.
        :type: oci.data_flow.models.ApplicationLogConfig
        Nr^   )rX   r   rZ   rZ   r[   r   E     
c                 C   r]   )a.  
        Gets the archive_uri of this Application.
        A comma separated list of one or more archive files as Oracle Cloud Infrastructure URIs. For example, ``oci://path/to/a.zip,oci://path/to/b.zip``. An Oracle Cloud Infrastructure URI of an archive.zip file containing custom dependencies that may be used to support the execution of a Python, Java, or Scala application.
        See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat.


        :return: The archive_uri of this Application.
        :rtype: str
        r7   r_   rZ   rZ   r[   r   O     zApplication.archive_uric                 C   ra   )a8  
        Sets the archive_uri of this Application.
        A comma separated list of one or more archive files as Oracle Cloud Infrastructure URIs. For example, ``oci://path/to/a.zip,oci://path/to/b.zip``. An Oracle Cloud Infrastructure URI of an archive.zip file containing custom dependencies that may be used to support the execution of a Python, Java, or Scala application.
        See https://docs.cloud.oracle.com/iaas/Content/API/SDKDocs/hdfsconnector.htm#uriformat.


        :param archive_uri: The archive_uri of this Application.
        :type: str
        Nrc   )rX   r   rZ   rZ   r[   r   \     
c                 C   r]   )a4  
        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]
        r8   r_   rZ   rZ   r[   r   i  s   zApplication.argumentsc                 C   ra   )a<  
        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]
        Nrf   )rX   r   rZ   rZ   r[   r   |  s   
c                 C   r]   )z
        Gets the class_name of this Application.
        The class for the application.


        :return: The class_name of this Application.
        :rtype: str
        r9   r_   rZ   rZ   r[   r        
zApplication.class_namec                 C   ra   )z
        Sets the class_name of this Application.
        The class for the application.


        :param class_name: The class_name of this Application.
        :type: str
        Nrg   )rX   r   rZ   rZ   r[   r        

c                 C   r]   )a>  
        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)
        r:   r_   rZ   rZ   r[   r        zApplication.configurationc                 C   ra   )aJ  
        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)
        Nrj   )rX   r   rZ   rZ   r[   r        
c                 C   r]   )z
        **[Required]** Gets the compartment_id of this Application.
        The OCID of a compartment.


        :return: The compartment_id of this Application.
        :rtype: str
        r;   r_   rZ   rZ   r[   r     rh   zApplication.compartment_idc                 C   ra   )z
        Sets the compartment_id of this Application.
        The OCID of a compartment.


        :param compartment_id: The compartment_id of this Application.
        :type: str
        Nrm   )rX   r   rZ   rZ   r[   r     ri   c                 C   r]   )a  
        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))
        r<   r_   rZ   rZ   r[   r        zApplication.defined_tagsc                 C   ra   )a  
        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))
        Nrn   )rX   r   rZ   rZ   r[   r        
c                 C   r]   )z
        Gets the description of this Application.
        A user-friendly description.


        :return: The description of this Application.
        :rtype: str
        r=   r_   rZ   rZ   r[   r     rh   zApplication.descriptionc                 C   ra   )z
        Sets the description of this Application.
        A user-friendly description.


        :param description: The description of this Application.
        :type: str
        Nrq   )rX   r   rZ   rZ   r[   r   	  ri   c                 C   r]   )z
        **[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
        r>   r_   rZ   rZ   r[   r     rh   zApplication.display_namec                 C   ra   )z
        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
        Nrr   )rX   r   rZ   rZ   r[   r   !  ri   c                 C   r]   )z
        **[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
        r?   r_   rZ   rZ   r[   r   -  rh   zApplication.driver_shapec                 C   ra   )z
        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
        Nrs   )rX   r   rZ   rZ   r[   r   9  ri   c                 C   r]   )z
        Gets the driver_shape_config of this Application.

        :return: The driver_shape_config of this Application.
        :rtype: oci.data_flow.models.ShapeConfig
        r@   r_   rZ   rZ   r[   r   E  r`   zApplication.driver_shape_configc                 C   ra   )z
        Sets the driver_shape_config of this Application.

        :param driver_shape_config: The driver_shape_config of this Application.
        :type: oci.data_flow.models.ShapeConfig
        Nrt   )rX   r   rZ   rZ   r[   r   O  rb   c                 C   r]   )a  
        Gets the execute of this Application.
        The input used for spark-submit command. For more details see https://spark.apache.org/docs/latest/submitting-applications.html#launching-applications-with-spark-submit.
        Supported options include ``--class``, ``--file``, ``--jars``, ``--conf``, ``--py-files``, and main application file with arguments.
        Example: ``--jars oci://path/to/a.jar,oci://path/to/b.jar --files oci://path/to/a.json,oci://path/to/b.csv --py-files oci://path/to/a.py,oci://path/to/b.py --conf spark.sql.crossJoin.enabled=true --class org.apache.spark.examples.SparkPi oci://path/to/main.jar 10``
        Note: If execute is specified together with applicationId, className, configuration, fileUri, language, arguments, parameters during application create/update, or run create/submit,
        Data Flow service will use derived information from execute input only.


        :return: The execute of this Application.
        :rtype: str
        rA   r_   rZ   rZ   r[   r   Y  rk   zApplication.executec                 C   ra   )a  
        Sets the execute of this Application.
        The input used for spark-submit command. For more details see https://spark.apache.org/docs/latest/submitting-applications.html#launching-applications-with-spark-submit.
        Supported options include ``--class``, ``--file``, ``--jars``, ``--conf``, ``--py-files``, and main application file with arguments.
        Example: ``--jars oci://path/to/a.jar,oci://path/to/b.jar --files oci://path/to/a.json,oci://path/to/b.csv --py-files oci://path/to/a.py,oci://path/to/b.py --conf spark.sql.crossJoin.enabled=true --class org.apache.spark.examples.SparkPi oci://path/to/main.jar 10``
        Note: If execute is specified together with applicationId, className, configuration, fileUri, language, arguments, parameters during application create/update, or run create/submit,
        Data Flow service will use derived information from execute input only.


        :param execute: The execute of this Application.
        :type: str
        Nru   )rX   r   rZ   rZ   r[   r   i  rl   c                 C   r]   )z
        **[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
        rB   r_   rZ   rZ   r[   r   y  rh   zApplication.executor_shapec                 C   ra   )z
        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
        Nrv   )rX   r   rZ   rZ   r[   r     ri   c                 C   r]   )z
        Gets the executor_shape_config of this Application.

        :return: The executor_shape_config of this Application.
        :rtype: oci.data_flow.models.ShapeConfig
        rC   r_   rZ   rZ   r[   r     r`   z!Application.executor_shape_configc                 C   ra   )z
        Sets the executor_shape_config of this Application.

        :param executor_shape_config: The executor_shape_config of this Application.
        :type: oci.data_flow.models.ShapeConfig
        Nrw   )rX   r   rZ   rZ   r[   r     rb   c                 C   r]   )aN  
        **[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
        rD   r_   rZ   rZ   r[   r      rd   zApplication.file_uric                 C   ra   )aF  
        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
        Nrx   )rX   r    rZ   rZ   r[   r      re   c                 C   r]   )a  
        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)
        rE   r_   rZ   rZ   r[   r!     rk   zApplication.freeform_tagsc                 C   ra   )a  
        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)
        Nry   )rX   r!   rZ   rZ   r[   r!     rl   c                 C   r]   )z
        **[Required]** Gets the id of this Application.
        The application ID.


        :return: The id of this Application.
        :rtype: str
        rF   r_   rZ   rZ   r[   r"     rh   zApplication.idc                 C   ra   )z
        Sets the id of this Application.
        The application ID.


        :param id: The id of this Application.
        :type: str
        Nrz   )rX   r"   rZ   rZ   r[   r"     ri   c                 C   r]   )aq  
        **[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
        )rG   r_   rZ   rZ   r[   r#     ro   zApplication.languagec                 C       g d}t ||sd}|| _dS )z
        Sets the language of this Application.
        The Spark language.


        :param language: The language of this Application.
        :type: str
        )r   r   r	   r
   UNKNOWN_ENUM_VALUEN)r   rG   )rX   r#   allowed_valuesrZ   rZ   r[   r#        


c                 C   r]   )a  
        **[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
        )rH   r_   rZ   rZ   r[   r$     ro   zApplication.lifecycle_statec                 C   r{   )z
        Sets the lifecycle_state of this Application.
        The current state of this application.


        :param lifecycle_state: The lifecycle_state of this Application.
        :type: str
        )r   r   r   r|   N)r   rH   )rX   r$   r}   rZ   rZ   r[   r$   $  r~   c                 C   r]   )aU  
        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
        rI   r_   rZ   rZ   r[   r%   3  rd   zApplication.logs_bucket_uric                 C   ra   )ac  
        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
        Nr   )rX   r%   rZ   rZ   r[   r%   @  re   c                 C   r]   )z
        Gets the metastore_id of this Application.
        The OCID of OCI Hive Metastore.


        :return: The metastore_id of this Application.
        :rtype: str
        rJ   r_   rZ   rZ   r[   r&   M  rh   zApplication.metastore_idc                 C   ra   )z
        Sets the metastore_id of this Application.
        The OCID of OCI Hive Metastore.


        :param metastore_id: The metastore_id of this Application.
        :type: str
        Nr   )rX   r&   rZ   rZ   r[   r&   Y  ri   c                 C   r]   )z
        **[Required]** Gets the num_executors of this Application.
        The number of executor VMs requested.


        :return: The num_executors of this Application.
        :rtype: int
        rK   r_   rZ   rZ   r[   r'   e  rh   zApplication.num_executorsc                 C   ra   )z
        Sets the num_executors of this Application.
        The number of executor VMs requested.


        :param num_executors: The num_executors of this Application.
        :type: int
        Nr   )rX   r'   rZ   rZ   r[   r'   q  ri   c                 C   r]   )z
        **[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
        rL   r_   rZ   rZ   r[   r)   }  rh   zApplication.owner_principal_idc                 C   ra   )z
        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
        Nr   )rX   r)   rZ   rZ   r[   r)     ri   c                 C   r]   )a[  
        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
        rM   r_   rZ   rZ   r[   r*     rd   zApplication.owner_user_namec                 C   ra   )ai  
        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
        Nr   )rX   r*   rZ   rZ   r[   r*     re   c                 C   r]   )aL  
        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[oci.data_flow.models.ApplicationParameter]
        rN   r_   rZ   rZ   r[   r+     ro   zApplication.parametersc                 C   ra   )aU  
        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[oci.data_flow.models.ApplicationParameter]
        Nr   )rX   r+   rZ   rZ   r[   r+     rp   c                 C   r]   )z
        Gets the pool_id of this Application.
        The OCID of a pool. Unique Id to indentify a dataflow pool resource.


        :return: The pool_id of this Application.
        :rtype: str
        rO   r_   rZ   rZ   r[   r,     rh   zApplication.pool_idc                 C   ra   )z
        Sets the pool_id of this Application.
        The OCID of a pool. Unique Id to indentify a dataflow pool resource.


        :param pool_id: The pool_id of this Application.
        :type: str
        Nr   )rX   r,   rZ   rZ   r[   r,     ri   c                 C   r]   )z
        Gets the private_endpoint_id of this Application.
        The OCID of a private endpoint.


        :return: The private_endpoint_id of this Application.
        :rtype: str
        rP   r_   rZ   rZ   r[   r-     rh   zApplication.private_endpoint_idc                 C   ra   )z
        Sets the private_endpoint_id of this Application.
        The OCID of a private endpoint.


        :param private_endpoint_id: The private_endpoint_id of this Application.
        :type: str
        Nr   )rX   r-   rZ   rZ   r[   r-     ri   c                 C   r]   )z
        **[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
        rQ   r_   rZ   rZ   r[   r.     rh   zApplication.spark_versionc                 C   ra   )z
        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
        Nr   )rX   r.   rZ   rZ   r[   r.   	  ri   c                 C   r]   )aY  
        **[Required]** Gets the time_created of this Application.
        The date and time the resource 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
        rR   r_   rZ   rZ   r[   r/     ro   zApplication.time_createdc                 C   ra   )aU  
        Sets the time_created of this Application.
        The date and time the resource 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
        Nr   )rX   r/   rZ   rZ   r[   r/   $  rp   c                 C   r]   )aY  
        **[Required]** Gets the time_updated of this Application.
        The date and time the resource 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
        rS   r_   rZ   rZ   r[   r1   3  ro   zApplication.time_updatedc                 C   ra   )aU  
        Sets the time_updated of this Application.
        The date and time the resource 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
        Nr   )rX   r1   rZ   rZ   r[   r1   B  rp   c                 C   r]   )al  
        Gets the type of this Application.
        The Spark application processing type.

        Allowed values for this property are: "BATCH", "STREAMING", "SESSION", 'UNKNOWN_ENUM_VALUE'.
        Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'.


        :return: The type of this Application.
        :rtype: str
        )rT   r_   rZ   rZ   r[   r2   Q  ro   zApplication.typec                 C   r{   )z
        Sets the type of this Application.
        The Spark application processing type.


        :param type: The type of this Application.
        :type: str
        )r   r   r   r|   N)r   rT   )rX   r2   r}   rZ   rZ   r[   r2   `  r~   c                 C   r]   )ax  
        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
        rU   r_   rZ   rZ   r[   r3   o  s   z Application.warehouse_bucket_uric                 C   ra   )a  
        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
        Nr   )rX   r3   rZ   rZ   r[   r3   }  s   
c                 C   r]   )ai  
        Gets the max_duration_in_minutes of this Application.
        The maximum duration in minutes for which an Application should run. Data Flow Run would be terminated
        once it reaches this duration from the time it transitions to `IN_PROGRESS` state.


        :return: The max_duration_in_minutes of this Application.
        :rtype: int
        rV   r_   rZ   rZ   r[   r4     rd   z#Application.max_duration_in_minutesc                 C   ra   )a  
        Sets the max_duration_in_minutes of this Application.
        The maximum duration in minutes for which an Application should run. Data Flow Run would be terminated
        once it reaches this duration from the time it transitions to `IN_PROGRESS` state.


        :param max_duration_in_minutes: The max_duration_in_minutes of this Application.
        :type: int
        Nr   )rX   r4   rZ   rZ   r[   r4     re   c                 C   r]   )a  
        Gets the idle_timeout_in_minutes of this Application.
        The timeout value in minutes used to manage Runs. A Run would be stopped after inactivity for this amount of time period.
        Note: This parameter is currently only applicable for Runs of type `SESSION`. Default value is 2880 minutes (2 days)


        :return: The idle_timeout_in_minutes of this Application.
        :rtype: int
        rW   r_   rZ   rZ   r[   r5     rd   z#Application.idle_timeout_in_minutesc                 C   ra   )a  
        Sets the idle_timeout_in_minutes of this Application.
        The timeout value in minutes used to manage Runs. A Run would be stopped after inactivity for this amount of time period.
        Note: This parameter is currently only applicable for Runs of type `SESSION`. Default value is 2880 minutes (2 days)


        :param idle_timeout_in_minutes: The idle_timeout_in_minutes of this Application.
        :type: int
        Nr   )rX   r5   rZ   rZ   r[   r5     re   c                 C   s   t | S N)r   r_   rZ   rZ   r[   __repr__  s   zApplication.__repr__c                 C   s   |d u rdS | j |j kS )NF)__dict__rX   otherrZ   rZ   r[   __eq__  s   zApplication.__eq__c                 C   s
   | |k S r   rZ   r   rZ   rZ   r[   __ne__  s   
zApplication.__ne__N)6__name__
__module____qualname____doc__ZLANGUAGE_SCALAZLANGUAGE_JAVAZLANGUAGE_PYTHONZLANGUAGE_SQLZLIFECYCLE_STATE_ACTIVEZLIFECYCLE_STATE_DELETEDZLIFECYCLE_STATE_INACTIVEZ
TYPE_BATCHZTYPE_STREAMINGZTYPE_SESSIONr\   propertyr   setterr   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r)   r*   r+   r,   r-   r.   r/   r1   r2   r3   r4   r5   r   r   r   rZ   rZ   rZ   r[   r      s4     
	
	


















	
	




	
	







































r   N)Zoci.utilr   r   r   Zoci.decoratorsr   objectr   rZ   rZ   rZ   r[   <module>   s   