Sha256: c26ebf2d57c36b0a39dda65c7149a652a1176732b6386700bab9db43693381fa

Contents?: true

Size: 941 Bytes

Versions: 64

Compression:

Stored size: 941 Bytes

Contents

class Eco::API::UseCases::DefaultCases::UpsertCase < Eco::API::Common::Loaders::UseCase
  name "upsert"
  type :sync

  attr_reader :options

  def main(entries, people, session, options, usecase)
    @options = options
    micro    = session.micro
    creation = session.new_job("main", "create", :create, usecase)
    update   = session.new_job("main", "update", :update, usecase)
    supers   = session.new_job("post", "supers", :update, usecase, :core)

    micro.with_each(entries, people, options, append_created: append_created) do |entry, person|
      person.new? ? creation.add(person) : update.add(person)
      micro.set_core_with_supervisor(entry, person, people, supers, options)
      entry.set_details(person) unless options.dig(:exclude, :details)
      micro.set_account(entry, person, options)
    end
  end

  private

  def append_created
    options.dig(:people, :append_created)
  end

end

Version data entries

64 entries across 64 versions & 1 rubygems

Version Path
eco-helpers-2.0.57 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.56 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.55 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.54 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.53 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.52 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.51 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.50 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.49 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.48 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.47 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.46 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.45 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.44 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.43 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.42 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.41 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.40 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.39 lib/eco/api/usecases/default_cases/upsert_case.rb
eco-helpers-2.0.38 lib/eco/api/usecases/default_cases/upsert_case.rb