o
    ɶdy                    @   s   d dl mZ d dlmZ d dlmZ d dlmZmZ d dlm	Z	 d dl
mZmZ d dlmZ d dlmZmZmZ d	d
lmZ edZG dd deZdS )    )absolute_import)requests)six)retrycircuit_breaker)
BaseClient)get_config_value_or_defaultvalidate_config)Signer)Sentinel#get_signer_from_authentication_typeAUTHENTICATION_TYPE_FIELD_NAME   )bds_type_mappingZMissingc                   @   s  e Zd ZdZdd Zdd Zdd Zdd	 Zd
d Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zd d! Zd"d# Zd$d% Zd&d' Zd(d) Zd*d+ Zd,d- Zd.d/ Zd0d1 Zd2d3 Zd4d5 Zd6d7 Zd8d9 Zd:d; Z d<d= Z!d>d? Z"d@dA Z#dBdC Z$dDdE Z%dFdG Z&dHdI Z'dJdK Z(dLdM Z)dNdO Z*dPdQ Z+dRdS Z,dTdU Z-dVdW Z.dXdY Z/dZd[ Z0d\d] Z1d^d_ Z2d`da Z3dbS )c	BdsClienta!  
    REST API for Oracle Big Data Service. Use this API to build, deploy, and manage fully elastic Big Data Service clusters. Build on Hadoop, Spark and Data Science distributions, which can be fully integrated with existing enterprise data in Oracle Database and Oracle applications.
    c              
   K   s  t ||dd d|v r|d }n"t|v rt|}nt|d |d |d |dt|d|dd	}d
|dddi |dd|dtj|dd}d|v rY|d|d< |ddu retj|d< d|v rp|d|d< t	d||t
fi || _|d| _|d| _dS )a  
        Creates a new service client

        :param dict config:
            Configuration keys and values as per `SDK and Tool Configuration <https://docs.cloud.oracle.com/Content/API/Concepts/sdkconfig.htm>`__.
            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 <https://docs.cloud.oracle.com/Content/Identity/Tasks/callingservicesfrominstances.htm>`__
            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 <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

        :param obj circuit_breaker_strategy: (optional)
            A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level).
            This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided.
            The specifics of circuit breaker strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/circuit_breakers.html>`__.

        :param function circuit_breaker_callback: (optional)
            Callback function to receive any exceptions triggerred by the circuit breaker.

        :param bool client_level_realm_specific_endpoint_template_enabled: (optional)
            A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None.

        :param allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not
            allow control characters to be in the response object.
        signer)r   tenancyuserfingerprintZkey_filepass_phraseZkey_content)r   r   r   Zprivate_key_file_locationr   Zprivate_key_contentTservice_endpointz	/20190531z7https://bigdataservice.{region}.oci.{secondLevelDomain}skip_deserializationFcircuit_breaker_strategy5client_level_realm_specific_endpoint_template_enabled)Zregional_clientr   	base_pathZservice_endpoint_templateZ#service_endpoint_template_per_realmr   r   r   timeoutNallow_control_charsZbdsretry_strategycircuit_breaker_callback)r	   getr   r   r
   r   r   ZGLOBAL_CIRCUIT_BREAKER_STRATEGYZ DEFAULT_CIRCUIT_BREAKER_STRATEGYr   r   base_clientr   r   )selfconfigkwargsr   Zbase_client_init_kwargs r$   6usr/lib/python3.10/site-packages/oci/bds/bds_client.py__init__   s>   3





zBdsClient.__init__c                      ddg}d}d}d}d}	g d  fdd	t |D }
|
r%td
|
||d}dd t |D }t |D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| | j| || j |j| jj||||||	d||	|d
S | jj||||||	d||	|d	S )a  
        Activate specified metastore configuration.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str metastore_config_id: (required)
            The metastore configuration ID

        :param oci.bds.models.ActivateBdsMetastoreConfigurationDetails activate_bds_metastore_configuration_details: (required)
            The request body when activating specified metastore configuration.

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/activate_bds_metastore_configuration.py.html>`__ to see an example of how to use activate_bds_metastore_configuration API.
        bdsInstanceIdmetastoreConfigIdzS/bdsInstances/{bdsInstanceId}/metastoreConfigs/{metastoreConfigId}/actions/activatePOST$activate_bds_metastore_configurationzrhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/ActivateBdsMetastoreConfiguration)r   r   opc_request_idopc_retry_tokenif_matchc                       g | ]}| vr|qS r$   r$   .0_keyZexpected_kwargsr$   r%   
<listcomp>       zBBdsClient.activate_bds_metastore_configuration.<locals>.<listcomp>z=activate_bds_metastore_configuration got unknown kwargs: {!r}r(   r)   c                 S      i | ]\}}|t ur||qS r$   missingr1   kvr$   r$   r%   
<dictcomp>       zBBdsClient.activate_bds_metastore_configuration.<locals>.<dictcomp>Nr   7Parameter {} cannot be None, whitespace or empty stringapplication/jsonr,   r-   r.   )acceptcontent-typeopc-request-idopc-retry-tokenif-matchc                 S   &   i | ]\}}|t ur|d ur||qS Nr8   r:   r$   r$   r%   r=         & r   Zoperation_retry_strategyZclient_retry_strategyr   	resource_pathmethodpath_paramsheader_paramsbodyr   operation_nameapi_reference_linkrequired_argumentsr   iterkeys
ValueErrorformat	iteritems
isinstancestring_typeslenstripr   r9   r    get_preferred_retry_strategyr   r   NoneRetryStrategyadd_opc_retry_token_if_neededadd_opc_client_retries_headeradd_circuit_breaker_callbackr   make_retrying_callcall_api)r!   bds_instance_idmetastore_config_idZ,activate_bds_metastore_configuration_detailsr#   rR   rK   rL   rP   rQ   extra_kwargsrM   r;   r<   rN   r   r$   r3   r%   r+   r   t   2$


