Class: OpenehrRails::QueriesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/openehr_rails/queries_controller.rb

Overview

openEHR REST API QUERY resource (base URL: /v1/query/aql). Thin wrapper over OpenehrRails::Aql.execute (see lib/openehr_rails/aql/): validate -> build Dataset from the RM graph -> execute -> RESULT_SET JSON.

Instance Method Summary collapse

Instance Method Details

#executeObject

GET /v1/query/aql?q=...&query_parameters="min":100 POST /v1/query/aql { "q": "...", "query_parameters": ... }



20
21
22
23
24
25
26
# File 'app/controllers/openehr_rails/queries_controller.rb', line 20

def execute
  q = query_text
  return render json: { error: 'q is required' }, status: :bad_request if q.blank?

  result = OpenehrRails::Aql.execute(q, params: query_parameters)
  render json: { q: q }.merge(JSON.parse(result.to_json))
end

#showObject

GET /query -- HTML console. Executes via fetch against POST /v1/query/aql below, so there is exactly one execution path.



16
# File 'app/controllers/openehr_rails/queries_controller.rb', line 16

def show; end