Class: Aspera::Transfer::Result

Inherits:
Object
  • Object
show all
Defined in:
lib/aspera/transfer/result.rb

Overview

Typed result of a transfer operation. Replaces the ad-hoc Array polymorphism previously returned by agents.

Agents return one of the three concrete sub-classes:

Transfer::Result::Success   all sessions completed successfully
Transfer::Result::Error     at least one session failed
Transfer::Result::Async     transfer  to a daemon; not yet complete

Defined Under Namespace

Classes: Async, Error, Success

Class Method Summary collapse

Class Method Details

.async(job_id:, status: 'running') ⇒ Object



68
69
70
# File 'lib/aspera/transfer/result.rb', line 68

def async(job_id:, status: 'running')
  Async.new(job_id: job_id, status: status)
end

.error(exception) ⇒ Object



64
65
66
# File 'lib/aspera/transfer/result.rb', line 64

def error(exception)
  Error.new(exception)
end

.successObject



60
61
62
# File 'lib/aspera/transfer/result.rb', line 60

def success
  Success.new
end