Class: Fog::Attributes::Time
- Defined in:
- lib/fog/core/attributes/time.rb
Overview
Fog Time Attribute
This class handles Time attributes from the providers, converting values to Time objects
Instance Attribute Summary
Attributes inherited from Default
#aliases, #as, #default, #model, #name, #squash
Instance Method Summary collapse
Methods inherited from Default
#create_aliases, #create_getter, #create_mask, #initialize, #set_defaults
Constructor Details
This class inherits a constructor from Fog::Attributes::Default
Instance Method Details
#create_setter ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/fog/core/attributes/time.rb', line 8 def create_setter model.class_eval <<-EOS, __FILE__, __LINE__ def #{name}=(new_#{name}) attributes[:#{name}] = if new_#{name}.nil? || new_#{name} == "" || new_#{name}.is_a?(::Time) new_#{name} elsif ::String === new_#{name} ::Time.parse(new_#{name}) elsif new_#{name}.respond_to?(:to_time) new_#{name}.to_time else ::Time.parse(new_#{name}) end end EOS end |