Sha256: 8f64e56f067ce983113c25e169584bff9fb0a1deac97c63d9568b73c9cbb0ef7

Contents?: true

Size: 585 Bytes

Versions: 7

Compression:

Stored size: 585 Bytes

Contents

module Adhoq
  class Execution < ActiveRecord::Base
    include Adhoq::TimeBasedOrders

    belongs_to :query
    has_one    :report, dependent: :destroy, inverse_of: :execution

    delegate   :supported_formats, to: Adhoq::Reporter

    def generate_report!
      build_report.generate!
      update_attributes(status: :success)
    rescue
      update_attributes(status: :failure)
    end

    def name
      [query.name, created_at.strftime('%Y%m%d-%H%M%S'), report_format].join('.')
    end

    def success?
      report.try(:available?) || status == "success"
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
adhoq-0.3.0 app/models/adhoq/execution.rb
adhoq-0.2.0 app/models/adhoq/execution.rb
adhoq-0.1.2 app/models/adhoq/execution.rb
adhoq-0.1.1 app/models/adhoq/execution.rb
adhoq-0.1.0 app/models/adhoq/execution.rb
adhoq-0.0.7 app/models/adhoq/execution.rb
adhoq-0.0.6 app/models/adhoq/execution.rb