Sha256: 408cbba8751a786f44748d4e53b82632f3d37e4b02a9d7a6437137c422047be9

Contents?: true

Size: 839 Bytes

Versions: 66

Compression:

Stored size: 839 Bytes

Contents

module CurationConcerns
  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
  end
end

Version data entries

66 entries across 66 versions & 2 rubygems

Version Path
curation_concerns-1.7.8 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.7 app/services/curation_concerns/versioning_service.rb
curation_concerns-2.0.0 app/services/curation_concerns/versioning_service.rb
curation_concerns-2.0.0.rc2 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.6 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.5 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.4 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.3 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.2 app/services/curation_concerns/versioning_service.rb
curation_concerns-2.0.0.rc1 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.1 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.0 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.7.0.beta1 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.6.3 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.6.2 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.6.1 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.6.0 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.5.0 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.4.0 app/services/curation_concerns/versioning_service.rb
curation_concerns-1.3.3 app/services/curation_concerns/versioning_service.rb