Sha256: 21d1d5130ebc170757fb4a8d5c6187f40fff7027ba38dba667cd99ff1bf5a920

Contents?: true

Size: 1.79 KB

Versions: 17

Compression:

Stored size: 1.79 KB

Contents

# frozen_string_literal: true

require "zizia/engine"

##
# Bulk object import for Samvera.
#
# == Importers
#
# {Importer} is the core class for importing records using {Zizia}.
# Importers accept a {Parser} and (optionally) a custom {RecordImporter}, and
# process each record in the given parser (see: {Parser#records}).
#
# @example Importing in bulk from a file
#   parser = Zizia::Parser.for(file: File.new('path/to/file.ext'))
#
#   Zizia::Importer.new(parser: parser).import if parser.validate
#
# @example A basic configuration
#   Zizia.config do |config|
#   end
#
module Zizia
  ##
  # @yield the current configuration
  # @yieldparam config [Zizia::Configuration]
  #
  # @return [Zizia::Configuration] the current configuration
  def config
    yield @configuration if block_given?
    @configuration
  end
  module_function :config

  require 'zizia/version'
  require 'zizia/metadata_mapper'
  require 'zizia/hash_mapper'
  require 'zizia/hyrax/hyrax_basic_metadata_mapper'
  require 'zizia/hyrax/based_near_attributes'
  require 'zizia/importer'
  require 'zizia/record_importer'
  require 'zizia/hyrax/hyrax_record_importer'
  require 'zizia/input_record'
  require 'zizia/validator'
  require 'zizia/validators/csv_format_validator'
  require 'zizia/validators/title_validator'
  require 'zizia/parser'
  require 'zizia/csv_template'

  ##
  # Module-wide options for `Zizia`.
  class Configuration
    attr_accessor :metadata_mapper_class

    def initialize
      self.metadata_mapper_class = Zizia::HyraxBasicMetadataMapper
    end
  end

  @configuration = Configuration.new

  require 'zizia/parsers/csv_parser'
  require 'zizia/hyrax/metadata_only_stack'
  require 'zizia/hyrax/hyrax_metadata_only_updater'
  require 'zizia/hyrax/hyrax_default_updater'
  require 'zizia/hyrax/hyrax_delete_files_updater'
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
zizia-6.0.1 lib/zizia.rb
zizia-6.0.0 lib/zizia.rb
zizia-5.5.0 lib/zizia.rb
zizia-5.4.0 lib/zizia.rb
zizia-5.3.0 lib/zizia.rb
zizia-5.2.0 lib/zizia.rb
zizia-5.1.0 lib/zizia.rb
zizia-5.0.1 lib/zizia.rb
zizia-5.0.0 lib/zizia.rb
zizia-4.6.0.alpha.01 lib/zizia.rb
zizia-4.5.4.alpha.01 lib/zizia.rb
zizia-4.5.3.alpha.01 lib/zizia.rb
zizia-4.5.2.alpha.01 lib/zizia.rb
zizia-4.5.1.alpha.01 lib/zizia.rb
zizia-4.4.1.alpha.01 lib/zizia.rb
zizia-4.4.0.alpha.01 lib/zizia.rb
zizia-4.3.1.alpha.01 lib/zizia.rb