Sha256: 631fbc658da6123894acd3bdeca9a41418efd6709cb9cb1c96afc5d9b5095bb3

Contents?: true

Size: 695 Bytes

Versions: 20

Compression:

Stored size: 695 Bytes

Contents

module Harness
  class Measurement
    attr_accessor :id, :name, :source, :time, :value, :units

    def initialize(attributes = {})
      attributes.each_pair do |name, value|
        send "#{name}=", value
      end

      self.time ||= Time.now
    end

    def time=(value)
      if value.is_a? String
        @time = DateTime.parse value
      elsif value.is_a? Fixnum
        @time = Time.at value
      else
        @time = value
      end
    end

    def log
      Harness.log self
    end

    def attributes
      { 
        :id => id,
        :name => name,
        :source => source,
        :time => time,
        :units => units,
        :value => value
      }
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
harness-0.5.0 lib/harness/measurement.rb
harness-0.4.0 lib/harness/measurement.rb
harness-0.3.0 lib/harness/measurement.rb
harness-0.2.16 lib/harness/measurement.rb
harness-0.2.15 lib/harness/measurement.rb
harness-0.2.14 lib/harness/measurement.rb
harness-0.2.13 lib/harness/measurement.rb
harness-0.2.12 lib/harness/measurement.rb
harness-0.2.11 lib/harness/measurement.rb
harness-0.2.10 lib/harness/measurement.rb
harness-0.2.9 lib/harness/measurement.rb
harness-0.2.8 lib/harness/measurement.rb
harness-0.2.7 lib/harness/measurement.rb
harness-0.2.6 lib/harness/measurement.rb
harness-0.2.5 lib/harness/measurement.rb
harness-0.2.4 lib/harness/measurement.rb
harness-0.2.3 lib/harness/measurement.rb
harness-0.2.2 lib/harness/measurement.rb
harness-0.2.1 lib/harness/measurement.rb
harness-0.2.0 lib/harness/measurement.rb