class ActiveRecord::Sharding::SequencerRepository

Attributes

base_class[R]

Public Class Methods

new(sequencer_config, base_class) click to toggle source
# File lib/active_record/sharding/sequencer_repository.rb, line 6
def initialize(sequencer_config, base_class)
  @base_class = base_class
  @sequencer = { sequencer_config.name => generate_model_for_shard(sequencer_config.connection_name) }
end

Public Instance Methods

fetch(connection_name) click to toggle source
# File lib/active_record/sharding/sequencer_repository.rb, line 11
def fetch(connection_name)
  @sequencer.fetch connection_name
end

Private Instance Methods

generate_class_name(connection_name) click to toggle source
# File lib/active_record/sharding/sequencer_repository.rb, line 17
def generate_class_name(connection_name)
  "SequencerFor#{connection_name.to_s.tr('-', '_').classify}"
end