Class: Protip::Transformers::DeprecatedTransformer::TimeWithZoneTransformer
- Inherits:
-
Object
- Object
- Protip::Transformers::DeprecatedTransformer::TimeWithZoneTransformer
- Includes:
- Protip::Transformer
- Defined in:
- lib/protip/transformers/deprecated_transformer.rb
Instance Method Summary collapse
Instance Method Details
#to_message(object, field) ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/protip/transformers/deprecated_transformer.rb', line 76 def (object, field) if !object.is_a?(::ActiveSupport::TimeWithZone) && (object.is_a?(Time) || object.is_a?(DateTime)) object = ::ActiveSupport::TimeWithZone.new(object.to_time.utc, ::ActiveSupport::TimeZone.new('UTC')) end raise ArgumentError.new("Expected ActiveSupport::TimeWithZone, received #{object.class.name}") unless object.is_a?(::ActiveSupport::TimeWithZone) field.subtype.msgclass.new( utc_timestamp: object.to_i, time_zone_name: object.time_zone.name, ) end |
#to_object(message, field) ⇒ Object
70 71 72 73 74 75 |
# File 'lib/protip/transformers/deprecated_transformer.rb', line 70 def to_object(, field) ActiveSupport::TimeWithZone.new( Time.at(.).utc, ActiveSupport::TimeZone.new(.time_zone_name) ) end |