module OCI::LoadBalancer::Util
Load balancer utility methods
Public Class Methods
wait_on_work_request(client, work_request_id, max_interval_seconds: 30, max_wait_seconds: 1200, raise_error_on_failure: true)
click to toggle source
Wait until the work request succeeds or fails, or max_wait_seconds is reached. The work request will be polled at an increasing rate, with a maximum of max_interval_seconds between requests.
@param [LoadBalancerClient] client A load balancer client @param [Integer] max_interval_seconds The maximum interval between queries, in seconds. @param [Integer] max_wait_seconds The maximum total time to wait, in seconds. @param [Boolean] raise_error_on_failure If true, then a WorkRequestFailedError will be raised if the work request is in a failed state. @return [OCI::Response] A {OCI::Response} object containing the completed {OCI::LoadBalancer::Models::WorkRequest}
# File lib/oci/load_balancer/util.rb, line 19 def self.wait_on_work_request(client, work_request_id, max_interval_seconds: 30, max_wait_seconds: 1200, raise_error_on_failure: true) OCI::Waiter::WorkRequest.wait_for_state( client, work_request_id, lambda do |work_request| work_request.lifecycle_state == OCI::LoadBalancer::Models::WorkRequest::LIFECYCLE_STATE_SUCCEEDED end, lambda do |work_request| is_failed_state = work_request.lifecycle_state == \ OCI::LoadBalancer::Models::WorkRequest::LIFECYCLE_STATE_FAILED raise OCI::Errors::WorkRequestFailedError.new(work_request, work_request.lifecycle_state) \ if raise_error_on_failure && is_failed_state is_failed_state end, max_interval_seconds: max_interval_seconds, max_wait_seconds: max_wait_seconds ) end