Sha256: ea5df487cca8fde3d006484b7b81a711240a96cd82a80e075e38785d04cfcea3

Contents?: true

Size: 1.18 KB

Versions: 8

Compression:

Stored size: 1.18 KB

Contents

require 'falls_back_on'

require 'earth/model'

require 'earth/fuel/fuel_price'

# DEPRECATED but FuelPurchase still uses this
class FuelType < ActiveRecord::Base
  extend Earth::Model

  TABLE_STRUCTURE = <<-EOS

CREATE TABLE fuel_types
  (
     name                          CHARACTER VARYING(255) NOT NULL PRIMARY KEY,
     emission_factor               FLOAT,
     emission_factor_units         CHARACTER VARYING(255),
     density                       FLOAT,
     density_units                 CHARACTER VARYING(255),
     average_purchase_volume       FLOAT,
     average_purchase_volume_units CHARACTER VARYING(255)
  );

EOS

  self.primary_key = "name"
  
  has_many :prices, :class_name => 'FuelPrice', :foreign_key => 'name' # weird
  
  falls_back_on :emission_factor               => 1.0, #FIXME TODO put a real value here - also do we want to do emission factors in kg / kj?
                :emission_factor_units         => 'FIXME',
                :average_purchase_volume       => 100, #FIXME TODO put a real value here - also do we want to do volumes in kJ?
                :average_purchase_volume_units => 'FIXME'
  
  def price
    prices.average :price
  end
  
  warn_unless_size 36
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
earth-1.2.1 lib/earth/fuel/fuel_type.rb
earth-1.1.2 lib/earth/fuel/fuel_type.rb
earth-1.1.1 lib/earth/fuel/fuel_type.rb
earth-1.1.0 lib/earth/fuel/fuel_type.rb
earth-1.0.3 lib/earth/fuel/fuel_type.rb
earth-1.0.2 lib/earth/fuel/fuel_type.rb
earth-1.0.1 lib/earth/fuel/fuel_type.rb
earth-1.0.0 lib/earth/fuel/fuel_type.rb