Sha256: fdfc6e81cb08e2c038bfdf1ca9a1c30d27de24c6fb5b97a3c0113d474b38a107

Contents?: true

Size: 581 Bytes

Versions: 13

Compression:

Stored size: 581 Bytes

Contents

# frozen_string_literal: true

# Reads in JSON records for traject
module TrajectPlus
  class JsonReader
    # @param input_stream [File]
    # @param settings [Traject::Indexer::Settings]
    def initialize(input_stream, settings)
      @settings = Traject::Indexer::Settings.new settings
      @input_stream = input_stream
      @json = JSON.parse(input_stream.read)
    end

    attr_reader :json

    def each(&block)
      return to_enum(:each) unless block_given?

      if json.is_a? Array
        json.each(&block)
      else
        yield json
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
traject_plus-2.0.1 lib/traject_plus/json_reader.rb
traject_plus-1.3.0 lib/traject_plus/json_reader.rb
traject_plus-2.0.0 lib/traject_plus/json_reader.rb
traject_plus-1.2.2 lib/traject_plus/json_reader.rb
traject_plus-1.2.1 lib/traject_plus/json_reader.rb
traject_plus-1.2.0 lib/traject_plus/json_reader.rb
traject_plus-1.1.1 lib/traject_plus/json_reader.rb
traject_plus-1.1.0 lib/traject_plus/json_reader.rb
traject_plus-1.0.0 lib/traject_plus/json_reader.rb
traject_plus-0.1.0 lib/traject_plus/json_reader.rb
traject_plus-0.0.3 lib/traject_plus/json_reader.rb
traject_plus-0.0.2 lib/traject_plus/json_reader.rb
traject_plus-0.0.1 lib/traject_plus/json_reader.rb