z.BdsClient.activate_bds_metastore_configurationc                    ~  dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| | j| || j |j| jj|||
|||	d|||d
S | jj|||
|||	d|||d	S )a
  
        Add an autoscale configuration to the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddAutoScalingConfigurationDetails add_auto_scaling_configuration_details: (required)
            Details for creating an autoscale configuration.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_auto_scaling_configuration.py.html>`__ to see an example of how to use add_auto_scaling_configuration API.
        r(   6/bdsInstances/{bdsInstanceId}/autoScalingConfigurationr*   add_auto_scaling_configurationz^https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddAutoScalingConfigurationr   r   r,   r.   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   )  r5   z<BdsClient.add_auto_scaling_configuration.<locals>.<listcomp>z7add_auto_scaling_configuration got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   2  r>   z<BdsClient.add_auto_scaling_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rA   rB   rC   rE   rD   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   ?  rH   r   rI   r   rJ   rS   )r!   rc   Z&add_auto_scaling_configuration_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   ri      r   /$


z(BdsClient.add_auto_scaling_configurationc                    rg   )a  
        Adds block storage to existing worker/compute only worker nodes. The same amount of  storage will be added to all worker/compute only worker nodes. No change will be made to storage that is already attached. Block storage cannot be removed.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddBlockStorageDetails add_block_storage_details: (required)
            Details for the added block storage.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_block_storage.py.html>`__ to see an example of how to use add_block_storage API.
        r(   z5/bdsInstances/{bdsInstanceId}/actions/addBlockStorager*   add_block_storagezRhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddBlockStoragerj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z/BdsClient.add_block_storage.<locals>.<listcomp>z*add_block_storage got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z/BdsClient.add_block_storage.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zadd_block_storage_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rm   b  rl   zBdsClient.add_block_storagec                    rg   )aL  
        Adds Cloud SQL to your cluster. You can use Cloud SQL to query against non-relational data stored in multiple big data sources, including Apache Hive, HDFS, Oracle NoSQL Database, and Apache HBase. Adding Cloud SQL adds a query server node to the cluster and creates cell servers on all the worker nodes in the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddCloudSqlDetails add_cloud_sql_details: (required)
            Details for the Cloud SQL capability

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_cloud_sql.py.html>`__ to see an example of how to use add_cloud_sql API.
        r(   z1/bdsInstances/{bdsInstanceId}/actions/addCloudSqlr*   add_cloud_sqlzNhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddCloudSqlrj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z+BdsClient.add_cloud_sql.<locals>.<listcomp>z&add_cloud_sql got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z+BdsClient.add_cloud_sql.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   +  rH   r   rI   r   rJ   rS   )r!   rc   Zadd_cloud_sql_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rn     rl   zBdsClient.add_cloud_sqlc                    rg   )a4
  
        Adds Kafka to a cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddKafkaDetails add_kafka_details: (required)
            Details of the Kafka broker nodes to employ to enable the service.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_kafka.py.html>`__ to see an example of how to use add_kafka API.
        r(   z./bdsInstances/{bdsInstanceId}/actions/addKafkar*   	add_kafkazKhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddKafkarj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z'BdsClient.add_kafka.<locals>.<listcomp>z"add_kafka got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z'BdsClient.add_kafka.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zadd_kafka_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   ro   N  rl   zBdsClient.add_kafkac                    rg   )a
  
        Increases the size (scales out) of a cluster by adding master nodes. The added master nodes will have the same shape and will have the same amount of attached block storage as other master nodes in the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddMasterNodesDetails add_master_nodes_details: (required)
            Details for the newly added nodes.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_master_nodes.py.html>`__ to see an example of how to use add_master_nodes API.
        r(   z4/bdsInstances/{bdsInstanceId}/actions/addMasterNodesr*   add_master_nodeszQhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddMasterNodesrj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z.BdsClient.add_master_nodes.<locals>.<listcomp>z)add_master_nodes got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   
  r>   z.BdsClient.add_master_nodes.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zadd_master_nodes_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rp     rl   zBdsClient.add_master_nodesc                    rg   )a
  
        Increases the size (scales out) of a cluster by adding utility nodes. The added utility nodes will have the same shape and will have the same amount of attached block storage as other utility nodes in the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddUtilityNodesDetails add_utility_nodes_details: (required)
            Details for the newly added nodes.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_utility_nodes.py.html>`__ to see an example of how to use add_utility_nodes API.
        r(   z5/bdsInstances/{bdsInstanceId}/actions/addUtilityNodesr*   add_utility_nodeszRhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddUtilityNodesrj   c                    r/   r$   r$   r0   r3   r$   r%   r4   w  r5   z/BdsClient.add_utility_nodes.<locals>.<listcomp>z*add_utility_nodes got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z/BdsClient.add_utility_nodes.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zadd_utility_nodes_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rq   :  rl   zBdsClient.add_utility_nodesc                    rg   )a
  
        Increases the size (scales out) a cluster by adding worker nodes(data/compute). The added worker nodes will have the same shape and will have the same amount of attached block storage as other worker nodes in the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.AddWorkerNodesDetails add_worker_nodes_details: (required)
            Details for the newly added nodes.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/add_worker_nodes.py.html>`__ to see an example of how to use add_worker_nodes API.
        r(   z4/bdsInstances/{bdsInstanceId}/actions/addWorkerNodesr*   add_worker_nodeszQhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/AddWorkerNodesrj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z.BdsClient.add_worker_nodes.<locals>.<listcomp>z)add_worker_nodes got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z.BdsClient.add_worker_nodes.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zadd_worker_nodes_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rr     rl   zBdsClient.add_worker_nodesc                    rg   )a
  
        Moves a Big Data Service cluster into a different compartment.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.ChangeBdsInstanceCompartmentDetails change_bds_instance_compartment_details: (required)
            Details for the comparment change.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/change_bds_instance_compartment.py.html>`__ to see an example of how to use change_bds_instance_compartment API.
        r(   z7/bdsInstances/{bdsInstanceId}/actions/changeCompartmentr*   change_bds_instance_compartmentz_https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ChangeBdsInstanceCompartmentrj   c                    r/   r$   r$   r0   r3   r$   r%   r4   c  r5   z=BdsClient.change_bds_instance_compartment.<locals>.<listcomp>z8change_bds_instance_compartment got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   l  r>   z=BdsClient.change_bds_instance_compartment.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   y  rH   r   rI   r   rJ   rS   )r!   rc   Z'change_bds_instance_compartment_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rs   &  rl   z)BdsClient.change_bds_instance_compartmentc                    rg   )a  
        Changes the size of a cluster by scaling up or scaling down the nodes. Nodes are scaled up or down by changing the shapes of all the nodes of the same type to the next larger or smaller shape. The node types are master, utility, worker, and Cloud SQL. Only nodes with VM-STANDARD shapes can be scaled.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.ChangeShapeDetails change_shape_details: (required)
            Individual change shape settings per node type. You can change the shape of master, worker, utility and Cloud SQL nodes.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/change_shape.py.html>`__ to see an example of how to use change_shape API.
        r(   z1/bdsInstances/{bdsInstanceId}/actions/changeShaper*   change_shapezNhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ChangeShaperj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z*BdsClient.change_shape.<locals>.<listcomp>z%change_shape got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z*BdsClient.change_shape.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zchange_shape_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rt     rl   zBdsClient.change_shapec                    t  dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| | j| || j |j| jj|||
|||	d|||d
S | jj|||
|||	d|||d	S )a  
        Create an API key on behalf of the specified user.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.CreateBdsApiKeyDetails create_bds_api_key_details: (required)
            Create a new user's API key.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/create_bds_api_key.py.html>`__ to see an example of how to use create_bds_api_key API.
        r(   %/bdsInstances/{bdsInstanceId}/apiKeysr*   create_bds_api_keyzPhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsApiKey/CreateBdsApiKeyr   r   r-   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4   G  r5   z0BdsClient.create_bds_api_key.<locals>.<listcomp>z+create_bds_api_key got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   P  r>   z0BdsClient.create_bds_api_key.<locals>.<dictcomp>Nr   r?   r@   r-   r,   rA   rB   rD   rC   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   \  rH   r   rI   r   rJ   rS   )r!   rc   Zcreate_bds_api_key_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   rw     p   ($

zBdsClient.create_bds_api_keyc                    s  g }d}d}d}d}g d  fddt |D }|r#td|d	d	|d
t|dtd}	dd t |	D }	| jj|d| j	d}
|
rut
|
tjsb| j|	 | j|	 |
| j |
j| jj|||	||d|||d	S | jj|||	||d|||dS )aZ  
        Creates a Big Data Service cluster.


        :param oci.bds.models.CreateBdsInstanceDetails create_bds_instance_details: (required)
            Details for the new cluster.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/create_bds_instance.py.html>`__ to see an example of how to use create_bds_instance API.
        /bdsInstancesr*   create_bds_instancezThttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/CreateBdsInstance)r   r   r,   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z1BdsClient.create_bds_instance.<locals>.<listcomp>z,create_bds_instance got unknown kwargs: {!r}r@   r,   r-   )rA   rB   rC   rD   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   z1BdsClient.create_bds_instance.<locals>.<dictcomp>r   rI   r   )rK   rL   rN   rO   r   rP   rQ   rR   )r   rT   rU   rV   r   r9   rW   r    r\   r   rX   r   r]   r^   r_   r`   r   ra   rb   )r!   Zcreate_bds_instance_detailsr#   rR   rK   rL   rP   rQ   re   rN   r   r$   r3   r%   r|     s^   %

