iron_titan 0.3.10 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/LICENSE +201 -0
 - data/README.md +6 -5
 - data/lib/iron_titan/api/groups_api.rb +34 -31
 - data/lib/iron_titan/api/jobs_api.rb +140 -182
 - data/lib/iron_titan/api/runner_api.rb +43 -47
 - data/lib/iron_titan/api_client.rb +48 -8
 - data/lib/iron_titan/api_error.rb +12 -1
 - data/lib/iron_titan/configuration.rb +23 -0
 - data/lib/iron_titan/models/complete.rb +63 -27
 - data/lib/iron_titan/models/error.rb +59 -21
 - data/lib/iron_titan/models/error_body.rb +61 -24
 - data/lib/iron_titan/models/group.rb +112 -28
 - data/lib/iron_titan/models/group_wrapper.rb +60 -21
 - data/lib/iron_titan/models/groups_wrapper.rb +60 -21
 - data/lib/iron_titan/models/id_status.rb +89 -28
 - data/lib/iron_titan/models/job.rb +168 -90
 - data/lib/iron_titan/models/job_wrapper.rb +60 -21
 - data/lib/iron_titan/models/jobs_wrapper.rb +62 -24
 - data/lib/iron_titan/models/new_job.rb +91 -42
 - data/lib/iron_titan/models/new_jobs_wrapper.rb +60 -21
 - data/lib/iron_titan/models/start.rb +59 -21
 - data/lib/iron_titan/version.rb +13 -2
 - data/lib/iron_titan.rb +12 -1
 - data/spec/api/groups_api_spec.rb +16 -17
 - data/spec/api/jobs_api_spec.rb +37 -78
 - data/spec/api/runner_api_spec.rb +20 -21
 - data/spec/api_client_spec.rb +296 -0
 - data/spec/configuration_spec.rb +48 -0
 - data/spec/models/complete_spec.rb +16 -17
 - data/spec/models/error_body_spec.rb +15 -12
 - data/spec/models/error_spec.rb +14 -7
 - data/spec/models/group_spec.rb +33 -12
 - data/spec/models/group_wrapper_spec.rb +14 -7
 - data/spec/models/groups_wrapper_spec.rb +14 -7
 - data/spec/models/id_status_spec.rb +18 -12
 - data/spec/models/job_spec.rb +43 -88
 - data/spec/models/job_wrapper_spec.rb +14 -7
 - data/spec/models/jobs_wrapper_spec.rb +15 -12
 - data/spec/models/new_job_spec.rb +20 -37
 - data/spec/models/new_jobs_wrapper_spec.rb +14 -7
 - data/spec/models/start_spec.rb +14 -7
 - data/spec/spec_helper.rb +122 -0
 - metadata +9 -2
 
| 
         @@ -3,10 +3,21 @@ Titan API 
     | 
|
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            The ultimate, language agnostic, container based job processing framework.
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            OpenAPI spec version: 0. 
     | 
| 
      
 6 
     | 
    
         
            +
            OpenAPI spec version: 0.4.0
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            Generated by: https://github.com/swagger-api/swagger-codegen.git
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
      
 10 
     | 
    
         
            +
            Licensed under the Apache License, Version 2.0 (the "License");
         
     | 
| 
      
 11 
     | 
    
         
            +
            you may not use this file except in compliance with the License.
         
     | 
| 
      
 12 
     | 
    
         
            +
            You may obtain a copy of the License at
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            Unless required by applicable law or agreed to in writing, software
         
     | 
| 
      
 17 
     | 
    
         
            +
            distributed under the License is distributed on an "AS IS" BASIS,
         
     | 
| 
      
 18 
     | 
    
         
            +
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         
     | 
| 
      
 19 
     | 
    
         
            +
            See the License for the specific language governing permissions and
         
     | 
| 
      
 20 
     | 
    
         
            +
            limitations under the License.
         
     | 
| 
       10 
21 
     | 
    
         | 
| 
       11 
22 
     | 
    
         
             
            =end
         
     | 
| 
       12 
23 
     | 
    
         | 
| 
         @@ -28,12 +39,12 @@ module IronTitan 
     | 
|
| 
       28 
39 
     | 
    
         
             
                # @param [Hash] opts the optional parameters
         
     | 
| 
       29 
40 
     | 
    
         
             
                # @return [JobWrapper]
         
     | 
| 
       30 
41 
     | 
    
         
             
                def groups_name_jobs_id_error_post(name, id, body, opts = {})
         
     | 
| 
       31 
     | 
    
         
            -
                  data,  
     | 
| 
      
 42 
     | 
    
         
            +
                  data, _status_code, _headers = groups_name_jobs_id_error_post_with_http_info(name, id, body, opts)
         
     | 
| 
       32 
43 
     | 
    
         
             
                  return data
         
     | 
| 
       33 
44 
     | 
    
         
             
                end
         
     | 
| 
       34 
45 
     | 
    
         | 
| 
       35 
46 
     | 
    
         
             
                # Mark job as failed.
         
     | 
| 
       36 
     | 
    
         
            -
                # Job is marked as failed if it was in a valid state. Job's  
     | 
| 
      
 47 
     | 
    
         
            +
                # Job is marked as failed if it was in a valid state. Job's `finished_at` time is initialized.
         
     | 
| 
       37 
48 
     | 
    
         
             
                # @param name Name of group for this set of jobs.
         
     | 
| 
       38 
49 
     | 
    
         
             
                # @param id Job id
         
     | 
| 
       39 
50 
     | 
    
         
             
                # @param body 
         
     | 
| 
         @@ -41,18 +52,14 @@ module IronTitan 
     | 
|
| 
       41 
52 
     | 
    
         
             
                # @return [Array<(JobWrapper, Fixnum, Hash)>] JobWrapper data, response status code and response headers
         
     | 
| 
       42 
53 
     | 
    
         
             
                def groups_name_jobs_id_error_post_with_http_info(name, id, body, opts = {})
         
     | 
| 
       43 
54 
     | 
    
         
             
                  if @api_client.config.debugging
         
     | 
| 
       44 
     | 
    
         
            -
                    @api_client.config.logger.debug "Calling API: RunnerApi 
     | 
| 
      
 55 
     | 
    
         
            +
                    @api_client.config.logger.debug "Calling API: RunnerApi.groups_name_jobs_id_error_post ..."
         
     | 
| 
       45 
56 
     | 
    
         
             
                  end
         
     | 
| 
       46 
     | 
    
         
            -
                  
         
     | 
| 
       47 
57 
     | 
    
         
             
                  # verify the required parameter 'name' is set
         
     | 
| 
       48 
     | 
    
         
            -
                  fail "Missing the required parameter 'name' when calling groups_name_jobs_id_error_post" if name.nil?
         
     | 
| 
       49 
     | 
    
         
            -
                  
         
     | 
