Module: Replidog::Model

Defined in:
lib/replidog/model.rb

Defined Under Namespace

Modules: ClassMethodsWithReplidogSupport, InstanceMethodsWithReplidogSupport

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(base) ⇒ Object



5
6
7
8
9
10
11
12
13
# File 'lib/replidog/model.rb', line 5

def self.extended(base)
  base.class_attribute :proxy_handler, instance_writer: false
  base.proxy_handler = Replidog::ProxyHandler.new
  base.prepend InstanceMethodsWithReplidogSupport

  class << base
    prepend ClassMethodsWithReplidogSupport
  end
end

Instance Method Details

#replicated?Boolean

Returns:

  • (Boolean)


66
67
68
# File 'lib/replidog/model.rb', line 66

def replicated?
  connection_config[:replications].present?
end

#using(connection_name, &block) ⇒ Object



70
71
72
73
74
75
76
77
78
79
80
# File 'lib/replidog/model.rb', line 70

def using(connection_name, &block)
  if replicated?
    _using(connection_name, &block)
  else
    if block_given?
      yield
    else
      self
    end
  end
end