a OfWo@s(ddlZddlmZGdddeZdS)N)WAIT_RESOURCE_NOT_FOUNDc@seZdZdZddZgiifddZgiifddZgiifdd Zgiifd d Zgiifd d Z giifddZ giifddZ giifddZ giifddZ giifddZgiifddZgiifddZdS)WafClientCompositeOperationsa This class provides a wrapper around :py:class:`~oci.waf.WafClient` 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 cKs ||_dS)z Creates a new WafClientCompositeOperations object :param WafClient client: The service client which will be wrapped by this object N)client)selfrkwargsr/sparta/input/_build_configuration/image_build+validate/lib/bmcenv/lib64/python3.9/site-packages/oci/waf/waf_client_composite_operations.py__init__sz%WafClientCompositeOperations.__init__c s|jj||fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|} | WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.change_network_address_list_compartment` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str network_address_list_id: (required) The `OCID`__ of the NetworkAddressList. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.waf.models.ChangeNetworkAddressListCompartmentDetails change_network_address_list_compartment_details: (required) The information to be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.change_network_address_list_compartment` :param dict waiter_kwargs: A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait cSsg|] }|qSrlower.0wrrr 5zkWafClientCompositeOperations.change_network_address_list_compartment_and_wait_for_state..opc-work-request-idevaluate_responsecs t|jdot|jdvSNstatusgetattrdatar rlowered_wait_for_statesrr<rziWafClientCompositeOperations.change_network_address_list_compartment_and_wait_for_state..partial_resultscauseN) r'change_network_address_list_compartmentheadersoci wait_untilget_work_request Exception exceptionsCompositeOperationError) rnetwork_address_list_id/change_network_address_list_compartment_detailswait_for_statesoperation_kwargs waiter_kwargsoperation_resultwait_for_resource_id waiter_resultresult_to_returnerrr:change_network_address_list_compartment_and_wait_for_states$   zWWafClientCompositeOperations.change_network_address_list_compartment_and_wait_for_statec s|jj||fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|} | WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.change_web_app_firewall_compartment` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str web_app_firewall_id: (required) The `OCID`__ of the WebAppFirewall. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.waf.models.ChangeWebAppFirewallCompartmentDetails change_web_app_firewall_compartment_details: (required) The information to be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.change_web_app_firewall_compartment` :param dict waiter_kwargs: A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait cSsg|] }|qSrr r rrrr`rzgWafClientCompositeOperations.change_web_app_firewall_compartment_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrgrzeWafClientCompositeOperations.change_web_app_firewall_compartment_and_wait_for_state..rN) r#change_web_app_firewall_compartmentr!r"r#r$r%r&r') rweb_app_firewall_id+change_web_app_firewall_compartment_detailsr*r+r,r-r.r/r0r1rrr6change_web_app_firewall_compartment_and_wait_for_stateEs$   zSWafClientCompositeOperations.change_web_app_firewall_compartment_and_wait_for_statec s|jj||fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|} | WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.change_web_app_firewall_policy_compartment` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str web_app_firewall_policy_id: (required) The `OCID`__ of the WebAppFirewallPolicy. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.waf.models.ChangeWebAppFirewallPolicyCompartmentDetails change_web_app_firewall_policy_compartment_details: (required) The information to be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.change_web_app_firewall_policy_compartment` :param dict waiter_kwargs: A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait cSsg|] }|qSrr r rrrrrznWafClientCompositeOperations.change_web_app_firewall_policy_compartment_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrzlWafClientCompositeOperations.change_web_app_firewall_policy_compartment_and_wait_for_state..rN) r*change_web_app_firewall_policy_compartmentr!r"r#r$r%r&r') rweb_app_firewall_policy_id2change_web_app_firewall_policy_compartment_detailsr*r+r,r-r.r/r0r1rrr=change_web_app_firewall_policy_compartment_and_wait_for_stateps$   zZWafClientCompositeOperations.change_web_app_firewall_policy_compartment_and_wait_for_statec s|jj|fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|}|WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.create_network_address_list` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param oci.waf.models.CreateNetworkAddressListDetails create_network_address_list_details: (required) Details for the new NetworkAddressList. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.create_network_address_list` :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 cSsg|] }|qSrr r rrrrrz_WafClientCompositeOperations.create_network_address_list_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrz]WafClientCompositeOperations.create_network_address_list_and_wait_for_state..rN) rcreate_network_address_listr!r"r#r$r%r&r') r#create_network_address_list_detailsr*r+r,r-r.r/r0r1rrr.create_network_address_list_and_wait_for_states$   zKWafClientCompositeOperations.create_network_address_list_and_wait_for_statec s|jj|fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|}|WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.create_web_app_firewall` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param oci.waf.models.CreateWebAppFirewallDetails create_web_app_firewall_details: (required) Details for the new Web App Firewall. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.create_web_app_firewall` :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 cSsg|] }|qSrr r rrrrrz[WafClientCompositeOperations.create_web_app_firewall_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrzYWafClientCompositeOperations.create_web_app_firewall_and_wait_for_state..rN) rcreate_web_app_firewallr!r"r#r$r%r&r') rcreate_web_app_firewall_detailsr*r+r,r-r.r/r0r1rrr*create_web_app_firewall_and_wait_for_states$   zGWafClientCompositeOperations.create_web_app_firewall_and_wait_for_statec s|jj|fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|}|WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.create_web_app_firewall_policy` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param oci.waf.models.CreateWebAppFirewallPolicyDetails create_web_app_firewall_policy_details: (required) Details for the new WebAppFirewallPolicy. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.create_web_app_firewall_policy` :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 cSsg|] }|qSrr r rrrrrzbWafClientCompositeOperations.create_web_app_firewall_policy_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrz`WafClientCompositeOperations.create_web_app_firewall_policy_and_wait_for_state..rN) rcreate_web_app_firewall_policyr!r"r#r$r%r&r') r&create_web_app_firewall_policy_detailsr*r+r,r-r.r/r0r1rrr1create_web_app_firewall_policy_and_wait_for_states$   zNWafClientCompositeOperations.create_web_app_firewall_policy_and_wait_for_statec sd}z|jj|fi|}WnFtjjyb}z*|jdkrJtWYd}~S|WYd}~n d}~00|sl|Sdd|D|jd}z4tj|j|j |fdfddi|}|} | WSt y}ztjj |g|d WYd}~n d}~00dS) a Calls :py:func:`~oci.waf.WafClient.delete_network_address_list` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str network_address_list_id: (required) The `OCID`__ of the NetworkAddressList. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.delete_network_address_list` :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 NcSsg|] }|qSrr r rrrr-rz_WafClientCompositeOperations.delete_network_address_list_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrr4rz]WafClientCompositeOperations.delete_network_address_list_and_wait_for_state..r) rdelete_network_address_listr"r& ServiceErrorrrr!r#r$r%r') rr(r*r+r,r-r1r.r/r0rrr.delete_network_address_list_and_wait_for_state s0    zKWafClientCompositeOperations.delete_network_address_list_and_wait_for_statec sd}z|jj|fi|}WnFtjjyb}z*|jdkrJtWYd}~S|WYd}~n d}~00|sl|Sdd|D|jd}z4tj|j|j |fdfddi|}|} | WSt y}ztjj |g|d WYd}~n d}~00dS) a Calls :py:func:`~oci.waf.WafClient.delete_web_app_firewall` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str web_app_firewall_id: (required) The `OCID`__ of the WebAppFirewall. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.delete_web_app_firewall` :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 NrDcSsg|] }|qSrr r rrrr]rz[WafClientCompositeOperations.delete_web_app_firewall_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrdrzYWafClientCompositeOperations.delete_web_app_firewall_and_wait_for_state..r) rdelete_web_app_firewallr"r&rFrrr!r#r$r%r') rr4r*r+r,r-r1r.r/r0rrr*delete_web_app_firewall_and_wait_for_state=s0    zGWafClientCompositeOperations.delete_web_app_firewall_and_wait_for_statec sd}z|jj|fi|}WnFtjjyb}z*|jdkrJtWYd}~S|WYd}~n d}~00|sl|Sdd|D|jd}z4tj|j|j |fdfddi|}|} | WSt y}ztjj |g|d WYd}~n d}~00dS) a Calls :py:func:`~oci.waf.WafClient.delete_web_app_firewall_policy` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str web_app_firewall_policy_id: (required) The `OCID`__ of the WebAppFirewallPolicy. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.delete_web_app_firewall_policy` :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 NrDcSsg|] }|qSrr r rrrrrzbWafClientCompositeOperations.delete_web_app_firewall_policy_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrz`WafClientCompositeOperations.delete_web_app_firewall_policy_and_wait_for_state..r) rdelete_web_app_firewall_policyr"r&rFrrr!r#r$r%r') rr8r*r+r,r-r1r.r/r0rrr1delete_web_app_firewall_policy_and_wait_for_statems0    zNWafClientCompositeOperations.delete_web_app_firewall_policy_and_wait_for_statec s|jj||fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|} | WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.update_network_address_list` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str network_address_list_id: (required) The `OCID`__ of the NetworkAddressList. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.waf.models.UpdateNetworkAddressListDetails update_network_address_list_details: (required) The information to be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.update_network_address_list` :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 cSsg|] }|qSrr r rrrrrz_WafClientCompositeOperations.update_network_address_list_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrz]WafClientCompositeOperations.update_network_address_list_and_wait_for_state..rN) rupdate_network_address_listr!r"r#r$r%r&r') rr(#update_network_address_list_detailsr*r+r,r-r.r/r0r1rrr.update_network_address_list_and_wait_for_states$   zKWafClientCompositeOperations.update_network_address_list_and_wait_for_statec s|jj||fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|} | WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.update_web_app_firewall` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str web_app_firewall_id: (required) The `OCID`__ of the WebAppFirewall. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.waf.models.UpdateWebAppFirewallDetails update_web_app_firewall_details: (required) The information to be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.update_web_app_firewall` :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 cSsg|] }|qSrr r rrrrrz[WafClientCompositeOperations.update_web_app_firewall_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrzYWafClientCompositeOperations.update_web_app_firewall_and_wait_for_state..rN) rupdate_web_app_firewallr!r"r#r$r%r&r') rr4update_web_app_firewall_detailsr*r+r,r-r.r/r0r1rrr*update_web_app_firewall_and_wait_for_states$   zGWafClientCompositeOperations.update_web_app_firewall_and_wait_for_statec s|jj||fi|}|s|Sdd|D|jd}z4tj|j|j|fdfddi|}|} | WSty} ztjj|g| dWYd} ~ n d} ~ 00dS) a Calls :py:func:`~oci.waf.WafClient.update_web_app_firewall_policy` and waits for the :py:class:`~oci.waf.models.WorkRequest` to enter the given state(s). :param str web_app_firewall_policy_id: (required) The `OCID`__ of the WebAppFirewallPolicy. __ https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm :param oci.waf.models.UpdateWebAppFirewallPolicyDetails update_web_app_firewall_policy_details: (required) The information to be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.waf.models.WorkRequest.status` :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.waf.WafClient.update_web_app_firewall_policy` :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 cSsg|] }|qSrr r rrrrrzbWafClientCompositeOperations.update_web_app_firewall_policy_and_wait_for_state..rrcs t|jdot|jdvSrrrrrrrrz`WafClientCompositeOperations.update_web_app_firewall_policy_and_wait_for_state..rN) rupdate_web_app_firewall_policyr!r"r#r$r%r&r') rr8&update_web_app_firewall_policy_detailsr*r+r,r-r.r/r0r1rrr1update_web_app_firewall_policy_and_wait_for_states$   zNWafClientCompositeOperations.update_web_app_firewall_policy_and_wait_for_stateN)__name__ __module__ __qualname____doc__r r2r6r:r=r@rCrGrIrKrNrQrTrrrrr s +++&&&000++r)r"oci.utilrobjectrrrrrs