Class: Tessa::MigrateAssetsJob::ProcessingState

Inherits:
Struct
  • Object
show all
Defined in:
lib/tessa/jobs/migrate_assets_job.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.initialize_from_models(models) ⇒ Object



150
151
152
153
154
155
156
157
# File 'lib/tessa/jobs/migrate_assets_job.rb', line 150

def self.initialize_from_models(models)
  new(
    models.map do |model|
      ModelProcessingState.initialize_from_model(model)
    end,
    0
  )
end

Instance Method Details

#countObject



167
168
169
# File 'lib/tessa/jobs/migrate_assets_job.rb', line 167

def count
  model_queue.sum { |m| m.field_queue.sum { |f| f.count - f.offset } }
end

#fully_processed?Boolean

Returns:

  • (Boolean)


163
164
165
# File 'lib/tessa/jobs/migrate_assets_job.rb', line 163

def fully_processed?
  model_queue.all?(&:fully_processed?)
end

#next_modelObject



159
160
161
# File 'lib/tessa/jobs/migrate_assets_job.rb', line 159

def next_model
  model_queue.detect { |i| !i.fully_processed? }
end