/
lib
/
python3.9
/
site-packages
/
oci
/
database_tools
/
__pycache__
/
Upload File
HOME
a ���fF� � @ s( d dl Z d dlmZ G dd� de�ZdS )� N)�WAIT_RESOURCE_NOT_FOUNDc @ s� e Zd ZdZdd� Zg i i fdd�Zg i i fdd�Zg i i fdd �Zg i i fd d�Zg i i fdd �Z g i i fdd�Z g i i fdd�Zg i i fdd�Zg i i fdd�Z g i i fdd�Zg i i fdd�Zg i i fdd�ZdS )�&DatabaseToolsClientCompositeOperationsa� This class provides a wrapper around :py:class:`~oci.database_tools.DatabaseToolsClient` and offers convenience methods for operations that would otherwise need to be chained together. For example, instead of performing an action on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource to enter a given state, you can call a single method in this class to accomplish the same functionality c K s || _ dS )z� Creates a new DatabaseToolsClientCompositeOperations object :param DatabaseToolsClient client: The service client which will be wrapped by this object N)�client)�selfr �kwargs� r �a/usr/lib/python3.9/site-packages/oci/database_tools/database_tools_client_composite_operations.py�__init__ s z/DatabaseToolsClientCompositeOperations.__init__c s� | j j||fi |��}|s|S dd� |D �� |jj}z4tj| j | j �|�fd� fdd�i|��}|}|W S ttfy� } z6| j s�d| _ | j d | _ tj j|g| d��W Y d } ~ n>d } ~ 0 ty� } ztj j|g| d��W Y d } ~ n d } ~ 0 0 d S ) a1 Calls :py:func:`~oci.database_tools.DatabaseToolsClient.add_database_tools_connection_lock` and waits for the :py:class:`~oci.database_tools.models.DatabaseToolsConnection` acted upon to enter the given state(s). :param str database_tools_connection_id: (required) The `OCID`__ of a Database Tools connection. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.database_tools.models.AddResourceLockDetails add_resource_lock_details: (required) AddResourceLockDetails body parameter :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.database_tools.models.DatabaseToolsConnection.lifecycle_state` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.database_tools.DatabaseToolsClient.add_database_tools_connection_lock` :param dict waiter_kwargs: A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait c S s g | ]}|� � �qS r ��lower��.0�wr r r � <listcomp>6 � zpDatabaseToolsClientCompositeOperations.add_database_tools_connection_lock_and_wait_for_state.<locals>.<listcomp>�evaluate_responsec s t | jd�ot | jd��� � v S �NZlifecycle_state��getattr�datar ��r�Zlowered_wait_for_statesr r �<lambda>= r znDatabaseToolsClientCompositeOperations.add_database_tools_connection_lock_and_wait_for_state.<locals>.<lambda>�� �a This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"�Zpartial_results�causeN) r Z"add_database_tools_connection_lockr �id�oci� wait_until�get_database_tools_connection� NameError� TypeError�args� exceptions�CompositeOperationError� Exception) r �database_tools_connection_id�add_resource_lock_details�wait_for_states�operation_kwargs� waiter_kwargs�operation_result� waiter_result�result_to_return�er r r �5add_database_tools_connection_lock_and_wait_for_state s. � ��&z\DatabaseToolsClientCompositeOperations.add_database_tools_connection_lock_and_wait_for_statec s� | j j||fi |��}|s|S dd� |D �� |jj}z4tj| j | j �|�fd� fdd�i|��}|}|W S ttfy� } z6| j s�d| _ | j d | _ tj j|g| d��W Y d } ~ n>d } ~ 0 ty� } ztj j|g| d��W Y d } ~ n d } ~ 0 0 d S ) aS Calls :py:func:`~oci.database_tools.DatabaseToolsClient.add_database_tools_private_endpoint_lock` and waits for the :py:class:`~oci.database_tools.models.DatabaseToolsPrivateEndpoint` acted upon to enter the given state(s). :param str database_tools_private_endpoint_id: (required) The `OCID`__ of a Database Tools private endpoint. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.database_tools.models.AddResourceLockDetails add_resource_lock_details: (required) AddResourceLockDetails body parameter :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.database_tools.models.DatabaseToolsPrivateEndpoint.lifecycle_state` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.database_tools.DatabaseToolsClient.add_database_tools_private_endpoint_lock` :param dict waiter_kwargs: A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait c S s g | ]}|� � �qS r r r r r r r e r zvDatabaseToolsClientCompositeOperations.add_database_tools_private_endpoint_lock_and_wait_for_state.<locals>.<listcomp>r c s t | jd�ot | jd��� � v S r r r r r r r l r ztDatabaseToolsClientCompositeOperations.add_database_tools_private_endpoint_lock_and_wait_for_state.<locals>.<lambda>r r r N) r Z(add_database_tools_private_endpoint_lockr r r r! �#get_database_tools_private_endpointr# r$ r% r&