lib/barometer/data/sun.rb in attack-barometer-0.3.2 vs lib/barometer/data/sun.rb in attack-barometer-0.5.0
- old
+ new
@@ -2,34 +2,22 @@
#
# A simple Sun class
#
# Used to store sunrise and sunset information
#
- class Sun
+ class Data::Sun
+ attr_reader :rise, :set
+
def initialize(rise=nil, set=nil)
- raise ArgumentError unless (rise.is_a?(Time) || rise.nil?)
- raise ArgumentError unless (set.is_a?(Time) || set.nil?)
- @rise_utc = rise
- @set_utc = set
+ raise ArgumentError unless (rise.is_a?(Data::LocalTime) || rise.nil?)
+ raise ArgumentError unless (set.is_a?(Data::LocalTime) || set.nil?)
+ @rise = rise
+ @set = set
end
- def rise; @rise_utc; end
- def set; @set_utc; end
-
- # useful for incrementing the sunrise and sunset times by exactly
- # N days ... used when using the same sun data for other days
- def self.add_days!(sun, n=1)
- raise ArgumentError unless sun.is_a?(Barometer::Sun)
- raise ArgumentError unless n.is_a?(Fixnum)
- seconds_to_add = 60*60*24*n
- rise_utc = sun.rise + seconds_to_add
- set_utc = sun.set + seconds_to_add
- self.new(rise_utc, set_utc)
- end
-
def nil?
- (@rise_utc || @set_utc) ? false : true
+ (@rise || @set) ? false : true
end
end
end
\ No newline at end of file