range.rb
1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
class Kalibro::Range < Kalibro::Model
attr_accessor :id, :beginning, :end, :reading_id, :comments
def beginning=(value)
@beginning = value.to_f
@beginning = -1.0/0.0 if value == "-INF"
end
def beginning
if !@beginning.nil?
case @beginning.to_s
when "-Infinity": "-INF"
else @beginning
end
end
end
def end=(value)
@end = value.to_f
@end = 1.0/0.0 if value =~ /INF/
end
def end
if !@end.nil?
case @end.to_s
when "Infinity": "INF"
else @end
end
end
end
def grade=(value)
@grade = value.to_f
end
def mezuro_color
@color.nil? ? "e4ca2d" : @color.gsub(/^ff/, "")
end
def self.ranges_of( metric_configuration_id )
request(:ranges_of, {:metric_configuration_id => metric_configuration_id} )[:range].to_a.map { |range| new range }
end
def save( metric_configuration_id )
begin
self.id = self.class.request(:save_range, {:range => self.to_hash, :metric_configuration_id => metric_configuration_id})[:range_id]
true
rescue Exception => exception
add_error exception
false
end
end
end