def get_import_task(self): params = {'InstanceId': config.get_worker_id()} task = self.conn.get_object('GetInstanceImportTask', params, InstanceImportTask, verb='POST') if not task or not task.task_id: return None else: return task
def put_import_task_status(self, task_id=None, status=None, volume_id=None, bytes_converted=None): if task_id == None or status == None: raise RuntimeError("Invalid parameters") params = {'InstanceId': config.get_worker_id(), 'ImportTaskId': task_id, 'Status': status} if bytes_converted != None: params['BytesConverted'] = bytes_converted if volume_id != None: params['VolumeId'] = volume_id resp = self.conn.make_request('PutInstanceImportTaskStatus', params, path='/', verb='POST') if resp.status != 200: raise httplib.HTTPException(resp.status, resp.reason, resp.read()) root = objectify.XML(resp.read()) return 'true' == root.cancelled.text if hasattr(root, 'cancelled') else False