Class: USGeo::CountySubdivision

Inherits:
BaseRecord
  • Object
show all
Includes:
Area, Population
Defined in:
lib/us_geo/county_subdivision.rb

Overview

County subdivision.

Constant Summary

Constants inherited from BaseRecord

BaseRecord::STATUS_IMPORTED, BaseRecord::STATUS_MANUAL, BaseRecord::STATUS_REMOVED

Instance Attribute Summary collapse

Attributes included from Area

#land_area, #water_area

Attributes included from Population

#housing_units, #population

Attributes inherited from BaseRecord

#status, #updated_at

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Area

#land_area_km, #percent_land, #total_area, #water_area_km

Methods included from Population

#housing_density, #housing_density_km, #population_density, #population_density_km

Methods inherited from BaseRecord

#imported?, #manual?, #removed?

Instance Attribute Details

#fips_class_codeString



# File 'lib/us_geo/county_subdivision.rb', line 33


#geoidString



# File 'lib/us_geo/county_subdivision.rb', line 27


#nameString



# File 'lib/us_geo/county_subdivision.rb', line 30


Class Method Details

.load!(uri = nil) ⇒ Object



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/us_geo/county_subdivision.rb', line 57

def load!(uri = nil)
  location = data_uri(uri || "county_subdivisions.csv")

  import! do
    load_data_file(location) do |row|
      load_record!(geoid: row["GEOID"]) do |record|
        record.gnis_id = row["GNIS ID"]
        record.county_geoid = row["County GEOID"]
        record.name = row["Name"]
        record.fips_class_code = row["FIPS Class"]
        record.population = row["Population"]
        record.housing_units = row["Housing Units"]
        record.land_area = row["Land Area"]
        record.water_area = row["Water Area"]
        record.lat = row["Latitude"]
        record.lng = row["Longitude"]

        duplicate = where.not(geoid: record.geoid).find_by(name: record.name, county_geoid: record.county_geoid)
        duplicate&.update!(name: "#{record.name} (deleted)", status: BaseRecord::STATUS_REMOVED)
      end
    end
  end
end

Instance Method Details

#combined_statistical_area(: combined_statistical_area) ⇒ CombinedStatisticalArea



42
# File 'lib/us_geo/county_subdivision.rb', line 42

delegate :combined_statistical_area, to: :county

#core_based_statistical_area(: core_based_statistical_area) ⇒ CoreBasedStatisticalArea



38
# File 'lib/us_geo/county_subdivision.rb', line 38

delegate :core_based_statistical_area, to: :county

#metropolitan_division(: metropolitan_division) ⇒ MetropolitanDivision



46
# File 'lib/us_geo/county_subdivision.rb', line 46

delegate :metropolitan_division, to: :county

#state(: state) ⇒ State



50
# File 'lib/us_geo/county_subdivision.rb', line 50

delegate :state, to: :county

#state_code(: state_code) ⇒ String



54
# File 'lib/us_geo/county_subdivision.rb', line 54

delegate :state_code, to: :county