| 
      
 58 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'name' when calling RunnerApi.groups_name_jobs_id_error_post" if name.nil?
         
     | 
| 
       50 
59 
     | 
    
         
             
                  # verify the required parameter 'id' is set
         
     | 
| 
       51 
     | 
    
         
            -
                  fail "Missing the required parameter 'id' when calling groups_name_jobs_id_error_post" if id.nil?
         
     | 
| 
       52 
     | 
    
         
            -
                  
         
     | 
| 
      
 60 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'id' when calling RunnerApi.groups_name_jobs_id_error_post" if id.nil?
         
     | 
| 
       53 
61 
     | 
    
         
             
                  # verify the required parameter 'body' is set
         
     | 
| 
       54 
     | 
    
         
            -
                  fail "Missing the required parameter 'body' when calling groups_name_jobs_id_error_post" if body.nil?
         
     | 
| 
       55 
     | 
    
         
            -
                  
         
     | 
| 
      
 62 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'body' when calling RunnerApi.groups_name_jobs_id_error_post" if body.nil?
         
     | 
| 
       56 
63 
     | 
    
         
             
                  # resource path
         
     | 
| 
       57 
64 
     | 
    
         
             
                  local_var_path = "/groups/{name}/jobs/{id}/error".sub('{format}','json').sub('{' + 'name' + '}', name.to_s).sub('{' + 'id' + '}', id.to_s)
         
     | 
| 
       58 
65 
     | 
    
         | 
| 
         @@ -63,19 +70,18 @@ module IronTitan 
     | 
|
| 
       63 
70 
     | 
    
         
             
                  header_params = {}
         
     | 
| 
       64 
71 
     | 
    
         | 
| 
       65 
72 
     | 
    
         
             
                  # HTTP header 'Accept' (if needed)
         
     | 
| 
       66 
     | 
    
         
            -
                   
     | 
| 
       67 
     | 
    
         
            -
                   
     | 
| 
      
 73 
     | 
    
         
            +
                  local_header_accept = ['application/json']
         
     | 
| 
      
 74 
     | 
    
         
            +
                  local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
         
     | 
| 
       68 
75 
     | 
    
         | 
| 
       69 
76 
     | 
    
         
             
                  # HTTP header 'Content-Type'
         
     | 
| 
       70 
     | 
    
         
            -
                   
     | 
