module LinkedRails::Controller

Public Instance Methods

_render_with_renderer_json(record, options) click to toggle source
# File lib/linked_rails/active_response/controller.rb, line 16
def _render_with_renderer_json(record, options)
  self.content_type = Mime[:json]

  return record if record.is_a?(String)
  return record.to_json if record.is_a?(Hash)

  serializer_opts = RDF::Serializers::Renderers.transform_opts(
    options,
    serializer_params
  )

  serializer = RDF::Serializers.serializer_for(record)&.new(record, serializer_opts)
  return record.to_json unless serializer

  Oj.dump(serializer.serializable_hash, mode: :compat)
end
serializer_params() click to toggle source
# File lib/linked_rails/active_response/controller.rb, line 33
def serializer_params
  {}
end

Private Instance Methods

controller_class() click to toggle source
# File lib/linked_rails/controller.rb, line 28
def controller_class
  self.class.controller_class
end
set_manifest_header() click to toggle source
# File lib/linked_rails/controller.rb, line 32
def set_manifest_header
  response.headers['Manifest'] = LinkedRails.iri(path: '/manifest.json')
end