class InstitutionImporter

  attr_accessor :items

  def initialize
    @names = []
    @learning_objects = []
  end

  def import
    @items.each do |learning_object|
      publisher = learning_object.get_metadata_value_of 'dc.creator'
      if publisher.nil?
        institution = Institution.where(name: "Banco Internacional de Objetos Educacionais").first_or_create
      elsif !institution_exists?(publisher)
        institution = Institution.new(name: publisher)
        institution.save
        @names << publisher
      end

      learning_object.publisher = institution
      learning_object.save
    end
  end

  private

  def institution_exists?(publisher)
    exists = @names.include? publisher
    unless exists
      exists = Institution.exists?(name: publisher)
      @names << publisher if exists
    end
    exists
  end
end