Sha256: 7b9982bbea2aeb90345bea0f90463bf10383a76ffd44e5c4cec1e8e90febb541

Contents?: true

Size: 765 Bytes

Versions: 4

Compression:

Stored size: 765 Bytes

Contents

# frozen_string_literal: true
module MasterDataTool
  class MasterDataFile
    attr_reader :table_name, :path, :override_identifier

    def initialize(table_name, path, override_identifier)
      @table_name = table_name
      @path = path
      @override_identifier = override_identifier
      freeze
    end

    class << self
      def build(path, override_identifier)
        table_name = MasterDataTool.resolve_table_name(path, override_identifier)
        new(table_name, path, override_identifier)
      end
    end

    def basename
      @path.basename
    end

    def ==(other)
      other.class === self &&
        other.hash == hash
    end

    alias eql? ==

    def hash
      [@table_name, @path, @override_identifier].join.hash
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
master_data_tool-0.19.1 lib/master_data_tool/master_data_file.rb
master_data_tool-0.19.0 lib/master_data_tool/master_data_file.rb
master_data_tool-0.18.0 lib/master_data_tool/master_data_file.rb
master_data_tool-0.17.0 lib/master_data_tool/master_data_file.rb