class ActiveRecord::Sharding::Config
Attributes
cluster_configs[R]
sequencer_configs[R]
Public Class Methods
new()
click to toggle source
# File lib/active_record/sharding/config.rb, line 6 def initialize @cluster_configs = {} @sequencer_configs = {} end
Public Instance Methods
define_cluster(cluster_name, &block)
click to toggle source
# File lib/active_record/sharding/config.rb, line 11 def define_cluster(cluster_name, &block) cluster_config = ClusterConfig.new(cluster_name) cluster_config.instance_eval(&block) cluster_config.validate_config! @cluster_configs[cluster_name] = cluster_config end
define_sequencer(sequencer_name, &block)
click to toggle source
# File lib/active_record/sharding/config.rb, line 22 def define_sequencer(sequencer_name, &block) sequencer_config = SequencerConfig.new sequencer_name sequencer_config.instance_eval(&block) sequencer_config.validate_config! @sequencer_configs[sequencer_name] = sequencer_config end
fetch_cluster_config(cluster_name)
click to toggle source
# File lib/active_record/sharding/config.rb, line 18 def fetch_cluster_config(cluster_name) @cluster_configs.fetch cluster_name end
fetch_sequencer_config(sequencer_name)
click to toggle source
# File lib/active_record/sharding/config.rb, line 29 def fetch_sequencer_config(sequencer_name) @sequencer_configs.fetch sequencer_name end