zBdsClient.create_bds_instancec                    ru   )a/	  
        Create and activate external metastore configuration.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.CreateBdsMetastoreConfigurationDetails create_bds_metastore_configuration_details: (required)
            The request body when creating and activating external metastore configuration.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/create_bds_metastore_configuration.py.html>`__ to see an example of how to use create_bds_metastore_configuration API.
        r(   ./bdsInstances/{bdsInstanceId}/metastoreConfigsr*   "create_bds_metastore_configurationzphttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/CreateBdsMetastoreConfigurationrx   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z@BdsClient.create_bds_metastore_configuration.<locals>.<listcomp>z;create_bds_metastore_configuration got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z@BdsClient.create_bds_metastore_configuration.<locals>.<dictcomp>Nr   r?   r@   r-   r,   ry   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   '  rH   r   rI   r   rJ   rS   )r!   rc   Z*create_bds_metastore_configuration_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r~     rz   z,BdsClient.create_bds_metastore_configurationc                    h  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	||d}
dd t |
D }
t |
D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj|||
||	d|||d	S | jj|||
||	d|||dS )a)  
        Deletes the user's API key represented by the provided ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str api_key_id: (required)
            The API key identifier.

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/delete_bds_api_key.py.html>`__ to see an example of how to use delete_bds_api_key API.
        r(   apiKeyId0/bdsInstances/{bdsInstanceId}/apiKeys/{apiKeyId}DELETEdelete_bds_api_keyzPhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsApiKey/DeleteBdsApiKeyr   r   r,   r.   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z0BdsClient.delete_bds_api_key.<locals>.<listcomp>z+delete_bds_api_key got unknown kwargs: {!r}r(   r   c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z0BdsClient.delete_bds_api_key.<locals>.<dictcomp>Nr   r?   r@   r,   r.   rA   rB   rC   rE   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rK   rL   rM   rN   r   rP   rQ   rR   r   rT   rU   rV   rW   rX   rY   rZ   r[   r   r9   r    r\   r   r   r]   r_   r`   r   ra   rb   r!   rc   
api_key_idr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   J  l   ($

zBdsClient.delete_bds_api_keyc                    sd  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj|||	||	d|||d	S | jj|||	||	d|||dS )a  
        Deletes the cluster identified by the given ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/delete_bds_instance.py.html>`__ to see an example of how to use delete_bds_instance API.
        r(   /bdsInstances/{bdsInstanceId}r   delete_bds_instancezThttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/DeleteBdsInstancer   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z1BdsClient.delete_bds_instance.<locals>.<listcomp>z,delete_bds_instance got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z1BdsClient.delete_bds_instance.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   r   r   r!   rc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     sj   %$

zBdsClient.delete_bds_instancec                    r   )ae  
        Delete the BDS metastore configuration represented by the provided ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str metastore_config_id: (required)
            The metastore configuration ID

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/delete_bds_metastore_configuration.py.html>`__ to see an example of how to use delete_bds_metastore_configuration API.
        r(   r)   B/bdsInstances/{bdsInstanceId}/metastoreConfigs/{metastoreConfigId}r   "delete_bds_metastore_configurationzphttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/DeleteBdsMetastoreConfigurationr   c                    r/   r$   r$   r0   r3   r$   r%   r4   Q  r5   z@BdsClient.delete_bds_metastore_configuration.<locals>.<listcomp>z;delete_bds_metastore_configuration got unknown kwargs: {!r}r6   c                 S   r7   r$   r8   r:   r$   r$   r%   r=   [  r>   z@BdsClient.delete_bds_metastore_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   g  rH   r   rI   r   r   r   r!   rc   rd   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     r   z,BdsClient.delete_bds_metastore_configurationc                    rg   )ai
  
        Execute bootstrap script.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.ExecuteBootstrapScriptDetails execute_bootstrap_script_details: (required)
            Details of the bootstrap script to execute on this cluster.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/execute_bootstrap_script.py.html>`__ to see an example of how to use execute_bootstrap_script API.
        r(   z</bdsInstances/{bdsInstanceId}/actions/executeBootstrapScriptr*   execute_bootstrap_scriptzYhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ExecuteBootstrapScriptrj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z6BdsClient.execute_bootstrap_script.<locals>.<listcomp>z1execute_bootstrap_script got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z6BdsClient.execute_bootstrap_script.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Z execute_bootstrap_script_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     rl   z"BdsClient.execute_bootstrap_scriptc                    b  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	||d}
dd t |
D }
t |
D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj|||
|d|	d|||d
S | jj|||
|d|	d|||d	S )a*  
        Returns details of the autoscale configuration identified by the given ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str auto_scaling_configuration_id: (required)
            Unique Oracle-assigned identifier of the autoscale configuration.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.bds.models.AutoScalingConfiguration`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/get_auto_scaling_configuration.py.html>`__ to see an example of how to use get_auto_scaling_configuration API.
        r(   autoScalingConfigurationIdS/bdsInstances/{bdsInstanceId}/autoScalingConfiguration/{autoScalingConfigurationId}GETget_auto_scaling_configurationz^https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/GetAutoScalingConfigurationr   r   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4   *  r5   z<BdsClient.get_auto_scaling_configuration.<locals>.<listcomp>z7get_auto_scaling_configuration got unknown kwargs: {!r}r(   r   c                 S   r7   r$   r8   r:   r$   r$   r%   r=   4  r>   z<BdsClient.get_auto_scaling_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   rA   rB   rC   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   ?  rH   r   rI   ZAutoScalingConfigurationr   	rK   rL   rM   rN   response_typer   rP   rQ   rR   r   )r!   rc   auto_scaling_configuration_idr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     n   !$
z(BdsClient.get_auto_scaling_configurationc                    r   )a  
        Returns the user's API key information for the given ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str api_key_id: (required)
            The API key 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.bds.models.BdsApiKey`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/get_bds_api_key.py.html>`__ to see an example of how to use get_bds_api_key API.
        r(   r   r   r   get_bds_api_keyzMhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsApiKey/GetBdsApiKeyr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z-BdsClient.get_bds_api_key.<locals>.<listcomp>z(get_bds_api_key got unknown kwargs: {!r}r   c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z-BdsClient.get_bds_api_key.<locals>.<dictcomp>Nr   r?   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   Z	BdsApiKeyr   r   r   r   r$   r3   r%   r   a  r   zBdsClient.get_bds_api_keyc                    ^  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7dd|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj|||	|d|	d|||d
S | jj|||	|d|	d|||d	S )a}  
        Returns information about the Big Data Service cluster identified by the given ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.bds.models.BdsInstance`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/get_bds_instance.py.html>`__ to see an example of how to use get_bds_instance API.
        r(   r   r   get_bds_instancezQhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/GetBdsInstancer   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z.BdsClient.get_bds_instance.<locals>.<listcomp>z)get_bds_instance got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z.BdsClient.get_bds_instance.<locals>.<dictcomp>Nr   r?   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   	  rH   r   rI   ZBdsInstancer   r   r   r   r$   r3   r%   r     l   $
zBdsClient.get_bds_instancec                    r   )a  
        Returns the BDS Metastore configuration information for the given ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str metastore_config_id: (required)
            The metastore configuration ID

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.bds.models.BdsMetastoreConfiguration`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/get_bds_metastore_configuration.py.html>`__ to see an example of how to use get_bds_metastore_configuration API.
        r(   r)   r   r   get_bds_metastore_configurationzmhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/GetBdsMetastoreConfigurationr   c                    r/   r$   r$   r0   r3   r$   r%   r4   R	  r5   z=BdsClient.get_bds_metastore_configuration.<locals>.<listcomp>z8get_bds_metastore_configuration got unknown kwargs: {!r}r6   c                 S   r7   r$   r8   r:   r$   r$   r%   r=   \	  r>   z=BdsClient.get_bds_metastore_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   g	  rH   r   rI   ZBdsMetastoreConfigurationr   r   r   r   r$   r3   r%   r   %	  r   z)BdsClient.get_bds_metastore_configurationc                    s  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	d|i}
