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

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

Sequel Fields collapse

Sequel Associations collapse

Instance Method Summary collapse

Methods inherited from INatGet::Data::Model

helper, manager, parser, updater

Instance Attribute Details

#accuracyInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

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

Sequel one-to-many association.

Returns:



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

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

#cachedTime

Sequel data field

Returns:

  • (Time)


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

set_dataset :observations

#captiveBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

#createdTime

Sequel data field

Returns:

  • (Time)


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

set_dataset :observations

#created_dayInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

#created_hourInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

#created_monthInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

#created_timezoneString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

#created_weekInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

#created_yearInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

#descriptionString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

#endemicBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

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

Sequel one-to-many association.

Returns:



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

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

#geoprivacyString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

#idInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

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

Sequel one-to-many association.

Returns:



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

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

#introducedBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

#latitudeFloat?

Sequel data field

Returns:

  • (Float, nil)


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

set_dataset :observations

#licenseString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

#longitudeFloat?

Sequel data field

Returns:

  • (Float, nil)


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

set_dataset :observations

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

Sequel many-to-many association.

Returns:



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

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)


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

set_dataset :observations

#nativeBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

#obscuredBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

#observedTime?

Sequel data field

Returns:

  • (Time, nil)


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

set_dataset :observations

#observed_dayInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#observed_hourInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#observed_monthInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#observed_timezoneString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

#observed_weekInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#observed_winterInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#observed_yearInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#out_of_rangeBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

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

Sequel many-to-many association.

Returns:



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

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:



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

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)


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

set_dataset :observations

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

Sequel many-to-many association.

Returns:



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

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:



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

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

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

Sequel many-to-one association.

Returns:



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

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

#taxon_geoprivacyString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

#taxon_idInteger?

Sequel data field

Returns:

  • (Integer, nil)


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

set_dataset :observations

#threatenedBoolean?

Sequel data field

Returns:

  • (Boolean, nil)


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

set_dataset :observations

#updatedTime

Sequel data field

Returns:

  • (Time)


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

set_dataset :observations

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

Sequel many-to-one association.

Returns:



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

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

#user_idInteger

Sequel data field

Returns:

  • (Integer)


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

set_dataset :observations

#uuidString?

Sequel data field

Returns:

  • (String, nil)


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

set_dataset :observations

Instance Method Details

#<=>(other) ⇒ Object



49
50
51
52
# File 'lib/inat-get/data/models/observation.rb', line 49

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

#photo_licensesObject



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

def photo_licenses
  photos.map(&:license)
end

#sound_licensesObject



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

def sound_licenses
  sounds.map(&:license)
end

#tag_valuesObject



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

def tag_values
  tags.map(&:tag)
end