Class: INatGet::Data::Model::Observation

Inherits:
INatGet::Data::Model show all
Includes:
Comparable, Identified
Defined in:
lib/inat-get/data/models/observation.rb

Sequel Fields collapse

Sequel Associations collapse

Instance Method Summary collapse

Methods included from Identified

#eql?, #hash

Methods inherited from INatGet::Data::Model

endpoint, helper, manager, parser, updater

Instance Attribute Details

#accuracyInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#annotationsSequel::Dataset, Array<INatGet::Data::Model::Annotation>

Sequel one-to-many association.

Returns:



28
# File 'lib/inat-get/data/models/observation.rb', line 28

one_to_many :annotations,     class: INatGet::Data::Model::Annotation

#cachedTime

Sequel data field

Returns:

  • (Time)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#captiveBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#createdTime

Sequel data field

Returns:

  • (Time)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#created_dayInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#created_hourInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#created_monthInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#created_timezoneString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#created_weekInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#created_yearInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#descriptionString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#endemicBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#favesSequel::Dataset, Array<INatGet::Data::Model::Fave>

Sequel one-to-many association.

Returns:



25
# File 'lib/inat-get/data/models/observation.rb', line 25

one_to_many :faves,           class: INatGet::Data::Model::Fave

#geoprivacyString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#idInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#identificationsSequel::Dataset, Array<INatGet::Data::Model::Identification>

Sequel one-to-many association.

Returns:



27
# File 'lib/inat-get/data/models/observation.rb', line 27

one_to_many :identifications, class: INatGet::Data::Model::Identification

#introducedBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#latitudeFloat?

Sequel data field

Returns:

  • (Float, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#licenseString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#longitudeFloat?

Sequel data field

Returns:

  • (Float, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#manual_projectsSequel::Dataset, Array<INatGet::Data::Model::Project>

Sequel many-to-many association.

Returns:



36
# File 'lib/inat-get/data/models/observation.rb', line 36

many_to_many :manual_projects, class: :'INatGet::Data::Model::Project', join_table: :observation_projects, left_key: :observation_id, right_key: :project_id

#mappableBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#nativeBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#obscuredBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observedTime?

Sequel data field

Returns:

  • (Time, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_dayInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_hourInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_monthInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_timezoneString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_weekInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_winterInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#observed_yearInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#out_of_rangeBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#photosSequel::Dataset, Array<INatGet::Data::Model::Photo>

Sequel many-to-many association.

Returns:



33
# File 'lib/inat-get/data/models/observation.rb', line 33

many_to_many :photos, class: INatGet::Data::Model::Photo, join_table: :observation_photos, left_key: :observation_id, right_key: :photo_id

#placesSequel::Dataset, Array<INatGet::Data::Model::Place>

Sequel many-to-many association.

Returns:



35
# File 'lib/inat-get/data/models/observation.rb', line 35

many_to_many :places, class: INatGet::Data::Model::Place, join_table: :observation_places, left_key: :observation_id, right_key: :place_id

#quality_gradeString

Sequel data field

Returns:

  • (String)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#soundsSequel::Dataset, Array<INatGet::Data::Model::Sound>

Sequel many-to-many association.

Returns:



34
# File 'lib/inat-get/data/models/observation.rb', line 34

many_to_many :sounds, class: INatGet::Data::Model::Sound, join_table: :observation_sounds, left_key: :observation_id, right_key: :sound_id

#tagsSequel::Dataset, Array<INatGet::Data::Model::Tag>

Sequel one-to-many association.

Returns:



26
# File 'lib/inat-get/data/models/observation.rb', line 26

one_to_many :tags,            class: INatGet::Data::Model::Tag

#taxonINatGet::Data::Model::Taxon?

Sequel many-to-one association.

Returns:



30
# File 'lib/inat-get/data/models/observation.rb', line 30

many_to_one :taxon, class: INatGet::Data::Model::Taxon

#taxon_geoprivacyString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#taxon_idInteger?

Sequel data field

Returns:

  • (Integer, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#threatenedBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#updatedTime

Sequel data field

Returns:

  • (Time)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#userINatGet::Data::Model::User?

Sequel many-to-one association.

Returns:



31
# File 'lib/inat-get/data/models/observation.rb', line 31

many_to_one :user,  class: INatGet::Data::Model::User

#user_idInteger

Sequel data field

Returns:

  • (Integer)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

#uuidString?

Sequel data field

Returns:

  • (String, nil)


23
# File 'lib/inat-get/data/models/observation.rb', line 23

set_dataset :observations

Instance Method Details

#<=>(other) ⇒ Object



52
53
54
55
# File 'lib/inat-get/data/models/observation.rb', line 52

def <=> other
  return nil unless other.is_a?(INatGet::Data::Model::Observation)
  self.id <=> other.id
end

#photo_licensesObject



38
39
40
# File 'lib/inat-get/data/models/observation.rb', line 38

def photo_licenses
  photos.map(&:license)
end

#sound_licensesObject



42
43
44
# File 'lib/inat-get/data/models/observation.rb', line 42

def sound_licenses
  sounds.map(&:license)
end

#tag_valuesObject



46
47
48
# File 'lib/inat-get/data/models/observation.rb', line 46

def tag_values
  tags.map(&:tag)
end