dd t |
D }
t |
D ]\}}|du sNt|t jrUt| dkrUtd|q8d|i}dd t |D }dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| | j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )a1
  
        Get the details of an os patch


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str os_patch_version: (required)
            The version of the OS patch.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.bds.models.OsPatchDetails`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/get_os_patch_details.py.html>`__ to see an example of how to use get_os_patch_details API.
        r(   ZosPatchVersionz0/bdsInstances/{bdsInstanceId}/actions/getOsPatchr*   get_os_patch_detailszThttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/GetOsPatchDetailsrj   c                    r/   r$   r$   r0   r3   r$   r%   r4   	  r5   z2BdsClient.get_os_patch_details.<locals>.<listcomp>z-get_os_patch_details got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   	  r>   z2BdsClient.get_os_patch_details.<locals>.<dictcomp>Nr   r?   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   	  rH   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   	  rH   r   rI   ZOsPatchDetailsr   
rK   rL   rM   query_paramsrN   r   r   rP   rQ   rR   rS   )r!   rc   Zos_patch_versionr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   r   rN   r   r$   r3   r%   r   	  s|   /$


zBdsClient.get_os_patch_detailsc                    r   )ax  
        Returns the status of the work request identified by the given ID.


        :param str work_request_id: (required)
            The ID 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.bds.models.WorkRequest`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/get_work_request.py.html>`__ to see an example of how to use get_work_request API.
        workRequestIdz/workRequests/{workRequestId}r   get_work_requestzQhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/WorkRequest/GetWorkRequestr   c                    r/   r$   r$   r0   r3   r$   r%   r4   0
  r5   z.BdsClient.get_work_request.<locals>.<listcomp>z)get_work_request got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   9
  r>   z.BdsClient.get_work_request.<locals>.<dictcomp>Nr   r?   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   D
  rH   r   rI   ZWorkRequestr   r   r   )r!   work_request_idr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   
  r   zBdsClient.get_work_requestc                    rg   )aJ
  
        Install an os patch on a cluster


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.InstallOsPatchDetails install_os_patch_details: (required)
            Details of the target os patch that will be installed

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/install_os_patch.py.html>`__ to see an example of how to use install_os_patch API.
        r(   z4/bdsInstances/{bdsInstanceId}/actions/installOsPatchr*   install_os_patchzQhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/InstallOsPatchrj   c                    r/   r$   r$   r0   r3   r$   r%   r4   
  r5   z.BdsClient.install_os_patch.<locals>.<listcomp>z)install_os_patch got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   
  r>   z.BdsClient.install_os_patch.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   
  rH   r   rI   r   rJ   rS   )r!   rc   Zinstall_os_patch_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   f
  rl   zBdsClient.install_os_patchc                    rg   )a;
  
        Install the specified patch to this cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.InstallPatchDetails install_patch_details: (required)
            Details of the patch to be installed.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/install_patch.py.html>`__ to see an example of how to use install_patch API.
        r(   z2/bdsInstances/{bdsInstanceId}/actions/installPatchr*   install_patchzOhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/InstallPatchrj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z+BdsClient.install_patch.<locals>.<listcomp>z&install_patch got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   "  r>   z+BdsClient.install_patch.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   /  rH   r   rI   r   rJ   rS   )r!   rc   Zinstall_patch_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   
  rl   zBdsClient.install_patchc                    s<  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	d|i}
