Module: JactiveSupport::JavaExtensions::Date::Conversions::ClassMethods
- Defined in:
- lib/jactive_support/java_ext/date/conversions.rb
Instance Method Summary collapse
- #format(format = :i18n, locale = nil) ⇒ Object
- #formatter(format = :i18n, locale = nil) ⇒ Object
- #pattern_formatter(pattern, timezone = nil, locale = nil) ⇒ Object
Instance Method Details
#format(format = :i18n, locale = nil) ⇒ Object
35 36 37 38 39 40 |
# File 'lib/jactive_support/java_ext/date/conversions.rb', line 35 def format(format=:i18n, locale=nil) return format(:default, locale) unless formatter = self::DATE_FORMATS[format] locale = locale.to_locale formatter = formatter.respond_to?(:call) ? (formatter.arity==2 ? formatter.call(self, locale) : formatter.call(self)) : self.pattern_formatter(formatter) formatter.to_pattern end |
#formatter(format = :i18n, locale = nil) ⇒ Object
42 43 44 45 46 |
# File 'lib/jactive_support/java_ext/date/conversions.rb', line 42 def formatter(format=:i18n, locale=nil) return formatter(:default, locale) unless formatter = self::DATE_FORMATS[format] locale = locale.to_locale formatter.respond_to?(:call) ? (formatter.arity==2 ? formatter.call(self, locale) : formatter.call(self)) : self.pattern_formatter(formatter) end |
#pattern_formatter(pattern, timezone = nil, locale = nil) ⇒ Object
48 49 50 51 52 53 |
# File 'lib/jactive_support/java_ext/date/conversions.rb', line 48 def pattern_formatter(pattern, timezone=nil, locale=nil) formatter = ::Java::JavaText::SimpleDateFormat.new(pattern, locale.to_locale) timezone = ::Java::JavaUtil::TimeZone.getTimeZone(timezone) unless timezone.nil? || timezone.is_a?(::Java::JavaUtil::TimeZone) formatter.setTimeZone(timezone) if timezone formatter end |