Class: Perus::Server::Config
- Inherits:
-
Sequel::Model
- Object
- Sequel::Model
- Perus::Server::Config
- Defined in:
- lib/perus/server/models/config.rb
Instance Method Summary collapse
- #after_destroy ⇒ Object
- #can_delete? ⇒ Boolean
- #in_maintenance? ⇒ Boolean
- #largest_order ⇒ Object
- #metric_hashes ⇒ Object
- #validate ⇒ Object
Instance Method Details
#after_destroy ⇒ Object
45 46 47 48 |
# File 'lib/perus/server/models/config.rb', line 45 def after_destroy super config_metrics.each(&:destroy) end |
#can_delete? ⇒ Boolean
19 20 21 |
# File 'lib/perus/server/models/config.rb', line 19 def can_delete? systems_dataset.empty? end |
#in_maintenance? ⇒ Boolean
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/perus/server/models/config.rb', line 23 def in_maintenance? return false unless maintenance.is_a?(String) from, to = maintenance.split('-') now = Time.now from_hour, from_min = from.split(':').map(&:to_i) return false if now.hour < from_hour return false if now.hour == from_hour && now.min < from_min to_hour, to_min = to.split(':').map(&:to_i) return false if now.hour > to_hour return false if now.hour == to_hour && now.min > to_min true end |
#largest_order ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/perus/server/models/config.rb', line 11 def largest_order if config_metrics.empty? 0 else config_metrics.last.order end end |
#metric_hashes ⇒ Object
7 8 9 |
# File 'lib/perus/server/models/config.rb', line 7 def metric_hashes config_metrics.collect(&:config_hash) end |
#validate ⇒ Object
39 40 41 42 43 |
# File 'lib/perus/server/models/config.rb', line 39 def validate super validates_presence :name validates_unique :name end |