Class: Usgs::Models::Reading

Inherits:
Object
  • Object
show all
Defined in:
lib/usgs/models/reading.rb

Overview

Represents a USGS reading/measurement

Constant Summary collapse

ATTRIBUTES =
%i[
  site_no
  parameter_cd
  datetime
  value
  qualifiers
  unit
  metadata
].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data = {}) ⇒ Reading

Returns a new instance of Reading.



34
35
36
37
38
39
40
# File 'lib/usgs/models/reading.rb', line 34

def initialize(data = {})
  data[:metadata] ||= {}
  attrs = data.is_a?(Hash) ? data : {}
  ATTRIBUTES.each do |attr|
    instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
  end
end

Instance Attribute Details

#datetime ⇒ String

Returns Date and time of reading.

Returns:

  • (String) —

    Date and time of reading



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end

#metadata ⇒ Hash

Returns Additional metadata.

Returns:

  • (Hash) —

    Additional metadata



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end

#parameter_cd ⇒ String

Returns Parameter code.

Returns:

  • (String) —

    Parameter code



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end

#qualifiers ⇒ Array<String>

Returns Quality/approval codes.

Returns:

  • (Array<String>) —

    Quality/approval codes



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end

#site_no ⇒ String

Returns USGS site number.

Returns:

  • (String) —

    USGS site number



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end

#unit ⇒ String

Returns Unit of measurement.

Returns:

  • (String) —

    Unit of measurement



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end

#value ⇒ Float?

Returns Measured value.

Returns:

  • (Float, nil) —

    Measured value



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/usgs/models/reading.rb', line 21

class Reading
  ATTRIBUTES = %i[
    site_no
    parameter_cd
    datetime
    value
    qualifiers
    unit
    metadata
  ].freeze

  attr_accessor(*ATTRIBUTES) # :nodoc:

  def initialize(data = {})
    data[:metadata] ||= {}
    attrs = data.is_a?(Hash) ? data : {}
    ATTRIBUTES.each do |attr|
      instance_variable_set(:"@#{attr}", attrs[attr]) if attrs.key?(attr)
    end
  end
end