Module: Ossert::Reference

Defined in:
lib/ossert/reference.rb

Defined Under Namespace

Classes: Base, ClassA, ClassB, ClassC, ClassD, ClassE

Class Method Summary collapse

Class Method Details

.prepare_projects!Object



4
5
6
7
8
# File 'lib/ossert/reference.rb', line 4

def prepare_projects!
  references = %w(A B C D E).map { |e| Kernel.const_get("Ossert::Reference::Class#{e}").new }
  references.each(&:prepare_projects!)
  references
end

.process_references(references) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/ossert/reference.rb', line 11

def process_references(references)
  require './config/sidekiq'
  Array(references).each do |reference|
    reference.project_names.each_with_object(reference.class.name.demodulize) do |project_name, klass|
      if Ossert::Project.exist?(project_name)
        project = Ossert::Project.load_by_name(project_name)
        project.reference = klass
        project.dump
      else
        Ossert::Workers::Fetch.perform_async(project_name, klass)
      end
    end
  end
end