Module: Rack::Cargo::ReferenceResolver
- Defined in:
- lib/rack/cargo/reference_resolver.rb
Constant Summary collapse
- REFERENCING_ENABLED =
[REQUEST_PATH, REQUEST_BODY].freeze
- PLACEHOLDER_START =
"{{\s*"- PLACEHOLDER_END =
"\s*}}"- PLACEHOLDER_PATTERN =
/#{PLACEHOLDER_START}(.*?)#{PLACEHOLDER_END}/
Class Method Summary collapse
Class Method Details
.call(request, state) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/rack/cargo/reference_resolver.rb', line 13 def call(request, state) REFERENCING_ENABLED.each do |attribute_key| next if request.fetch(attribute_key).nil? element, converted_to_json = get_json_element(request, attribute_key) placeholders = find_placeholders(element) element = replace_placeholders(element, placeholders, state) element = JSON.parse(element) if converted_to_json request.store(attribute_key, element) end end |