Class: WEEL::ManipulateStructure

Inherits:
Object
  • Object
show all
Defined in:
lib/weel.rb

Overview

}}}

Instance Method Summary collapse

Constructor Details

#initialize(data, endpoints, status) ⇒ ManipulateStructure

{{{



81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/weel.rb', line 81

def initialize(data,endpoints,status)
  @__weel_data = data
  @__weel_data_orig = @__weel_data.transform_values{|val| Marshal.dump(val) }
  @__weel_endpoints = endpoints
  @__weel_endpoints_orig = @__weel_endpoints.transform_values{|val| Marshal.dump(val) }
  @__weel_status = status
  @changed_status = "#{status.id}-#{status.message}"
  @changed_data = []
  @touched_data = []
  @changed_endpoints = []
  @touched_endpoints = []
end

Instance Method Details

#changed_dataObject



94
95
96
97
98
99
100
101
# File 'lib/weel.rb', line 94

def changed_data
  @touched_data.each do |e|
    if Marshal.dump(@__weel_data[e]) != @__weel_data_orig[e]
      @changed_data << e
    end
  end
  @changed_data
end

#changed_endpointsObject



102
103
104
# File 'lib/weel.rb', line 102

def changed_endpoints
  @changed_endpoints
end

#changed_statusObject



114
115
116
# File 'lib/weel.rb', line 114

def changed_status
  @changed_status != "#{status.id}-#{status.message}"
end

#dataObject



118
119
120
# File 'lib/weel.rb', line 118

def data
  ManipulateHash.new(@__weel_data,@touched_data,@changed_data)
end

#endpointsObject



121
122
123
# File 'lib/weel.rb', line 121

def endpoints
  ManipulateHash.new(@__weel_endpoints,@touched_endpoints,@changed_endpoints)
end

#original_dataObject



106
107
108
# File 'lib/weel.rb', line 106

def original_data
  @__weel_data_orig.transform_values{|val| Marshal.load(val) }
end

#original_endpointsObject



110
111
112
# File 'lib/weel.rb', line 110

def original_endpoints
  @__weel_endpoints_orig.transform_values{|val| Marshal.load(val) }
end

#statusObject



124
125
126
# File 'lib/weel.rb', line 124

def status
  @__weel_status
end