dd t |
D }
t |
D ]\}}|du sNt|t jrUt| dkrUtd|q8d|v rkddg}|d |vrktd|d|v rddg}|d |vrtd|d|v rg d}|d |vrtd|||	dt
|	dt
|	dt
|	dt
|	dt
|	dt
d}dd t |D }d d |	d!t
d"}d#d t |D }| jj|	d$| jd%}|rt|tjs| j| || j |j| jj|||
||d&|	d'|||d(S | jj|||
||d&|	d'|||d(
S ))a6  
        Returns information about the autoscaling configurations for a cluster.


        :param str compartment_id: (required)
            The OCID of the compartment.

        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :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 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 str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param str lifecycle_state: (optional)
            The state of the autoscale configuration.

            Allowed values are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.AutoScalingConfigurationSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_auto_scaling_configurations.py.html>`__ to see an example of how to use list_auto_scaling_configurations API.
        r(   compartmentIdrh   r    list_auto_scaling_configurationsz`https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ListAutoScalingConfigurations)	r   r   pagelimitsort_by
sort_orderdisplay_namelifecycle_stater,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z>BdsClient.list_auto_scaling_configurations.<locals>.<listcomp>z9list_auto_scaling_configurations got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z>BdsClient.list_auto_scaling_configurations.<locals>.<dictcomp>Nr   r?   r   timeCreateddisplayName/Invalid value for `sort_by`, must be one of {0}r   ASCDESC2Invalid value for `sort_order`, must be one of {0}r   )CREATINGACTIVEINACTIVEUPDATINGDELETINGDELETEDFAILED7Invalid value for `lifecycle_state`, must be one of {0}r   r   r   )r   r   r   sortBy	sortOrderr   lifecycleStatec                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   z%list[AutoScalingConfigurationSummary]r   r   r   )r!   compartment_idrc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   sort_by_allowed_valuessort_order_allowed_valueslifecycle_state_allowed_valuesr   rN   r   r$   r3   r%   r   R  s   9$





	
z*BdsClient.list_auto_scaling_configurationsc                    sB  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjg d}|d |vrjtd|d|v rddg}|d |vrtd|d|v rddg}|d |vrtd||	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
d}dd t |D }d d |	d!t
d"}d#d t |D }| jj|	d$| jd%}|rt|tjs| j| || j |j| jj|||	||d&|	d'|||d(S | jj|||	||d&|	d'|||d(
S ))a
  
        Returns a list of all API keys associated with this Big Data Service cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str lifecycle_state: (optional)
            The state of the API key.

            Allowed values are: "CREATING", "ACTIVE", "DELETING", "DELETED", "FAILED"

        :param str user_id: (optional)
            The OCID of the user for whom the API key belongs.

        :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 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 str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.BdsApiKeySummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_bds_api_keys.py.html>`__ to see an example of how to use list_bds_api_keys API.
        r(   rv   r   list_bds_api_keyszOhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsApiKey/ListBdsApiKeys)
r   r   r   user_idr   r   r   r   r   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4   A  r5   z/BdsClient.list_bds_api_keys.<locals>.<listcomp>z*list_bds_api_keys got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   J  r>   z/BdsClient.list_bds_api_keys.<locals>.<dictcomp>Nr   r?   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   ZuserIdr   r   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   n  rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   u  rH   r   rI   zlist[BdsApiKeySummary]r   r   r   )r!   rc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   r   r   r   r   rN   r   r$   r3   r%   r     s   9$






	
zBdsClient.list_bds_api_keysc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d
|v r9g d}	|d
 |	vr9td|	d|v rNddg}
|d |
vrNtd|
d|v rcddg}|d |vrctd|||d
t|dt|dt|dt|dt|dtd}dd t |D }dd|dtd}dd t |D }| jj|d| j	d }|rt
|tjs| j| || j |j| jj||||d!|d"|||d#
S | jj||||d!|d"|||d#	S )$a
  
        Returns a list of all Big Data Service clusters in a compartment.


        :param str compartment_id: (required)
            The OCID of the compartment.

        :param str lifecycle_state: (optional)
            The state of the cluster.

            Allowed values are: "CREATING", "ACTIVE", "UPDATING", "SUSPENDING", "SUSPENDED", "RESUMING", "DELETING", "DELETED", "FAILED", "INACTIVE"

        :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 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 str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.BdsInstanceSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_bds_instances.py.html>`__ to see an example of how to use list_bds_instances API.
        r   r{   r   list_bds_instanceszZhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstanceSummary/ListBdsInstances)	r   r   r   r   r   r   r   r   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z0BdsClient.list_bds_instances.<locals>.<listcomp>z+list_bds_instances got unknown kwargs: {!r}r   )
r   r   r   Z
SUSPENDINGZ	SUSPENDEDZRESUMINGr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   z0BdsClient.list_bds_instances.<locals>.<dictcomp>r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   zlist[BdsInstanceSummary]r   	rK   rL   r   rN   r   r   rP   rQ   rR   r   rT   rU   rV   r   r9   rW   r    r\   r   rX   r   r]   r_   r`   r   ra   rb   )r!   r   r#   rR   rK   rL   rP   rQ   re   r   r   r   r   rN   r   r$   r3   r%   r     s   6





	
zBdsClient.list_bds_instancesc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd|d|v rg d}|d |vrtd|d|v rddg}|d |vrtd|d|v rddg}|d |vrtd||	dt
|	dt
|	dt
|	dt
|	d t
|	d!t
|	dt
|	dt
|	d"t
d#	}d$d t |D }d%d%|	d&t
d'}d(d t |D }| jj|	d)| jd*}|r.t|tjs| j| || j |j| jj|||	||d+|	d,|||d-S | jj|||	||d+|	d,|||d-
S ).a  
        Returns a list of metastore configurations ssociated with this Big Data Service cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str metastore_type: (optional)
            The type of the metastore in the metastore configuration

            Allowed values are: "LOCAL", "EXTERNAL"

        :param str metastore_id: (optional)
            The OCID of the Data Catalog metastore in the metastore configuration

        :param str lifecycle_state: (optional)
            The lifecycle state of the metastore in the metastore configuration

            Allowed values are: "CREATING", "ACTIVATING", "ACTIVE", "INACTIVE", "UPDATING", "FAILED", "DELETING", "DELETED"

        :param str bds_api_key_id: (optional)
            The ID of the API key that is associated with the external metastore in the metastore configuration

        :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 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 str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.BdsMetastoreConfigurationSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_bds_metastore_configurations.py.html>`__ to see an example of how to use list_bds_metastore_configurations API.
        r(   r}   r   !list_bds_metastore_configurationszohttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/ListBdsMetastoreConfigurations)r   r   metastore_typemetastore_idr   bds_api_key_idr   r   r   r   r   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z?BdsClient.list_bds_metastore_configurations.<locals>.<listcomp>z:list_bds_metastore_configurations got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z?BdsClient.list_bds_metastore_configurations.<locals>.<dictcomp>Nr   r?   r   ZLOCALZEXTERNALz6Invalid value for `metastore_type`, must be one of {0}r   )r   Z
