Sha256: 09ad84e50fb83aba54a03a744a5123ba80a3af0bfd3fe6eac59fde57024be7d6
Contents?: true
Size: 882 Bytes
Versions: 7
Compression:
Stored size: 882 Bytes
Contents
module Sufia module Noid extend ActiveSupport::Concern ## This overrides the default behavior, which is to ask Fedora for a pid # @see ActiveFedora::Sharding.assign_pid def assign_pid Sufia::IdService.mint end def noid Noid.noidify(id) end # Redefine this for more intuitive keys in Redis def to_param noid end class << self def noidify(identifier) String(identifier).split(":").last end # Create a pairtree like path for the given identifier def treeify(identifier) (identifier.scan(/..?/).first(4) + [identifier]).join('/') end def namespaceize(identifier) return identifier if identifier.include?(':') "#{namespace}:#{identifier}" end protected def namespace Sufia.config.id_namespace end end end end
Version data entries
7 entries across 7 versions & 2 rubygems