Sha256: 380c1875dd3cf01f35fba57c351cecdc244d97d919edeaa2f382954ed72421c3
Contents?: true
Size: 1.05 KB
Versions: 7
Compression:
Stored size: 1.05 KB
Contents
module Hyrax class VersioningService # Make a version and record the version committer # @param [ActiveFedora::File] content # @param [User, String] user def self.create(content, user = nil) content.create_version record_committer(content, user) if user end # @param [ActiveFedora::File] file def self.latest_version_of(file) file.versions.last end # Record the version committer of the last version # @param [ActiveFedora::File] content # @param [User, String] user_key def self.record_committer(content, user_key) user_key = user_key.user_key if user_key.respond_to?(:user_key) version = latest_version_of(content) return if version.nil? VersionCommitter.create(version_id: version.uri, committer_login: user_key) end # @param [ActiveFedora::File | Hyrax::FileMetadata] content def self.versioned_file_id(file) versions = file.versions.all return ActiveFedora::Base.uri_to_id(versions.last.uri) if versions.present? file.id end end end
Version data entries
7 entries across 7 versions & 1 rubygems