ACTIVATINGr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )	ZmetastoreTypeZmetastoreIdr   ZbdsApiKeyIdr   r   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   z&list[BdsMetastoreConfigurationSummary]r   r   r   )r!   rc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   Zmetastore_type_allowed_valuesr   r   r   r   rN   r   r$   r3   r%   r   -  s   A$









z+BdsClient.list_bds_metastore_configurationsc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd|d|v rddg}|d |vrtd||	dt
|	dt
|	dt
|	dt
d}dd t |D }dd|	dt
|	dt
|	dt
d}d d t |D }| jj|	d!| jd"}|rt|tjs| j| | j| || j |j| jj|||	||d#|	d$|||d%S | jj|||	||d#|	d$|||d%
S )&a  
        List all available os patches for a given cluster


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :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 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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.OsPatchSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_os_patches.py.html>`__ to see an example of how to use list_os_patches API.
        r(   z3/bdsInstances/{bdsInstanceId}/actions/listOsPatchesr*   list_os_patcheszPhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ListOsPatches)	r   r   r   r   r   r   r,   r.   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   2  r5   z-BdsClient.list_os_patches.<locals>.<listcomp>z(list_os_patches got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   ;  r>   z-BdsClient.list_os_patches.<locals>.<dictcomp>Nr   r?   r   r   r   r   r   r   r   r   r   r   r   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   U  rH   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   ^  rH   r   rI   zlist[OsPatchSummary]r   r   rS   )r!   rc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   r   r   r   rN   r   r$   r3   r%   r     s   <$






zBdsClient.list_os_patchesc                    sn  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjg d}|d |vrjtd|d|v rddg}|d |vrtd|d|v rddg}|d |vrtd|d|v rddg}|d |vrtd||	dt
|	dt
|	dt
|	dt
|	dt
|	d t
|	dt
d!}d"d t |D }d#d#|	d$t
d%}d&d t |D }| jj|	d'| jd(}|r$t|tjs| j| || j |j| jj|||	||d)|	d*|||d+S | jj|||	||d)|	d*|||d+
S ),a
  
        List the patch history of this cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str opc_request_id: (optional)
            The client request ID for tracing.

        :param str lifecycle_state: (optional)
            The status of the patch.

            Allowed values are: "INSTALLING", "INSTALLED", "FAILED"

        :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 patch_version: (optional)
            The version of the patch

        :param str sort_order: (optional)
            The sort order to use, either 'asc' or 'desc'.

            Allowed values are: "ASC", "DESC"

        :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 patch_type: (optional)
            The type of a BDS patch history entity.

            Allowed values are: "ODH", "OS"

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.PatchHistorySummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_patch_histories.py.html>`__ to see an example of how to use list_patch_histories API.
        r(   z*/bdsInstances/{bdsInstanceId}/patchHistoryr   list_patch_historieszUhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ListPatchHistories)
r   r   r,   r   r   patch_versionr   r   r   
patch_typec                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2BdsClient.list_patch_histories.<locals>.<listcomp>z-list_patch_histories got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z2BdsClient.list_patch_histories.<locals>.<dictcomp>Nr   r?   r   )Z
INSTALLINGZ	INSTALLEDr   r   r   r   r   r   r   r   r   r   r   ZODHZOSz2Invalid value for `patch_type`, must be one of {0}r   r   r   )r   r   ZpatchVersionr   r   r   Z	patchTypec                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   zlist[PatchHistorySummary]r   r   r   )r!   rc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   r   r   r   Zpatch_type_allowed_valuesr   rN   r   r$   r3   r%   r     s   ;$






	
zBdsClient.list_patch_historiesc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj|||	||d|	d|||dS | jj|||	||d|	d|||d
S )af  
        List all the available patches for this cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.PatchSummary`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_patches.py.html>`__ to see an example of how to use list_patches API.
        r(   z%/bdsInstances/{bdsInstanceId}/patchesr   list_patcheszNhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/ListPatches)r   r   r,   r   r   c                    r/   r$   r$   r0   r3   r$   r%   r4   b  r5   z*BdsClient.list_patches.<locals>.<listcomp>z%list_patches got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   k  r>   z*BdsClient.list_patches.<locals>.<dictcomp>Nr   r?   r   r   )r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   u  rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   |  rH   r   rI   zlist[PatchSummary]r   r   r   )r!   rc   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   r   rN   r   r$   r3   r%   r   0  sx   $$


zBdsClient.list_patchesc                      dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd|d|v rddg}|d |vrtd||	dt
|	dt
|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd }|rt|tjs| j| || j |j| jj|||	||d!|	d"|||d#S | jj|||	||d!|	d"|||d#
S )$az	  
        Returns a paginated list of errors for a work request identified by the given ID.


        :param str work_request_id: (required)
            The ID of the asynchronous request.

        :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 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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.WorkRequestError`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_work_request_errors.py.html>`__ to see an example of how to use list_work_request_errors API.
        r   z$/workRequests/{workRequestId}/errorsr   list_work_request_errorsz]https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/WorkRequestError/ListWorkRequestErrorsr   r   r   r   r   r   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z6BdsClient.list_work_request_errors.<locals>.<listcomp>z1list_work_request_errors got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z6BdsClient.list_work_request_errors.<locals>.<dictcomp>Nr   r?   r   r   r   r   r   r   r   r   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   zlist[WorkRequestError]r   r   r   r!   r   r#   rR   rK   rL   rP   rQ   re   rM   r;   r<   r   r   r   rN   r   r$   r3   r%   r        .	$




z"BdsClient.list_work_request_errorsc                    r   )$ab	  
        Returns a paginated list of logs for a given work request.


        :param str work_request_id: (required)
            The ID of the asynchronous request.

        :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 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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.WorkRequestLogEntry`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_work_request_logs.py.html>`__ to see an example of how to use list_work_request_logs API.
        r   z"/workRequests/{workRequestId}/logsr   list_work_request_logsz^https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/WorkRequestLogEntry/ListWorkRequestLogsr   c                    r/   r$   r$   r0   r3   r$   r%   r4   j  r5   z4BdsClient.list_work_request_logs.<locals>.<listcomp>z/list_work_request_logs got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   s  r>   z4BdsClient.list_work_request_logs.<locals>.<dictcomp>Nr   r?   r   r   r   r   r   r   r   r   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   zlist[WorkRequestLogEntry]r   r   r   r   r$   r3   r%   r   ,  r   z BdsClient.list_work_request_logsc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d
