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

#datetimeString

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

#metadataHash

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_cdString

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

#qualifiersArray<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_noString

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

#unitString

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

#valueFloat?

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