Module: Consul::Power::DynamicAccess::InstanceMethods

Included in:
Consul::Power
Defined in:
lib/consul/power/dynamic_access.rb

Instance Method Summary collapse

Instance Method Details

#for_model(*args) ⇒ Object



27
28
29
# File 'lib/consul/power/dynamic_access.rb', line 27

def for_model(*args)
  send(name_for_model(*args))
end

#for_record(*args) ⇒ Object



7
8
9
# File 'lib/consul/power/dynamic_access.rb', line 7

def for_record(*args)
  send(name_for_record(*args))
end

#include_model!(*args) ⇒ Object



35
36
37
# File 'lib/consul/power/dynamic_access.rb', line 35

def include_model!(*args)
  include!(name_for_model(*args))
end

#include_model?(*args) ⇒ Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/consul/power/dynamic_access.rb', line 31

def include_model?(*args)
  include?(name_for_model(*args))
end

#include_record!(*args) ⇒ Object



16
17
18
19
# File 'lib/consul/power/dynamic_access.rb', line 16

def include_record!(*args)
  adjective, record = Util.adjective_and_argument(*args)
  include!(name_for_record(*args), record)
end

#include_record?(*args) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
14
# File 'lib/consul/power/dynamic_access.rb', line 11

def include_record?(*args)
  adjective, record = Util.adjective_and_argument(*args)
  include?(name_for_record(*args), record)
end

#name_for_model(*args) ⇒ Object



21
22
23
24
25
# File 'lib/consul/power/dynamic_access.rb', line 21

def name_for_model(*args)
  adjective, model_class = Util.adjective_and_argument(*args)
  collection_name = model_class.name.underscore.gsub('/', '_').pluralize
  [adjective, collection_name].select(&:present?).join('_')
end

#name_for_record(*args) ⇒ Object



39
40
41
42
# File 'lib/consul/power/dynamic_access.rb', line 39

def name_for_record(*args)
  adjective, record = Util.adjective_and_argument(*args)
  name_for_model(adjective, record.class)
end