Class: Operation

Inherits:
Object
  • Object
show all
Includes:
Deferrable
Defined in:
lib/operation/core.rb,
lib/operation/version.rb,
lib/operation/progress.rb,
lib/operation/deferrable.rb

Defined Under Namespace

Modules: Deferrable, VERSION Classes: Progress

Instance Attribute Summary collapse

Attributes included from Deferrable

#arguments

Instance Method Summary collapse

Methods included from Deferrable

#fail!, #failables, #failed?, #on_failure, #on_progress, #on_success, #progress, #progressables, #set_status, #status, #succeed!, #succeeded?, #successables

Constructor Details

#initialize(options = {}) ⇒ Operation

Returns a new instance of Operation.



5
6
7
# File 'lib/operation/core.rb', line 5

def initialize(options = {})
  @options = options
end

Instance Attribute Details

#codeObject (readonly)

Returns the value of attribute code.



3
4
5
# File 'lib/operation/core.rb', line 3

def code
  @code
end

#metadataObject (readonly)

Returns the value of attribute metadata.



3
4
5
# File 'lib/operation/core.rb', line 3

def 
  @metadata
end

Instance Method Details

#failure?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/operation/core.rb', line 13

def failure?
  !success?
end

#metaObject



33
34
35
36
37
38
39
# File 'lib/operation/core.rb', line 33

def meta
  if defined? Hashie::Mash
    metamash
  else
    
  end
end

#metamashObject



41
42
43
44
45
46
47
48
49
# File 'lib/operation/core.rb', line 41

def metamash
  if .respond_to? :each_pair
    Hashie::Mash.new 
  elsif 
    
  else
    Hashie::Mash.new
  end
end

#objectObject

Convenience Wrapper



23
24
25
26
27
# File 'lib/operation/core.rb', line 23

def object
  meta[:object] || meta['object'] || meta.object
rescue
  nil
end

#success?Boolean

Returns:

  • (Boolean)


9
10
11
# File 'lib/operation/core.rb', line 9

def success?
  [true, 'true', 1, '1'].include? options[:success]
end