ruạṛ
a N��f:> � @ 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�Zg i i fdd�Zg i i fdd�Zg i i fd d!�Zg i i fd"d#�Zg i i fd$d%�Zg i i fd&d'�Zg i i fd(d)�Zg i i fd*d+�Zg i i fd,d-�Zg i i fd.d/�Zg i i fd0d1�Zg i i fd2d3�Zg i i fd4d5�Zg i i fd6d7�Zg i i fd8d9�Zg i i fd:d;�Z g i i fd<d=�Z!g i i fd>d?�Z"g i i fd@dA�Z#g i i fdBdC�Z$g i i fdDdE�Z%g i i fdFdG�Z&g i i fdHdI�Z'g i i fdJdK�Z(g i i fdLdM�Z)g i i fdNdO�Z*g i i fdPdQ�Z+g i i fdRdS�Z,g i i fdTdU�Z-g i i fdVdW�Z.g i i fdXdY�Z/g i i fdZd[�Z0g i i fd\d]�Z1g i i fd^d_�Z2g i i fd`da�Z3g i i fdbdc�Z4g i i fddde�Z5g i i fdfdg�Z6g i i fdhdi�Z7g i i fdjdk�Z8g i i fdldm�Z9g i i fdndo�Z:g i i fdpdq�Z;g i i fdrds�Z<g i i fdtdu�Z=g i i fdvdw�Z>g i i fdxdy�Z?g i i fdzd{�Z@g i i fd|d}�ZAg i i fd~d�ZBg i i fd�d��ZCg i i fd�d��ZDg i i fd�d��ZEg i i fd�d��ZFg i i fd�d��ZGg i i fd�d��ZHg i i fd�d��ZIg i i fd�d��ZJg i i fd�d��ZKg i i fd�d��ZLg i i fd�d��ZMg i i fd�d��ZNg i i fd�d��ZOg i i fd�d��ZPg i i fd�d��ZQg i i fd�d��ZRg i i fd�d��ZSg i i fd�d��ZTg i i fd�d��ZUg i i fd�d��ZVg i i fd�d��ZWg i i fd�d��ZXg i i fd�d��ZYg i i fd�d��ZZg i i fd�d��Z[g i i fd�d��Z\g i i fd�d��Z]g i i fd�d��Z^g i i fd�d��Z_g i i fd�d��Z`g i i fd�d��Zag i i fd�d��Zbg i i fd�d��Zcd�S )��!DataSafeClientCompositeOperationsa� This class provides a wrapper around :py:class:`~oci.data_safe.DataSafeClient` 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 DataSafeClientCompositeOperations object :param DataSafeClient client: The service client which will be wrapped by this object N)�client)�selfr �kwargs� r ��/sparta/input/_build_configuration/image_build+validate/lib/bmcenv/lib64/python3.9/site-packages/oci/data_safe/data_safe_client_composite_operations.py�__init__ s z*DataSafeClientCompositeOperations.__init__c s� | j j||fi |��}|s|S dd� |D �� |jd }z4tj| j | j �|�fd� fdd�i|��}|} | W S ty� } ztjj|g| d��W Y d} ~ n d} ~ 0 0 dS ) a� Calls :py:func:`~oci.data_safe.DataSafeClient.activate_target_database` and waits for the :py:class:`~oci.data_safe.models.WorkRequest` to enter the given state(s). :param oci.data_safe.models.ActivateTargetDatabaseDetails activate_target_database_details: (required) The details used to reactivate a target database in Data Safe. :param str target_database_id: (required) The OCID of the Data Safe target database. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.data_safe.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.data_safe.DataSafeClient.activate_target_database` :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>3 � zaDataSafeClientCompositeOperations.activate_target_database_and_wait_for_state.<locals>.<listcomp>�opc-work-request-id�evaluate_responsec s t | jd�ot | jd��� � v S �N�status��getattr�datar ��r��lowered_wait_for_statesr r �<lambda>: r z_DataSafeClientCompositeOperations.activate_target_database_and_wait_for_state.<locals>.<lambda>��partial_results�causeN) r �activate_target_database�headers�oci� wait_until�get_work_request� Exception� exceptions�CompositeOperationError)r � activate_target_database_details�target_database_id�wait_for_states�operation_kwargs� waiter_kwargs�operation_result�wait_for_resource_id� waiter_result�result_to_return�er r r �+activate_target_database_and_wait_for_state s$ � ��zMDataSafeClientCompositeOperations.activate_target_database_and_wait_for_statec s� | j j|fi |��}|s|S dd� |D �� |jd }z4tj| j | j �|�fd� fdd�i|��}|}|W S ty� } ztjj|g| d��W Y d} ~ n d} ~ 0 0 dS ) a� Calls :py:func:`~oci.data_safe.DataSafeClient.add_masking_columns_from_sdm` and waits for the :py:class:`~oci.data_safe.models.WorkRequest` to enter the given state(s). :param str masking_policy_id: (required) The OCID of the masking policy. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.data_safe.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.data_safe.DataSafeClient.add_masking_columns_from_sdm` :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 Y r zeDataSafeClientCompositeOperations.add_masking_columns_from_sdm_and_wait_for_state.<locals>.<listcomp>r r c s t | jd�ot | jd��� � v S r r r r r r r ` r zcDataSafeClientCompositeOperations.add_masking_columns_from_sdm_and_wait_for_state.<locals>.<lambda>r N) r �add_masking_columns_from_sdmr! r"