class LinkedRails::RDFError

Attributes

error[RW]
iri[RW]
status[RW]

Public Class Methods

new(status, requested_url, original_error) click to toggle source
# File lib/linked_rails/rdf_error.rb, line 10
def initialize(status, requested_url, original_error)
  self.status = status
  self.error = original_error.is_a?(StandardError) ? original_error : original_error.new
  self.iri = ::RDF::URI(requested_url)
end
serializer_class() click to toggle source
# File lib/linked_rails/rdf_error.rb, line 32
def self.serializer_class
  RDFErrorSerializer
end

Public Instance Methods

graph() click to toggle source
# File lib/linked_rails/rdf_error.rb, line 16
def graph # rubocop:disable Metrics/AbcSize
  g = ::RDF::Graph.new
  g << [iri, Vocab.schema.name, title] if title
  g << [iri, Vocab.schema.text, message]
  g << [iri, Vocab.rdfv.type, rdf_type]
  g
end
rdf_type() click to toggle source
# File lib/linked_rails/rdf_error.rb, line 28
def rdf_type
  @rdf_type ||= Vocab.ontola["errors/#{error.class.name.demodulize}Error"]
end
title() click to toggle source
# File lib/linked_rails/rdf_error.rb, line 24
def title
  @title ||= I18n.t('linked_rails.status')[status] || I18n.t('linked_rails.status')[500]
end