| 
       71 
     | 
    
         
            -
                  header_params['Content-Type'] = @api_client.select_header_content_type( 
     | 
| 
      
 77 
     | 
    
         
            +
                  local_header_content_type = ['application/json']
         
     | 
| 
      
 78 
     | 
    
         
            +
                  header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
         
     | 
| 
       72 
79 
     | 
    
         | 
| 
       73 
80 
     | 
    
         
             
                  # form parameters
         
     | 
| 
       74 
81 
     | 
    
         
             
                  form_params = {}
         
     | 
| 
       75 
82 
     | 
    
         | 
| 
       76 
83 
     | 
    
         
             
                  # http body (model)
         
     | 
| 
       77 
84 
     | 
    
         
             
                  post_body = @api_client.object_to_http_body(body)
         
     | 
| 
       78 
     | 
    
         
            -
                  
         
     | 
| 
       79 
85 
     | 
    
         
             
                  auth_names = []
         
     | 
| 
       80 
86 
     | 
    
         
             
                  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
         
     | 
| 
       81 
87 
     | 
    
         
             
                    :header_params => header_params,
         
     | 
| 
         @@ -98,12 +104,12 @@ module IronTitan 
     | 
|
| 
       98 
104 
     | 
    
         
             
                # @param [Hash] opts the optional parameters
         
     | 
| 
       99 
105 
     | 
    
         
             
                # @return [JobWrapper]
         
     | 
| 
       100 
106 
     | 
    
         
             
                def groups_name_jobs_id_start_post(name, id, body, opts = {})
         
     | 
| 
       101 
     | 
    
         
            -
                  data,  
     | 
| 
      
 107 
     | 
    
         
            +
                  data, _status_code, _headers = groups_name_jobs_id_start_post_with_http_info(name, id, body, opts)
         
     | 
| 
       102 
108 
     | 
    
         
             
                  return data
         
     | 
| 
       103 
109 
     | 
    
         
             
                end
         
     | 
| 
       104 
110 
     | 
    
         | 
| 
       105 
     | 
    
         
            -
                # Mark job as started, ie: status  
     | 
| 
       106 
     | 
    
         
            -
                # Job status is changed to 'running' if it was in a valid state before. Job's  
     | 
| 
      
 111 
     | 
    
         
            +
                # Mark job as started, ie: status = 'running'
         
     | 
| 
      
 112 
     | 
    
         
            +
                # Job status is changed to 'running' if it was in a valid state before. Job's `started_at` time is initialized.
         
     | 
| 
       107 
113 
     | 
    
         
             
                # @param name Name of group for this set of jobs.
         
     | 
| 
       108 
114 
     | 
    
         
             
                # @param id Job id
         
     | 
| 
       109 
115 
     | 
    
         
             
                # @param body 
         
     | 
| 
         @@ -111,18 +117,14 @@ module IronTitan 
     | 
|
| 
       111 
117 
     | 
    
         
             
                # @return [Array<(JobWrapper, Fixnum, Hash)>] JobWrapper data, response status code and response headers
         
     | 
| 
       112 
118 
     | 
    
         
             
                def groups_name_jobs_id_start_post_with_http_info(name, id, body, opts = {})
         
     | 
| 
       113 
119 
     | 
    
         
             
                  if @api_client.config.debugging
         
     | 
| 
       114 
     | 
    
         
            -
                    @api_client.config.logger.debug "Calling API: RunnerApi 
     | 
| 
      
 120 
     | 
    
         
            +
                    @api_client.config.logger.debug "Calling API: RunnerApi.groups_name_jobs_id_start_post ..."
         
     | 
| 
       115 
121 
     | 
    
         
             
                  end
         
     | 
| 
       116 
     | 
    
         
            -
                  
         
     | 
| 
       117 
122 
     | 
    
         
             
                  # verify the required parameter 'name' is set
         
     | 
| 
       118 
     | 
    
         
            -
                  fail "Missing the required parameter 'name' when calling groups_name_jobs_id_start_post" if name.nil?
         
     | 
| 
       119 
     | 
    
         
            -
                  
         
     | 
| 
      
 123 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'name' when calling RunnerApi.groups_name_jobs_id_start_post" if name.nil?
         
     | 
| 
       120 
124 
     | 
    
         
             
                  # verify the required parameter 'id' is set
         
     | 
| 
       121 
     | 
    
         
            -
                  fail "Missing the required parameter 'id' when calling groups_name_jobs_id_start_post" if id.nil?
         
     | 
| 
       122 
     | 
    
         
            -
                  
         
     | 
| 
      
 125 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'id' when calling RunnerApi.groups_name_jobs_id_start_post" if id.nil?
         
     | 
| 
       123 
126 
     | 
    
         
             
                  # verify the required parameter 'body' is set
         
     | 
| 
       124 
     | 
    
         
            -
                  fail "Missing the required parameter 'body' when calling groups_name_jobs_id_start_post" if body.nil?
         
     | 
| 
       125 
     | 
    
         
            -
                  
         
     | 
| 
      
 127 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'body' when calling RunnerApi.groups_name_jobs_id_start_post" if body.nil?
         
     | 
| 
       126 
128 
     | 
    
         
             
                  # resource path
         
     | 
| 
       127 
129 
     | 
    
         
             
                  local_var_path = "/groups/{name}/jobs/{id}/start".sub('{format}','json').sub('{' + 'name' + '}', name.to_s).sub('{' + 'id' + '}', id.to_s)
         
     | 
| 
       128 
130 
     | 
    
         | 
| 
         @@ -133,19 +135,18 @@ module IronTitan 
     | 
|
| 
       133 
135 
     | 
    
         
             
                  header_params = {}
         
     | 
| 
       134 
136 
     | 
    
         | 
| 
       135 
137 
     | 
    
         
             
                  # HTTP header 'Accept' (if needed)
         
     | 
| 
       136 
     | 
    
         
            -
                   
     | 
| 
       137 
     | 
    
         
            -
                   
     | 
| 
      
 138 
     | 
    
         
            +
                  local_header_accept = ['application/json']
         
     | 
| 
      
 139 
     | 
    
         
            +
                  local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
         
     | 
| 
       138 
140 
     | 
    
         | 
| 
       139 
141 
     | 
    
         
             
                  # HTTP header 'Content-Type'
         
     | 
| 
       140 
     | 
    
         
            -
                   
     | 
| 
       141 
     | 
    
         
            -
                  header_params['Content-Type'] = @api_client.select_header_content_type( 
     | 
| 
      
 142 
     | 
    
         
            +
                  local_header_content_type = ['application/json']
         
     | 
| 
      
 143 
     | 
    
         
            +
                  header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
         
     | 
| 
       142 
144 
     | 
    
         | 
| 
       143 
145 
     | 
    
         
             
                  # form parameters
         
     | 
| 
       144 
146 
     | 
    
         
             
                  form_params = {}
         
     | 
| 
       145 
147 
     | 
    
         | 
| 
       146 
148 
     | 
    
         
             
                  # http body (model)
         
     | 
| 
       147 
149 
     | 
    
         
             
                  post_body = @api_client.object_to_http_body(body)
         
     | 
| 
       148 
     | 
    
         
            -
                  
         
     | 
| 
       149 
150 
     | 
    
         
             
                  auth_names = []
         
     | 
| 
       150 
151 
     | 
    
         
             
                  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
         
     | 
| 
       151 
152 
     | 
    
         
             
                    :header_params => header_params,
         
     | 
| 
         @@ -168,12 +169,12 @@ module IronTitan 
     | 
|
| 
       168 
169 
     | 
    
         
             
                # @param [Hash] opts the optional parameters
         
     | 
| 
       169 
170 
     | 
    
         
             
                # @return [JobWrapper]
         
     | 
| 
       170 
171 
     | 
    
         
             
                def groups_name_jobs_id_success_post(name, id, body, opts = {})
         
     | 
| 
       171 
     | 
    
         
            -
                  data,  
     | 
| 
      
 172 
     | 
    
         
            +
                  data, _status_code, _headers = groups_name_jobs_id_success_post_with_http_info(name, id, body, opts)
         
     | 
| 
       172 
173 
     | 
    
         
             
                  return data
         
     | 
| 
       173 
174 
     | 
    
         
             
                end
         
     | 
| 
       174 
175 
     | 
    
         | 
| 
       175 
176 
     | 
    
         
             
                # Mark job as succeeded.
         
     | 
| 
       176 
     | 
    
         
            -
                # Job status is changed to succeeded if it was in a valid state before. Job's  
     | 
| 
      
 177 
     | 
    
         
            +
                # Job status is changed to succeeded if it was in a valid state before. Job's `completed_at` time is initialized.
         
     | 
| 
       177 
178 
     | 
    
         
             
                # @param name Name of group for this set of jobs.
         
     | 
| 
       178 
179 
     | 
    
         
             
                # @param id Job id
         
     | 
| 
       179 
180 
     | 
    
         
             
                # @param body 
         
     | 
| 
         @@ -181,18 +182,14 @@ module IronTitan 
     | 
|
| 
       181 
182 
     | 
    
         
             
                # @return [Array<(JobWrapper, Fixnum, Hash)>] JobWrapper data, response status code and response headers
         
     | 
| 
       182 
183 
     | 
    
         
             
                def groups_name_jobs_id_success_post_with_http_info(name, id, body, opts = {})
         
     | 
| 
       183 
184 
     | 
    
         
             
                  if @api_client.config.debugging
         
     | 
| 
       184 
     | 
    
         
            -
                    @api_client.config.logger.debug "Calling API: RunnerApi 
     | 
| 
      
 185 
     | 
    
         
            +
                    @api_client.config.logger.debug "Calling API: RunnerApi.groups_name_jobs_id_success_post ..."
         
     | 
| 
       185 
186 
     | 
    
         
             
                  end
         
     | 
| 
       186 
     | 
    
         
            -
                  
         
     | 
| 
       187 
187 
     | 
    
         
             
                  # verify the required parameter 'name' is set
         
     | 
| 
       188 
     | 
    
         
            -
                  fail "Missing the required parameter 'name' when calling groups_name_jobs_id_success_post" if name.nil?
         
     | 
| 
       189 
     | 
    
         
            -
                  
         
     | 
| 
      
 188 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'name' when calling RunnerApi.groups_name_jobs_id_success_post" if name.nil?
         
     | 
| 
       190 
189 
     | 
    
         
             
                  # verify the required parameter 'id' is set
         
     | 
| 
       191 
     | 
    
         
            -
                  fail "Missing the required parameter 'id' when calling groups_name_jobs_id_success_post" if id.nil?
         
     | 
| 
       192 
     | 
    
         
            -
                  
         
     | 
| 
      
 190 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'id' when calling RunnerApi.groups_name_jobs_id_success_post" if id.nil?
         
     | 
| 
       193 
191 
     | 
    
         
             
                  # verify the required parameter 'body' is set
         
     | 
| 
       194 
     | 
    
         
            -
                  fail "Missing the required parameter 'body' when calling groups_name_jobs_id_success_post" if body.nil?
         
     | 
| 
       195 
     | 
    
         
            -
                  
         
     | 
| 
      
 192 
     | 
    
         
            +
                  fail ArgumentError, "Missing the required parameter 'body' when calling RunnerApi.groups_name_jobs_id_success_post" if body.nil?
         
     | 
| 
       196 
193 
     | 
    
         
             
                  # resource path
         
     | 
| 
       197 
194 
     | 
    
         
             
                  local_var_path = "/groups/{name}/jobs/{id}/success".sub('{format}','json').sub('{' + 'name' + '}', name.to_s).sub('{' + 'id' + '}', id.to_s)
         
     | 
| 
       198 
195 
     | 
    
         | 
| 
         @@ -203,19 +200,18 @@ module IronTitan 
     | 
|
| 
       203 
200 
     | 
    
         
             
                  header_params = {}
         
     | 
| 
       204 
201 
     | 
    
         | 
| 
       205 
202 
     | 
    
         
             
                  # HTTP header 'Accept' (if needed)
         
     | 
| 
       206 
     | 
    
         
            -
                   
     | 
| 
       207 
     | 
    
         
            -
                   
     | 
| 
      
 203 
     | 
    
         
            +
                  local_header_accept = ['application/json']
         
     | 
| 
      
 204 
     | 
    
         
            +
                  local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
         
     | 
| 
       208 
205 
     | 
    
         | 
| 
       209 
206 
     | 
    
         
             
                  # HTTP header 'Content-Type'
         
     | 
| 
       210 
     | 
    
         
            -
                   
     | 
| 
       211 
     | 
    
         
            -
                  header_params['Content-Type'] = @api_client.select_header_content_type( 
     | 
| 
      
 207 
     | 
    
         
            +
                  local_header_content_type = ['application/json']
         
     | 
| 
      
 208 
     | 
    
         
            +
                  header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
         
     | 
| 
       212 
209 
     | 
    
         | 
| 
       213 
210 
     | 
    
         
             
                  # form parameters
         
     | 
| 
       214 
211 
     | 
    
         
             
                  form_params = {}
         
     | 
| 
       215 
212 
     | 
    
         | 
| 
       216 
213 
     | 
    
         
             
                  # http body (model)
         
     | 
| 
       217 
214 
     | 
    
         
             
                  post_body = @api_client.object_to_http_body(body)
         
     | 
| 
       218 
     | 
    
         
            -
                  
         
     | 
| 
       219 
215 
     | 
    
         
             
                  auth_names = []
         
     | 
| 
       220 
216 
     | 
    
         
             
                  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
         
     | 
| 
       221 
217 
     | 
    
         
             
                    :header_params => header_params,
         
     | 
| 
         @@ -3,10 +3,21 @@ Titan API 
     | 
|
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            The ultimate, language agnostic, container based job processing framework.
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            OpenAPI spec version: 0. 
     | 
| 
      
 6 
     | 
    
         
            +
            OpenAPI spec version: 0.4.0
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            Generated by: https://github.com/swagger-api/swagger-codegen.git
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
      
 10 
     | 
    
         
            +
            Licensed under the Apache License, Version 2.0 (the "License");
         
     | 
| 
      
 11 
     | 
    
         
            +
            you may not use this file except in compliance with the License.
         
     | 
| 
      
 12 
     | 
    
         
            +
            You may obtain a copy of the License at
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            Unless required by applicable law or agreed to in writing, software
         
     | 
| 
      
 17 
     | 
    
         
            +
            distributed under the License is distributed on an "AS IS" BASIS,
         
     | 
| 
      
 18 
     | 
    
         
            +
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         
     | 
| 
      
 19 
     | 
    
         
            +
            See the License for the specific language governing permissions and
         
     | 
| 
      
 20 
     | 
    
         
            +
            limitations under the License.
         
     | 
| 
       10 
21 
     | 
    
         | 
| 
       11 
22 
     | 
    
         
             
            =end
         
     | 
| 
       12 
23 
     | 
    
         | 
| 
         @@ -27,6 +38,8 @@ module IronTitan 
     | 
|
| 
       27 
38 
     | 
    
         
             
                # @return [Hash]
         
     | 
| 
       28 
39 
     | 
    
         
             
                attr_accessor :default_headers
         
     | 
| 
       29 
40 
     | 
    
         | 
| 
      
 41 
     | 
    
         
            +
                # Initializes the ApiClient
         
     | 
| 
      
 42 
     | 
    
         
            +
                # @option config [Configuration] Configuraiton for initializing the object, default to Configuration.default
         
     | 
| 
       30 
43 
     | 
    
         
             
                def initialize(config = Configuration.default)
         
     | 
| 
       31 
44 
     | 
    
         
             
                  @config = config
         
     | 
| 
       32 
45 
     | 
    
         
             
                  @user_agent = "Swagger-Codegen/#{VERSION}/ruby"
         
     | 
| 
         @@ -67,6 +80,15 @@ module IronTitan 
     | 
|
| 
       67 
80 
     | 
    
         
             
                  return data, response.code, response.headers
         
     | 
| 
       68 
81 
     | 
    
         
             
                end
         
     | 
| 
       69 
82 
     | 
    
         | 
| 
      
 83 
     | 
    
         
            +
                # Builds the HTTP request
         
     | 
| 
      
 84 
     | 
    
         
            +
                #
         
     | 
| 
      
 85 
     | 
    
         
            +
                # @param [String] http_method HTTP method/verb (e.g. POST)
         
     | 
| 
      
 86 
     | 
    
         
            +
                # @param [String] path URL path (e.g. /account/new)
         
     | 
| 
      
 87 
     | 
    
         
            +
                # @option opts [Hash] :header_params Header parameters
         
     | 
| 
      
 88 
     | 
    
         
            +
                # @option opts [Hash] :query_params Query parameters
         
     | 
| 
      
 89 
     | 
    
         
            +
                # @option opts [Hash] :form_params Query parameters
         
     | 
| 
      
 90 
     | 
    
         
            +
                # @option opts [Object] :body HTTP body (JSON/XML)
         
     | 
| 
      
 91 
     | 
    
         
            +
                # @return [Typhoeus::Request] A Typhoeus Request
         
     | 
| 
       70 
92 
     | 
    
         
             
                def build_request(http_method, path, opts = {})
         
     | 
| 
       71 
93 
     | 
    
         
             
                  url = build_request_url(path)
         
     | 
| 
       72 
94 
     | 
    
         
             
                  http_method = http_method.to_sym.downcase
         
     | 
| 
         @@ -75,7 +97,6 @@ module IronTitan 
     | 
|
| 
       75 
97 
     | 
    
         
             
                  query_params = opts[:query_params] || {}
         
     | 
| 
       76 
98 
     | 
    
         
             
                  form_params = opts[:form_params] || {}
         
     | 
| 
       77 
99 
     | 
    
         | 
| 
       78 
     | 
    
         
            -
                  
         
     | 
| 
       79 
100 
     | 
    
         | 
| 
       80 
101 
     | 
    
         
             
                  req_opts = {
         
     | 
| 
       81 
102 
     | 
    
         
             
                    :method => http_method,
         
     | 
| 
         @@ -106,12 +127,15 @@ module IronTitan 
     | 
|
| 
       106 
127 
     | 
    
         
             
                #   application/json
         
     | 
| 
       107 
128 
     | 
    
         
             
                #   application/json; charset=UTF8
         
     | 
| 
       108 
129 
     | 
    
         
             
                #   APPLICATION/JSON
         
     | 
| 
      
 130 
     | 
    
         
            +
                # @param [String] mime MIME
         
     | 
| 
      
 131 
     | 
    
         
            +
                # @return [Boolean] True if the MIME is applicaton/json
         
     | 
| 
       109 
132 
     | 
    
         
             
                def json_mime?(mime)
         
     | 
| 
       110 
     | 
    
         
            -
                    
     | 
| 
      
 133 
     | 
    
         
            +
                   !(mime =~ /\Aapplication\/json(;.*)?\z/i).nil?
         
     | 
| 
       111 
134 
     | 
    
         
             
                end
         
     | 
| 
       112 
135 
     | 
    
         | 
| 
       113 
136 
     | 
    
         
             
                # Deserialize the response to the given return type.
         
     | 
| 
       114 
137 
     | 
    
         
             
                #
         
     | 
| 
      
 138 
     | 
    
         
            +
                # @param [Response] response HTTP response
         
     | 
| 
       115 
139 
     | 
    
         
             
                # @param [String] return_type some examples: "User", "Array[User]", "Hash[String,Integer]"
         
     | 
| 
       116 
140 
     | 
    
         
             
                def deserialize(response, return_type)
         
     | 
| 
       117 
141 
     | 
    
         
             
                  body = response.body
         
     | 
| 
         @@ -142,6 +166,9 @@ module IronTitan 
     | 
|
| 
       142 
166 
     | 
    
         
             
                end
         
     | 
| 
       143 
167 
     | 
    
         | 
| 
       144 
168 
     | 
    
         
             
                # Convert data to the given return type.
         
     | 
| 
      
 169 
     | 
    
         
            +
                # @param [Object] data Data to be converted
         
     | 
| 
      
 170 
     | 
    
         
            +
                # @param [String] return_type Return type
         
     | 
| 
      
 171 
     | 
    
         
            +
                # @return [Mixed] Data in a particular type
         
     | 
| 
       145 
172 
     | 
    
         
             
                def convert_to_type(data, return_type)
         
     | 
| 
       146 
173 
     | 
    
         
             
                  return nil if data.nil?
         
     | 
| 
       147 
174 
     | 
    
         
             
                  case return_type
         
     | 
| 
         @@ -214,7 +241,7 @@ module IronTitan 
     | 
|
| 
       214 
241 
     | 
    
         
             
                # @param [String] filename the filename to be sanitized
         
     | 
| 
       215 
242 
     | 
    
         
             
                # @return [String] the sanitized filename
         
     | 
| 
       216 
243 
     | 
    
         
             
                def sanitize_filename(filename)
         
     | 
| 
       217 
     | 
    
         
            -
                  filename.gsub 
     | 
| 
      
 244 
     | 
    
         
            +
                  filename.gsub(/.*[\/\\]/, '')
         
     | 
| 
       218 
245 
     | 
    
         
             
                end
         
     | 
| 
       219 
246 
     | 
    
         | 
| 
       220 
247 
     | 
    
         
             
                def build_request_url(path)
         
     | 
| 
         @@ -223,6 +250,12 @@ module IronTitan 
     | 
|
| 
       223 
250 
     | 
    
         
             
                  URI.encode(@config.base_url + path)
         
     | 
| 
       224 
251 
     | 
    
         
             
                end
         
     | 
| 
       225 
252 
     | 
    
         | 
| 
      
 253 
     | 
    
         
            +
                # Builds the HTTP request body
         
     | 
| 
      
 254 
     | 
    
         
            +
                #
         
     | 
| 
      
 255 
     | 
    
         
            +
                # @param [Hash] header_params Header parameters
         
     | 
| 
      
 256 
     | 
    
         
            +
                # @param [Hash] form_params Query parameters
         
     | 
| 
      
 257 
     | 
    
         
            +
                # @param [Object] body HTTP body (JSON/XML)
         
     | 
| 
      
 258 
     | 
    
         
            +
                # @return [String] HTTP body data in the form of string
         
     | 
| 
       226 
259 
     | 
    
         
             
                def build_request_body(header_params, form_params, body)
         
     | 
| 
       227 
260 
     | 
    
         
             
                  # http form
         
     | 
| 
       228 
261 
     | 
    
         
             
                  if header_params['Content-Type'] == 'application/x-www-form-urlencoded' ||
         
     | 
| 
         @@ -246,6 +279,10 @@ module IronTitan 
     | 
|
| 
       246 
279 
     | 
    
         
             
                end
         
     | 
| 
       247 
280 
     | 
    
         | 
| 
       248 
281 
     | 
    
         
             
                # Update hearder and query params based on authentication settings.
         
     | 
| 
      
 282 
     | 
    
         
            +
                #
         
     | 
| 
      
 283 
     | 
    
         
            +
                # @param [Hash] header_params Header parameters
         
     | 
| 
      
 284 
     | 
    
         
            +
                # @param [Hash] form_params Query parameters
         
     | 
| 
      
 285 
     | 
    
         
            +
                # @param [String] auth_names Authentication scheme name
         
     | 
| 
       249 
286 
     | 
    
         
             
                def update_params_for_auth!(header_params, query_params, auth_names)
         
     | 
| 
       250 
287 
     | 
    
         
             
                  Array(auth_names).each do |auth_name|
         
     | 
| 
       251 
288 
     | 
    
         
             
                    auth_setting = @config.auth_settings[auth_name]
         
     | 
| 
         @@ -258,6 +295,9 @@ module IronTitan 
     | 
|
| 
       258 
295 
     | 
    
         
             
                  end
         
     | 
| 
       259 
296 
     | 
    
         
             
                end
         
     | 
| 
       260 
297 
     | 
    
         | 
| 
      
 298 
     | 
    
         
            +
                # Sets user agent in HTTP header
         
     | 
| 
      
 299 
     | 
    
         
            +
                #
         
     | 
| 
      
 300 
     | 
    
         
            +
                # @param [String] user_agent User agent (e.g. swagger-codegen/ruby/1.0.0)
         
     | 
| 
       261 
301 
     | 
    
         
             
                def user_agent=(user_agent)
         
     | 
| 
       262 
302 
     | 
    
         
             
                  @user_agent = user_agent
         
     | 
| 
       263 
303 
     | 
    
         
             
                  @default_headers['User-Agent'] = @user_agent
         
     | 
| 
         @@ -289,13 +329,13 @@ module IronTitan 
     | 
|
| 
       289 
329 
     | 
    
         
             
                # @return [String] JSON string representation of the object
         
     | 
| 
       290 
330 
     | 
    
         
             
                def object_to_http_body(model)
         
     | 
| 
       291 
331 
     | 
    
         
             
                  return model if model.nil? || model.is_a?(String)
         
     | 
| 
       292 
     | 
    
         
            -
                   
     | 
| 
      
 332 
     | 
    
         
            +
                  local_body = nil
         
     | 
| 
       293 
333 
     | 
    
         
             
                  if model.is_a?(Array)
         
     | 
| 
       294 
     | 
    
         
            -
                     
     | 
| 
      
 334 
     | 
    
         
            +
                    local_body = model.map{|m| object_to_hash(m) }
         
     | 
| 
       295 
335 
     | 
    
         
             
                  else
         
     | 
| 
       296 
     | 
    
         
            -
                     
     | 
| 
      
 336 
     | 
    
         
            +
                    local_body = object_to_hash(model)
         
     | 
| 
       297 
337 
     | 
    
         
             
                  end
         
     | 
| 
       298 
     | 
    
         
            -
                   
     | 
| 
      
 338 
     | 
    
         
            +
                  local_body.to_json
         
     | 
| 
       299 
339 
     | 
    
         
             
                end
         
     | 
| 
       300 
340 
     | 
    
         | 
| 
       301 
341 
     | 
    
         
             
                # Convert object(non-array) to hash.
         
     | 
    
        data/lib/iron_titan/api_error.rb
    CHANGED
    
    | 
         @@ -3,10 +3,21 @@ Titan API 
     | 
|
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            The ultimate, language agnostic, container based job processing framework.
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            OpenAPI spec version: 0. 
     | 
| 
      
 6 
     | 
    
         
            +
            OpenAPI spec version: 0.4.0
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            Generated by: https://github.com/swagger-api/swagger-codegen.git
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
      
 10 
     | 
    
         
            +
            Licensed under the Apache License, Version 2.0 (the "License");
         
     | 
| 
      
 11 
     | 
    
         
            +
            you may not use this file except in compliance with the License.
         
     | 
| 
      
 12 
     | 
    
         
            +
            You may obtain a copy of the License at
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            Unless required by applicable law or agreed to in writing, software
         
     | 
| 
      
 17 
     | 
    
         
            +
            distributed under the License is distributed on an "AS IS" BASIS,
         
     | 
| 
      
 18 
     | 
    
         
            +
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         
     | 
| 
      
 19 
     | 
    
         
            +
            See the License for the specific language governing permissions and
         
     | 
| 
      
 20 
     | 
    
         
            +
            limitations under the License.
         
     | 
| 
       10 
21 
     | 
    
         | 
| 
       11 
22 
     | 
    
         
             
            =end
         
     | 
| 
       12 
23 
     | 
    
         | 
| 
         @@ -1,3 +1,26 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            =begin
         
     | 
| 
      
 2 
     | 
    
         
            +
            Titan API
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            The ultimate, language agnostic, container based job processing framework.
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            OpenAPI spec version: 0.4.0
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            Generated by: https://github.com/swagger-api/swagger-codegen.git
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            Licensed under the Apache License, Version 2.0 (the "License");
         
     | 
| 
      
 11 
     | 
    
         
            +
            you may not use this file except in compliance with the License.
         
     | 
| 
      
 12 
     | 
    
         
            +
            You may obtain a copy of the License at
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            Unless required by applicable law or agreed to in writing, software
         
     | 
| 
      
 17 
     | 
    
         
            +
            distributed under the License is distributed on an "AS IS" BASIS,
         
     | 
| 
      
 18 
     | 
    
         
            +
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         
     | 
| 
      
 19 
     | 
    
         
            +
            See the License for the specific language governing permissions and
         
     | 
| 
      
 20 
     | 
    
         
            +
            limitations under the License.
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            =end
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
       1 
24 
     | 
    
         
             
            require 'uri'
         
     | 
| 
       2 
25 
     | 
    
         | 
| 
       3 
26 
     | 
    
         
             
            module IronTitan
         
     | 
| 
         @@ -3,16 +3,28 @@ Titan API 
     | 
|
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            The ultimate, language agnostic, container based job processing framework.
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
            OpenAPI spec version: 0. 
     | 
| 
      
 6 
     | 
    
         
            +
            OpenAPI spec version: 0.4.0
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            Generated by: https://github.com/swagger-api/swagger-codegen.git
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
      
 10 
     | 
    
         
            +
            Licensed under the Apache License, Version 2.0 (the "License");
         
     | 
| 
      
 11 
     | 
    
         
            +
            you may not use this file except in compliance with the License.
         
     | 
| 
      
 12 
     | 
    
         
            +
            You may obtain a copy of the License at
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            http://www.apache.org/licenses/LICENSE-2.0
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            Unless required by applicable law or agreed to in writing, software
         
     | 
| 
      
 17 
     | 
    
         
            +
            distributed under the License is distributed on an "AS IS" BASIS,
         
     | 
| 
      
 18 
     | 
    
         
            +
            WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         
     | 
| 
      
 19 
     | 
    
         
            +
            See the License for the specific language governing permissions and
         
     | 
| 
      
 20 
     | 
    
         
            +
            limitations under the License.
         
     | 
| 
       10 
21 
     | 
    
         | 
| 
       11 
22 
     | 
    
         
             
            =end
         
     | 
| 
       12 
23 
     | 
    
         | 
| 
       13 
24 
     | 
    
         
             
            require 'date'
         
     | 
| 
       14 
25 
     | 
    
         | 
| 
       15 
26 
     | 
    
         
             
            module IronTitan
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
       16 
28 
     | 
    
         
             
              class Complete
         
     | 
| 
       17 
29 
     | 
    
         
             
                # Time when job was completed. Always in UTC.
         
     | 
| 
       18 
30 
     | 
    
         
             
                attr_accessor :completed_at
         
     | 
| 
         @@ -23,16 +35,13 @@ module IronTitan 
     | 
|
| 
       23 
35 
     | 
    
         
             
                # Error message, if status=error. Only used by the /error endpoint.
         
     | 
| 
       24 
36 
     | 
    
         
             
                attr_accessor :error
         
     | 
| 
       25 
37 
     | 
    
         | 
| 
      
 38 
     | 
    
         
            +
             
     | 
| 
       26 
39 
     | 
    
         
             
                # Attribute mapping from ruby-style variable name to JSON key.
         
     | 
| 
       27 
40 
     | 
    
         
             
                def self.attribute_map
         
     | 
| 
       28 
41 
     | 
    
         
             
                  {
         
     | 
| 
       29 
     | 
    
         
            -
                    
         
     | 
| 
       30 
42 
     | 
    
         
             
                    :'completed_at' => :'completed_at',
         
     | 
| 
       31 
     | 
    
         
            -
                    
         
     | 
| 
       32 
43 
     | 
    
         
             
                    :'reason' => :'reason',
         
     | 
| 
       33 
     | 
    
         
            -
                    
         
     | 
| 
       34 
44 
     | 
    
         
             
                    :'error' => :'error'
         
     | 
| 
       35 
     | 
    
         
            -
                    
         
     | 
| 
       36 
45 
     | 
    
         
             
                  }
         
     | 
| 
       37 
46 
     | 
    
         
             
                end
         
     | 
| 
       38 
47 
     | 
    
         | 
| 
         @@ -42,32 +51,46 @@ module IronTitan 
     | 
|
| 
       42 
51 
     | 
    
         
             
                    :'completed_at' => :'DateTime',
         
     | 
| 
       43 
52 
     | 
    
         
             
                    :'reason' => :'String',
         
     | 
| 
       44 
53 
     | 
    
         
             
                    :'error' => :'String'
         
     | 
| 
       45 
     | 
    
         
            -
                    
         
     | 
| 
       46 
54 
     | 
    
         
             
                  }
         
     | 
| 
       47 
55 
     | 
    
         
             
                end
         
     | 
| 
       48 
56 
     | 
    
         | 
| 
      
 57 
     | 
    
         
            +
                # Initializes the object
         
     | 
| 
      
 58 
     | 
    
         
            +
                # @param [Hash] attributes Model attributes in the form of hash
         
     | 
| 
       49 
59 
     | 
    
         
             
                def initialize(attributes = {})
         
     | 
| 
       50 
60 
     | 
    
         
             
                  return unless attributes.is_a?(Hash)
         
     | 
| 
       51 
61 
     | 
    
         | 
| 
       52 
62 
     | 
    
         
             
                  # convert string to symbol for hash key
         
     | 
| 
       53 
     | 
    
         
            -
                  attributes = attributes. 
     | 
| 
      
 63 
     | 
    
         
            +
                  attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
         
     | 
| 
       54 
64 
     | 
    
         | 
| 
       55 
     | 
    
         
            -
                  
         
     | 
| 
       56 
     | 
    
         
            -
                  if attributes[:'completed_at']
         
     | 
| 
      
 65 
     | 
    
         
            +
                  if attributes.has_key?(:'completed_at')
         
     | 
| 
       57 
66 
     | 
    
         
             
                    self.completed_at = attributes[:'completed_at']
         
     | 
| 
       58 
67 
     | 
    
         
             
                  end
         
     | 
| 
       59 
     | 
    
         
            -
             
     | 
| 
       60 
     | 
    
         
            -
                  if attributes 
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
                  if attributes.has_key?(:'reason')
         
     | 
| 
       61 
70 
     | 
    
         
             
                    self.reason = attributes[:'reason']
         
     | 
| 
       62 
71 
     | 
    
         
             
                  end
         
     | 
| 
       63 
     | 
    
         
            -
             
     | 
| 
       64 
     | 
    
         
            -
                  if attributes 
     | 
| 
      
 72 
     | 
    
         
            +
             
     | 
| 
      
 73 
     | 
    
         
            +
                  if attributes.has_key?(:'error')
         
     | 
| 
       65 
74 
     | 
    
         
             
                    self.error = attributes[:'error']
         
     | 
| 
       66 
75 
     | 
    
         
             
                  end
         
     | 
| 
       67 
     | 
    
         
            -
             
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
       68 
77 
     | 
    
         
             
                end
         
     | 
| 
       69 
78 
     | 
    
         | 
| 
       70 
     | 
    
         
            -
                #  
     | 
| 
      
 79 
     | 
    
         
            +
                # Show invalid properties with the reasons. Usually used together with valid?
         
     | 
| 
      
 80 
     | 
    
         
            +
                # @return Array for valid properies with the reasons
         
     | 
| 
      
 81 
     | 
    
         
            +
                def list_invalid_properties
         
     | 
| 
      
 82 
     | 
    
         
            +
                  invalid_properties = Array.new
         
     | 
| 
      
 83 
     | 
    
         
            +
                  return invalid_properties
         
     | 
| 
      
 84 
     | 
    
         
            +
                end
         
     | 
| 
      
 85 
     | 
    
         
            +
             
     | 
| 
      
 86 
     | 
    
         
            +
                # Check to see if the all the properties in the model are valid
         
     | 
| 
      
 87 
     | 
    
         
            +
                # @return true if the model is valid
         
     | 
| 
      
 88 
     | 
    
         
            +
                def valid?
         
     | 
| 
      
 89 
     | 
    
         
            +
                  return true
         
     | 
| 
      
 90 
     | 
    
         
            +
                end
         
     | 
| 
      
 91 
     | 
    
         
            +
             
     | 
| 
      
 92 
     | 
    
         
            +
                # Checks equality by comparing each attribute.
         
     | 
| 
      
 93 
     | 
    
         
            +
                # @param [Object] Object to be compared
         
     | 
| 
       71 
94 
     | 
    
         
             
                def ==(o)
         
     | 
| 
       72 
95 
     | 
    
         
             
                  return true if self.equal?(o)
         
     | 
| 
       73 
96 
     | 
    
         
             
                  self.class == o.class &&
         
     | 
| 
         @@ -77,35 +100,41 @@ module IronTitan 
     | 
|
| 
       77 
100 
     | 
    
         
             
                end
         
     | 
| 
       78 
101 
     | 
    
         | 
| 
       79 
102 
     | 
    
         
             
                # @see the `==` method
         
     | 
| 
      
 103 
     | 
    
         
            +
                # @param [Object] Object to be compared
         
     | 
| 
       80 
104 
     | 
    
         
             
                def eql?(o)
         
     | 
| 
       81 
105 
     | 
    
         
             
                  self == o
         
     | 
| 
       82 
106 
     | 
    
         
             
                end
         
     | 
| 
       83 
107 
     | 
    
         | 
| 
       84 
     | 
    
         
            -
                #  
     | 
| 
      
 108 
     | 
    
         
            +
                # Calculates hash code according to all attributes.
         
     | 
| 
      
 109 
     | 
    
         
            +
                # @return [Fixnum] Hash code
         
     | 
| 
       85 
110 
     | 
    
         
             
                def hash
         
     | 
| 
       86 
111 
     | 
    
         
             
                  [completed_at, reason, error].hash
         
     | 
| 
       87 
112 
     | 
    
         
             
                end
         
     | 
| 
       88 
113 
     | 
    
         | 
| 
       89 
     | 
    
         
            -
                #  
     | 
| 
      
 114 
     | 
    
         
            +
                # Builds the object from hash
         
     | 
| 
      
 115 
     | 
    
         
            +
                # @param [Hash] attributes Model attributes in the form of hash
         
     | 
| 
      
 116 
     | 
    
         
            +
                # @return [Object] Returns the model itself
         
     | 
| 
       90 
117 
     | 
    
         
             
                def build_from_hash(attributes)
         
     | 
| 
       91 
118 
     | 
    
         
             
                  return nil unless attributes.is_a?(Hash)
         
     | 
| 
       92 
119 
     | 
    
         
             
                  self.class.swagger_types.each_pair do |key, type|
         
     | 
| 
       93 
120 
     | 
    
         
             
                    if type =~ /^Array<(.*)>/i
         
     | 
| 
      
 121 
     | 
    
         
            +
                      # check to ensure the input is an array given that the the attribute
         
     | 
| 
      
 122 
     | 
    
         
            +
                      # is documented as an array but the input is not
         
     | 
| 
       94 
123 
     | 
    
         
             
                      if attributes[self.class.attribute_map[key]].is_a?(Array)
         
     | 
| 
       95 
124 
     | 
    
         
             
                        self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
         
     | 
| 
       96 
     | 
    
         
            -
                      else
         
     | 
| 
       97 
     | 
    
         
            -
                        #TODO show warning in debug mode
         
     | 
| 
       98 
125 
     | 
    
         
             
                      end
         
     | 
| 
       99 
126 
     | 
    
         
             
                    elsif !attributes[self.class.attribute_map[key]].nil?
         
     | 
| 
       100 
127 
     | 
    
         
             
                      self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
         
     | 
| 
       101 
     | 
    
         
            -
                    else
         
     | 
| 
       102 
     | 
    
         
            -
                      # data not found in attributes(hash), not an issue as the data can be optional
         
     | 
| 
       103 
     | 
    
         
            -
                    end
         
     | 
| 
      
 128 
     | 
    
         
            +
                    end # or else data not found in attributes(hash), not an issue as the data can be optional
         
     | 
| 
       104 
129 
     | 
    
         
             
                  end
         
     | 
| 
       105 
130 
     | 
    
         | 
| 
       106 
131 
     | 
    
         
             
                  self
         
     | 
| 
       107 
132 
     | 
    
         
             
                end
         
     | 
| 
       108 
133 
     | 
    
         | 
| 
      
 134 
     | 
    
         
            +
                # Deserializes the data based on type
         
     | 
| 
      
 135 
     | 
    
         
            +
                # @param string type Data type
         
     | 
| 
      
 136 
     | 
    
         
            +
                # @param string value Value to be deserialized
         
     | 
| 
      
 137 
     | 
    
         
            +
                # @return [Object] Deserialized data
         
     | 
| 
       109 
138 
     | 
    
         
             
                def _deserialize(type, value)
         
     | 
| 
       110 
139 
     | 
    
         
             
                  case type.to_sym
         
     | 
| 
       111 
140 
     | 
    
         
             
                  when :DateTime
         
     | 
| 
         @@ -139,21 +168,25 @@ module IronTitan 
     | 
|
| 
       139 
168 
     | 
    
         
             
                      end
         
     | 
| 
       140 
169 
     | 
    
         
             
                    end
         
     | 
| 
       141 
170 
     | 
    
         
             
                  else # model
         
     | 
| 
       142 
     | 
    
         
            -
                     
     | 
| 
       143 
     | 
    
         
            -
                     
     | 
| 
      
 171 
     | 
    
         
            +
                    temp_model = IronTitan.const_get(type).new
         
     | 
| 
      
 172 
     | 
    
         
            +
                    temp_model.build_from_hash(value)
         
     | 
| 
       144 
173 
     | 
    
         
             
                  end
         
     | 
| 
       145 
174 
     | 
    
         
             
                end
         
     | 
| 
       146 
175 
     | 
    
         | 
| 
      
 176 
     | 
    
         
            +
                # Returns the string representation of the object
         
     | 
| 
      
 177 
     | 
    
         
            +
                # @return [String] String presentation of the object
         
     | 
| 
       147 
178 
     | 
    
         
             
                def to_s
         
     | 
| 
       148 
179 
     | 
    
         
             
                  to_hash.to_s
         
     | 
| 
       149 
180 
     | 
    
         
             
                end
         
     | 
| 
       150 
181 
     | 
    
         | 
| 
       151 
     | 
    
         
            -
                # to_body is an alias to  
     | 
| 
      
 182 
     | 
    
         
            +
                # to_body is an alias to to_hash (backward compatibility)
         
     | 
| 
      
 183 
     | 
    
         
            +
                # @return [Hash] Returns the object in the form of hash
         
     | 
| 
       152 
184 
     | 
    
         
             
                def to_body
         
     | 
| 
       153 
185 
     | 
    
         
             
                  to_hash
         
     | 
| 
       154 
186 
     | 
    
         
             
                end
         
     | 
| 
       155 
187 
     | 
    
         | 
| 
       156 
     | 
    
         
            -
                #  
     | 
| 
      
 188 
     | 
    
         
            +
                # Returns the object in the form of hash
         
     | 
| 
      
 189 
     | 
    
         
            +
                # @return [Hash] Returns the object in the form of hash
         
     | 
| 
       157 
190 
     | 
    
         
             
                def to_hash
         
     | 
| 
       158 
191 
     | 
    
         
             
                  hash = {}
         
     | 
| 
       159 
192 
     | 
    
         
             
                  self.class.attribute_map.each_pair do |attr, param|
         
     | 
| 
         @@ -164,8 +197,10 @@ module IronTitan 
     | 
|
| 
       164 
197 
     | 
    
         
             
                  hash
         
     | 
| 
       165 
198 
     | 
    
         
             
                end
         
     | 
| 
       166 
199 
     | 
    
         | 
| 
       167 
     | 
    
         
            -
                #  
     | 
| 
      
 200 
     | 
    
         
            +
                # Outputs non-array value in the form of hash
         
     | 
| 
       168 
201 
     | 
    
         
             
                # For object, use to_hash. Otherwise, just return the value
         
     | 
| 
      
 202 
     | 
    
         
            +
                # @param [Object] value Any valid value
         
     | 
| 
      
 203 
     | 
    
         
            +
                # @return [Hash] Returns the value in the form of hash
         
     | 
| 
       169 
204 
     | 
    
         
             
                def _to_hash(value)
         
     | 
| 
       170 
205 
     | 
    
         
             
                  if value.is_a?(Array)
         
     | 
| 
       171 
206 
     | 
    
         
             
                    value.compact.map{ |v| _to_hash(v) }
         
     | 
| 
         @@ -181,4 +216,5 @@ module IronTitan 
     | 
|
| 
       181 
216 
     | 
    
         
             
                end
         
     | 
| 
       182 
217 
     | 
    
         | 
| 
       183 
218 
     | 
    
         
             
              end
         
     | 
| 
      
 219 
     | 
    
         
            +
             
     | 
| 
       184 
220 
     | 
    
         
             
            end
         
     |