module Ecoportal module API class V1 class JobStatus attr_reader :id, :progress def initialize(id, complete, errored, progress) @id = id @complete = complete @errored = errored @progress = progress end def complete?(total = nil) return @complete if total.nil? progress >= total end def errored? @errored end def to_s msg = complete? ? "Completed" : "In progress" msg = "Errored" if errored? msg << " with #{progress} done." msg end end end end end