Sha256: 776bc9104a53bf38d9eda559e45b8f0a4016d11b46d5f707db15bae56d791721

Contents?: true

Size: 691 Bytes

Versions: 1

Compression:

Stored size: 691 Bytes

Contents

require 'active_fedora'
require 'active_model_serializers'
require_relative './persistence_base_serializer'
require_relative './exceptions'
module CommonRepositoryModel
  class PersistenceBase < ActiveFedora::Base
    include ActiveModel::SerializerSupport
    def active_model_serializer
      "#{self.class}Serializer".constantize
    end

    def self.find(*args,&block)
      super
    rescue RSolr::Error::Http => e
      raise CommonRepositoryModel::ObjectNotFoundError.new(
        "#{self}.find(#{args.inspect}) had a SOLR error.", e
      )
    rescue ActiveFedora::ObjectNotFoundError => e
      raise CommonRepositoryModel::ObjectNotFoundError.new(e.message, e)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
common_repository_model-0.1.0 lib/common_repository_model/persistence_base.rb