Sha256: 0791c59f34b45045bae5d2a540c2f9c8434441f4470fb6366785e58d5758dd11

Contents?: true

Size: 1.08 KB

Versions: 1

Compression:

Stored size: 1.08 KB

Contents

# frozen_string_literal: true

require 'csv'
require_relative "master_data_tool/version"
require_relative "master_data_tool/config"
require_relative "master_data_tool/master_data_status"
require_relative "master_data_tool/master_data_file"
require_relative "master_data_tool/master_data"
require_relative "master_data_tool/report"
require_relative "master_data_tool/dump/executor"
require_relative "master_data_tool/import"

module MasterDataTool
  class Error < StandardError; end
  class DryRunError < StandardError; end
  class VerifyFailed < StandardError; end
  class NotLoadedError < StandardError; end

  class << self
    def config
      @config ||= Config.new
    end

    def configure
      yield config
    end

    def resolve_table_name(csv_path, override_identifier)
      # 0001_table_nameのように投入順序を制御可能にする
      relative_path = config.master_data_dir
      relative_path = "#{relative_path}/#{override_identifier}" if override_identifier.present?
      csv_path.relative_path_from(relative_path).to_s.gsub(/^\d+_/, '').delete_suffix('.csv')
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
master_data_tool-0.16.0 lib/master_data_tool.rb