Class: Wolfe::TimespanFromConfiguration
- Inherits:
-
Object
- Object
- Wolfe::TimespanFromConfiguration
- Defined in:
- lib/wolfe/timespan_from_configuration.rb
Constant Summary collapse
- SUPPORTED_TIME_UNITS =
%w(hours days months years).freeze
Instance Method Summary collapse
-
#initialize(config) ⇒ TimespanFromConfiguration
constructor
A new instance of TimespanFromConfiguration.
- #keep_one_backup? ⇒ Boolean
- #timespan ⇒ Object
Constructor Details
#initialize(config) ⇒ TimespanFromConfiguration
Returns a new instance of TimespanFromConfiguration.
5 6 7 8 9 10 11 12 13 |
# File 'lib/wolfe/timespan_from_configuration.rb', line 5 def initialize(config) config = split_duration_and_unit(config) @duration = Integer(config['duration']) @unit = config['unit'] @unit = (@unit.to_s << 's').to_sym unless @unit.to_s.end_with? 's' raise ArgumentError.new("Invalid time unit #{config['unit'].inspect}, expected one of #{SUPPORTED_TIME_UNITS.join(', ')}") unless supported_time_unit? end |
Instance Method Details
#keep_one_backup? ⇒ Boolean
19 20 21 |
# File 'lib/wolfe/timespan_from_configuration.rb', line 19 def keep_one_backup? @duration.to_i != 0 end |
#timespan ⇒ Object
15 16 17 |
# File 'lib/wolfe/timespan_from_configuration.rb', line 15 def timespan @duration.send(@unit) end |