Class: Aenea::TimeWindow::Type
- Inherits:
-
ActiveModel::Type::ImmutableString
- Object
- ActiveModel::Type::ImmutableString
- Aenea::TimeWindow::Type
- Defined in:
- lib/aenea/time_window.rb
Instance Method Summary collapse
Instance Method Details
#cast(value) ⇒ Object
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/aenea/time_window.rb', line 63 def cast(value) if value.blank? nil elsif value.is_a?(String) begin TimeWindow.parse(value) rescue StandardError => e ApplicationRecord.logger.warn "error casting #{value.inspect}: #{e.}" ensure nil end elsif value.is_a?(TimeWindow) value else raise "invalid value type #{value.class.name}: #{value.inspect}" end end |
#serialize(value) ⇒ Object
81 82 83 |
# File 'lib/aenea/time_window.rb', line 81 def serialize(value) value.blank? ? nil : value.to_s end |