Package gov.usgs.earthquake.geoserve
Class ANSSRegionsFactory
java.lang.Object
gov.usgs.earthquake.geoserve.ANSSRegionsFactory
Class to manage ANSS Authoritative Region updates.
Simplest usage: ANSSRegionsFactory.getFactory().getRegions()
Regions are not fetched until
startup() (or fetchRegions())
is called.-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionUse default GeoserveLayersService.ANSSRegionsFactory(GeoserveLayersService geoserveLayersService) Use custom GeoserveLayersService. -
Method Summary
Modifier and TypeMethodDescriptionvoidDownload regions from geoserve.static ANSSRegionsFactoryGet the global ANSSRegionsFactory, creating and starting if needed.static ANSSRegionsFactorygetFactory(boolean startup) Get the service.Get the local regions file.Get the most recently fetched Regions.protected RegionsRead regions from local regions file.protected RegionsRead regions from geoserve service.protected voidsaveToFile(File regionsFile, javax.json.JsonObject json) Store json to local regions file.static voidsetFactory(ANSSRegionsFactory factory) Set the global ANSSRegionsFactory, shutting down any existing factory if needed.voidSet the service.voidsetLocalRegions(File localRegions) Set the local regions file.voidshutdown()Stop updating regions.voidstartup()Start updating regions.
-
Field Details
-
LOGGER
logging object -
MILLISECONDS_PER_DAY
public static final long MILLISECONDS_PER_DAYmilliseconds per day- See Also:
-
DEFAULT_REGIONS_JSON
path to write regions.json- See Also:
-
-
Constructor Details
-
ANSSRegionsFactory
public ANSSRegionsFactory()Use default GeoserveLayersService. -
ANSSRegionsFactory
Use custom GeoserveLayersService.- Parameters:
geoserveLayersService- to use
-
-
Method Details
-
getFactory
Get the global ANSSRegionsFactory, creating and starting if needed.- Returns:
- ANSSRegionsFactory
-
getFactory
- Parameters:
startup- if Factory should be created and started, if needed- Returns:
- ANSSRegionsFactory
-
setFactory
Set the global ANSSRegionsFactory, shutting down any existing factory if needed.- Parameters:
factory- to set
-
fetchRegions
public void fetchRegions()Download regions from geoserve. Writes out to "regions.json" in current working directory and, if unable to update, reads in local copy. -
loadFromFile
Read regions from local regions file.- Returns:
- Regions
- Throws:
IOException- if error occurs
-
loadFromGeoserve
Read regions from geoserve service.- Returns:
- Regions
- Throws:
IOException- if error occurs
-
saveToFile
Store json to local regions file.- Parameters:
regionsFile- to store tojson- json response to store locally.- Throws:
IOException- if IO error occurs
-
startup
public void startup()Start updating regions. -
shutdown
public void shutdown()Stop updating regions. -
getGeoserveLayersService
Get the service.- Returns:
- geoserveLayersService
-
setGeoserveLayersService
Set the service.- Parameters:
service- GeoserveLayersService to set
-
getLocalRegions
Get the local regions file.- Returns:
- localRegions
-
setLocalRegions
Set the local regions file.- Parameters:
localRegions- file to set
-
getRegions
Get the most recently fetched Regions.- Returns:
- regions
-