Module: ActiveRecordConnectionTz::Adapters::Shared::ClassMethods

Defined in:
lib/active_record_connection_tz/adapters/shared.rb

Instance Method Summary collapse

Instance Method Details

#extended_type_map(emulate_booleans:, default_timezone: nil, connection_tz: nil) ⇒ Object

: (emulate_booleans: bool, ?default_timezone: untyped, ?connection_tz: Hash[untyped, untyped]?) -> ActiveRecord::Type::TypeMap



27
28
29
30
31
32
33
34
35
# File 'lib/active_record_connection_tz/adapters/shared.rb', line 27

def extended_type_map(emulate_booleans:, default_timezone: nil, connection_tz: nil)
  super(default_timezone: default_timezone, emulate_booleans: emulate_booleans).tap do |map|
    next unless connection_tz

    settings = ConnectionSettings.new(connection_tz)
    time_zone = settings.time_zone || raise(ConfigurationError, 'connection_tz time_zone must be present')
    Types.register_mysql_temporal_types!(map, time_zone: time_zone)
  end
end