Sha256: 4bcc2c0efc5e17c03a8a51a85d625c59b80e59bfa37fa284bc87d2e198050461
Contents?: true
Size: 1.16 KB
Versions: 2
Compression:
Stored size: 1.16 KB
Contents
# frozen_string_literal: true module Api class BaseError < StandardError attr_reader :code, :message def initialize(error) @code = error[:code] @message = error[:message] end def serialize [{code: @code, message: @message}] end def to_hash { success: false, errors: serialize } end end class ExecuteFailed < BaseError attr_reader :type, :file_path, :i18n_scope def initialize(error_detail) error = I18n.t error_detail, scope: %i[errors action] @code = error[:code] @message = error[:message] end end module Error # TODO: define custom error class (extends the BaseError) here. class Runtime < ExecuteFailed end class RecordNotFound < BaseError attr_reader :error def initialize(error) @error = error end def to_hash RecordNotFoundSerializer.new(error).serialize end end class ActionNotAllowed < BaseError attr_reader :error def initialize(error) @error = error end def to_hash ActionNotAllowedSerializer.new(error).serialize end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
n_base_rails-0.1.2 | lib/lib/api/error.rb |
n_base_rails-0.1.1 | lib/lib/api/error.rb |