Module: Opencrx::Model::Map

Defined in:
lib/opencrx/model/map.rb

Class Method Summary collapse

Class Method Details

.model_to_opencrx_key(klass) ⇒ Object



15
16
17
# File 'lib/opencrx/model/map.rb', line 15

def model_to_opencrx_key(klass)
  "#{BASE_KEY}.#{demodulized_class_name(klass)}"
end

.model_to_opencrx_query(klass) ⇒ Object



19
20
21
# File 'lib/opencrx/model/map.rb', line 19

def model_to_opencrx_query(klass)
  model_to_opencrx_key(klass).gsub(/\./, ':')
end

.opencrx_key_to_model(key) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/opencrx/model/map.rb', line 7

def opencrx_key_to_model(key)
  unless key.match(/^#{BASE_KEY}\.(.*)$/)
    raise "Unexpected key #{key}"
  end
  target_class_name = $1
  ActiveSupport::Inflector.safe_constantize("::Opencrx::Model::#{target_class_name}")
end