Class: Haipa::Client::AsyncOperationStatus
- Inherits:
-
Object
- Object
- Haipa::Client::AsyncOperationStatus
- Defined in:
- lib/haipa_rest/async_operation_status.rb
Overview
Defines values for AsyncOperationStatus enum.
Constant Summary collapse
- ACCEPTED =
'Accepted'
- IN_PROGRESS_STATUS =
'InProgress'
- RUNNING =
'Running'
- SUCCESS_STATUS =
'Succeeded'
- FAILED_STATUS =
'Failed'
- CANCELED_STATUS =
'Canceled'
- ALL_STATUSES =
[ACCEPTED, FAILED_STATUS, CANCELED_STATUS, SUCCESS_STATUS, IN_PROGRESS_STATUS, RUNNING]
- FAILED_STATUSES =
[FAILED_STATUS, CANCELED_STATUS]
- TERMINAL_STATUSES =
[FAILED_STATUS, CANCELED_STATUS, SUCCESS_STATUS]
- DEFAULT_DELAY =
30
Instance Attribute Summary collapse
-
#error ⇒ Haipa::Client::CloudErrorData
Error information about async operation.
-
#retry_after ⇒ Integer
Delay in seconds which should be used for polling for result of async operation.
-
#status ⇒ Stirng
Status of polling.
Class Method Summary collapse
-
.deserialize_object(object) ⇒ AsyncOperationStatus
Deserializes given hash into AsyncOperationStatus object.
-
.is_failed_status(status) ⇒ Boolean
Checks if given status is failed one.
-
.is_successful_status(status) ⇒ Boolean
Checks if given status is successful one.
-
.is_terminal_status(status) ⇒ Boolean
Checks if given status is terminal one.
Instance Attribute Details
#error ⇒ Haipa::Client::CloudErrorData
Returns error information about async operation.
27 28 29 |
# File 'lib/haipa_rest/async_operation_status.rb', line 27 def error @error end |
#retry_after ⇒ Integer
Returns delay in seconds which should be used for polling for result of async operation.
24 25 26 |
# File 'lib/haipa_rest/async_operation_status.rb', line 24 def retry_after @retry_after end |
#status ⇒ Stirng
Returns status of polling.
30 31 32 |
# File 'lib/haipa_rest/async_operation_status.rb', line 30 def status @status end |
Class Method Details
.deserialize_object(object) ⇒ AsyncOperationStatus
Deserializes given hash into AsyncOperationStatus object.
64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/haipa_rest/async_operation_status.rb', line 64 def self.deserialize_object(object) return if object.nil? output_object = AsyncOperationStatus.new output_object.status = object['status'] output_object.error = CloudErrorData.deserialize_object(object['error']) output_object.retry_after = Integer(object['retryAfter']) unless object['retryAfter'].nil? output_object end |
.is_failed_status(status) ⇒ Boolean
Checks if given status is failed one.
46 47 48 |
# File 'lib/haipa_rest/async_operation_status.rb', line 46 def self.is_failed_status(status) FAILED_STATUSES.any? { |st| st.casecmp(status) == 0 } end |
.is_successful_status(status) ⇒ Boolean
Checks if given status is successful one.
55 56 57 |
# File 'lib/haipa_rest/async_operation_status.rb', line 55 def self.is_successful_status(status) return (status.casecmp(SUCCESS_STATUS) == 0) end |
.is_terminal_status(status) ⇒ Boolean
Checks if given status is terminal one.
37 38 39 |
# File 'lib/haipa_rest/async_operation_status.rb', line 37 def self.is_terminal_status(status) TERMINAL_STATUSES.any? { |st| st.casecmp(status) == 0 } end |