datacite/volpino

View on GitHub
app/graphql/elasticsearch_loader.rb

Summary

Maintainability
A
0 mins
Test Coverage
# frozen_string_literal: true

class ElasticsearchLoader < GraphQL::Batch::Loader
  def initialize(model)
    @model = model
  end

  def perform(ids)
    @model.find_by(id: ids).results.each { |record| fulfill(record.uid, record) }
    ids.each { |id| fulfill(id, nil) unless fulfilled?(id) }
  end
end