|v r9ddg}	|d
 |	vr9td|	d|v rNddg}
|d |
vrNtd|
||dt|dt|dt|d
t|dtd}dd t |D }dd|dtd}dd t |D }| jj|d| j	d}|rt
|tjs| j| || j |j| jj||||d|d|||d 
S | jj||||d|d|||d 	S )!a	  
        Lists the work requests in a compartment.


        :param str compartment_id: (required)
            The OCID of the compartment.

        :param str resource_id: (optional)
            The OCID of the resource.

        :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 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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.bds.models.WorkRequest`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/list_work_requests.py.html>`__ to see an example of how to use list_work_requests API.
        r   z/workRequestsr   list_work_requestszShttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/WorkRequest/ListWorkRequests)r   r   resource_idr   r   r   r   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z0BdsClient.list_work_requests.<locals>.<listcomp>z+list_work_requests got unknown kwargs: {!r}r   r   r   r   r   r   r   r   r   r   r   )r   Z
resourceIdr   r   r   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   z0BdsClient.list_work_requests.<locals>.<dictcomp>r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   zlist[WorkRequest]r   r   r   )r!   r   r#   rR   rK   rL   rP   rQ   re   r   r   r   rN   r   r$   r3   r%   r     s   1






zBdsClient.list_work_requestsc                    r'   )a  
        Deletes an autoscale configuration.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str auto_scaling_configuration_id: (required)
            Unique Oracle-assigned identifier of the autoscale configuration.

        :param oci.bds.models.RemoveAutoScalingConfigurationDetails remove_auto_scaling_configuration_details: (required)
            Details for the autoscale configuration

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/remove_auto_scaling_configuration.py.html>`__ to see an example of how to use remove_auto_scaling_configuration API.
        r(   r   zb/bdsInstances/{bdsInstanceId}/autoScalingConfiguration/{autoScalingConfigurationId}/actions/remover*   !remove_auto_scaling_configurationzahttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/RemoveAutoScalingConfigurationrj   c                    r/   r$   r$   r0   r3   r$   r%   r4   ~  r5   z?BdsClient.remove_auto_scaling_configuration.<locals>.<listcomp>z:remove_auto_scaling_configuration got unknown kwargs: {!r}r   c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z?BdsClient.remove_auto_scaling_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   r   Z)remove_auto_scaling_configuration_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   >  rf   z+BdsClient.remove_auto_scaling_configurationc                    rg   )a<
  
        Removes Cloud SQL from the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.RemoveCloudSqlDetails remove_cloud_sql_details: (required)
            Details for the Cloud SQL capability

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/remove_cloud_sql.py.html>`__ to see an example of how to use remove_cloud_sql API.
        r(   z4/bdsInstances/{bdsInstanceId}/actions/removeCloudSqlr*   remove_cloud_sqlzQhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/RemoveCloudSqlrj   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z.BdsClient.remove_cloud_sql.<locals>.<listcomp>z)remove_cloud_sql got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z.BdsClient.remove_cloud_sql.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zremove_cloud_sql_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     rl   zBdsClient.remove_cloud_sqlc                    rg   )a%
  
        Remove Kafka from the cluster.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.RemoveKafkaDetails remove_kafka_details: (required)
            Details for the Kafka capability.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/remove_kafka.py.html>`__ to see an example of how to use remove_kafka API.
        r(   z1/bdsInstances/{bdsInstanceId}/actions/removeKafkar*   remove_kafkazNhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/RemoveKafkarj   c                    r/   r$   r$   r0   r3   r$   r%   r4   k  r5   z*BdsClient.remove_kafka.<locals>.<listcomp>z%remove_kafka got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   t  r>   z*BdsClient.remove_kafka.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   Zremove_kafka_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   .  rl   zBdsClient.remove_kafkac                    h  dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj|||
|||	d|||d
S | jj|||
|||	d|||d	S )aE  
        Remove a single node of a Big Data Service cluster


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.RemoveNodeDetails remove_node_details: (required)
            Details for the node to be removed.

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/remove_node.py.html>`__ to see an example of how to use remove_node API.
        r(   z0/bdsInstances/{bdsInstanceId}/actions/removeNoder*   remove_nodezMhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/RemoveNoder   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z)BdsClient.remove_node.<locals>.<listcomp>z$remove_node got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z)BdsClient.remove_node.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   r   )r!   rc   Zremove_node_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     n   ($

zBdsClient.remove_nodec                    rg   )a:
  
        Restarts a single node of a Big Data Service cluster


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.RestartNodeDetails restart_node_details: (required)
            Details for restarting the node.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/restart_node.py.html>`__ to see an example of how to use restart_node API.
        r(   z1/bdsInstances/{bdsInstanceId}/actions/restartNoder*   restart_nodezNhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/RestartNoderj   c                    r/   r$   r$   r0   r3   r$   r%   r4   M  r5   z*BdsClient.restart_node.<locals>.<listcomp>z%restart_node got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   V  r>   z*BdsClient.restart_node.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   c  rH   r   rI   r   rJ   rS   )r!   rc   Zrestart_node_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     rl   zBdsClient.restart_nodec                    r   )a\  
        Starts the BDS cluster that was stopped earlier.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.StartBdsInstanceDetails start_bds_instance_details: (required)
            Parameters for starting a cluster

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/start_bds_instance.py.html>`__ to see an example of how to use start_bds_instance API.
        r(   z+/bdsInstances/{bdsInstanceId}/actions/startr*   start_bds_instancezShttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/StartBdsInstancer   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z0BdsClient.start_bds_instance.<locals>.<listcomp>z+start_bds_instance got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z0BdsClient.start_bds_instance.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   r   )r!   rc   Zstart_bds_instance_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     r   zBdsClient.start_bds_instancec                    r   )ai  
        Stops the BDS cluster that can be started at later point of time.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.StopBdsInstanceDetails stop_bds_instance_details: (required)
            Parameters for stopping a cluster

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/stop_bds_instance.py.html>`__ to see an example of how to use stop_bds_instance API.
        r(   z*/bdsInstances/{bdsInstanceId}/actions/stopr*   stop_bds_instancezRhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/StopBdsInstancer   c                    r/   r$   r$   r0   r3   r$   r%   r4   '  r5   z/BdsClient.stop_bds_instance.<locals>.<listcomp>z*stop_bds_instance got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=   0  r>   z/BdsClient.stop_bds_instance.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   <  rH   r   rI   r   rJ   r   )r!   rc   Zstop_bds_instance_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     r   zBdsClient.stop_bds_instancec                    l  ddg}d}d}d}d}	g d  fdd	t |D }
|
r%td
|
||d}dd t |D }t |D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj||||||	d||	|d
S | jj||||||	d||	|d	S )a  
        Test specified metastore configuration.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str metastore_config_id: (required)
            The metastore configuration ID

        :param oci.bds.models.TestBdsMetastoreConfigurationDetails test_bds_metastore_configuration_details: (required)
            Request body for testing BDS metastore configuration.

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/test_bds_metastore_configuration.py.html>`__ to see an example of how to use test_bds_metastore_configuration API.
        r(   r)   zO/bdsInstances/{bdsInstanceId}/metastoreConfigs/{metastoreConfigId}/actions/testr*    test_bds_metastore_configurationznhttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/TestBdsMetastoreConfigurationr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z>BdsClient.test_bds_metastore_configuration.<locals>.<listcomp>z9test_bds_metastore_configuration got unknown kwargs: {!r}r6   c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z>BdsClient.test_bds_metastore_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   r   )r!   rc   rd   Z(test_bds_metastore_configuration_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   ^  p   +$

z*BdsClient.test_bds_metastore_configurationc                    sb  ddg}d}d}d}d}	g d  fdd	t |D }
|
r%td
|
||d}dd t |D }t |D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
d}dd t |D }| jj|	d| jd}|rt|tjs| j| || j |j| jj||||||	d||	|d
S | jj||||||	d||	|d	S )a  
        Test access to specified Object Storage bucket using the API key.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str api_key_id: (required)
            The API key identifier.

        :param oci.bds.models.TestBdsObjectStorageConnectionDetails test_bds_object_storage_connection_details: (required)
            Parameters required to validate access to the specified Object Storage bucket using the API key.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/test_bds_object_storage_connection.py.html>`__ to see an example of how to use test_bds_object_storage_connection API.
        r(   r   zT/bdsInstances/{bdsInstanceId}/apiKeys/{apiKeyId}/actions/testObjectStorageConnectionr*   "test_bds_object_storage_connectionz_https://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsApiKey/TestBdsObjectStorageConnectionr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z@BdsClient.test_bds_object_storage_connection.<locals>.<listcomp>z;test_bds_object_storage_connection got unknown kwargs: {!r}r   c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z@BdsClient.test_bds_object_storage_connection.<locals>.<dictcomp>Nr   r?   r@   r,   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   r   )r!   rc   r   Z*test_bds_object_storage_connection_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     sn   $$
z,BdsClient.test_bds_object_storage_connectionc                    r'   )a~  
        Updates fields on an autoscale configuration, including the name, the threshold value, and whether the autoscale configuration is enabled.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str auto_scaling_configuration_id: (required)
            Unique Oracle-assigned identifier of the autoscale configuration.

        :param oci.bds.models.UpdateAutoScalingConfigurationDetails update_auto_scaling_configuration_details: (required)
            Details for update an autoscaling configuration.

        :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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/update_auto_scaling_configuration.py.html>`__ to see an example of how to use update_auto_scaling_configuration API.
        r(   r   r   PUT!update_auto_scaling_configurationzahttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/UpdateAutoScalingConfigurationrj   c                    r/   r$   r$   r0   r3   r$   r%   r4   u  r5   z?BdsClient.update_auto_scaling_configuration.<locals>.<listcomp>z:update_auto_scaling_configuration got unknown kwargs: {!r}r   c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z?BdsClient.update_auto_scaling_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r-   rk   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   rS   )r!   rc   r   Z)update_auto_scaling_configuration_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r   5  rf   z+BdsClient.update_auto_scaling_configurationc                    r   )au  
        Updates the Big Data Service cluster identified by the given ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param oci.bds.models.UpdateBdsInstanceDetails update_bds_instance_details: (required)
            Details for the cluster 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/update_bds_instance.py.html>`__ to see an example of how to use update_bds_instance API.
        r(   r   r   update_bds_instancezThttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsInstance/UpdateBdsInstance)r   r   r.   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z1BdsClient.update_bds_instance.<locals>.<listcomp>z,update_bds_instance got unknown kwargs: {!r}c                 S   r7   r$   r8   r:   r$   r$   r%   r=     r>   z1BdsClient.update_bds_instance.<locals>.<dictcomp>Nr   r?   r@   r.   r,   )rA   rB   rE   rC   c                 S   rF   rG   r8   r:   r$   r$   r%   r=     rH   r   rI   r   rJ   r   )r!   rc   Zupdate_bds_instance_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     r   zBdsClient.update_bds_instancec                    r   )a%	  
        Update the BDS metastore configuration represented by the provided ID.


        :param str bds_instance_id: (required)
            The OCID of the cluster.

        :param str metastore_config_id: (required)
            The metastore configuration ID

        :param oci.bds.models.UpdateBdsMetastoreConfigurationDetails update_bds_metastore_configuration_details: (required)
            Request body for updating BDS metastore configuration.

        :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 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. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/bds/update_bds_metastore_configuration.py.html>`__ to see an example of how to use update_bds_metastore_configuration API.
        r(   r)   r   r   "update_bds_metastore_configurationzphttps://docs.oracle.com/iaas/api/#/en/bigdata/20190531/BdsMetastoreConfiguration/UpdateBdsMetastoreConfigurationr   c                    r/   r$   r$   r0   r3   r$   r%   r4   S  r5   z@BdsClient.update_bds_metastore_configuration.<locals>.<listcomp>z;update_bds_metastore_configuration got unknown kwargs: {!r}r6   c                 S   r7   r$   r8   r:   r$   r$   r%   r=   ]  r>   z@BdsClient.update_bds_metastore_configuration.<locals>.<dictcomp>Nr   r?   r@   r,   r.   r   c                 S   rF   rG   r8   r:   r$   r$   r%   r=   i  rH   r   rI   r   rJ   r   )r!   rc   rd   Z*update_bds_metastore_configuration_detailsr#   rR   rK   rL   rP   rQ   re   rM   r;   r<   rN   r   r$   r3   r%   r     r   z,BdsClient.update_bds_metastore_configurationN)4__name__
__module____qualname____doc__r&   r+   ri   rm   rn   ro   rp   rq   rr   rs   rt   rw   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   r   r   r   r   r   r   r   r   r   r$   r$   r$   r%   r      sv    Xzvvvvvvvvvm^mkgkvdd`d}`vv $ %  8   .p   zvvlvllpgzlr   N)
__future__r   Zoci._vendorr   r   ocir   r   Zoci.base_clientr   Z
oci.configr   r	   Z
oci.signerr
   Zoci.utilr   r   r   Zmodelsr   r9   objectr   r$   r$   r$   r%   <module>   s   