Class FlagDatabaseSubCommand
- java.lang.Object
-
- org.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
-
- org.openstreetmap.atlas.checks.database.FlagDatabaseSubCommand
-
- All Implemented Interfaces:
org.openstreetmap.atlas.utilities.command.abstractcommand.AtlasShellToolsMarkerInterface
public class FlagDatabaseSubCommand extends org.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommandUpload Atlas Checks flags into a Postgres database.
-
-
Constructor Summary
Constructors Constructor Description FlagDatabaseSubCommand()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbatchFlagFeatureStatement(java.sql.PreparedStatement sql, CheckFlag flag, int flagIdentifier, com.google.gson.JsonObject feature)Add CheckFlag feature values to parameterized sql INSERT statementvoidcreateDatabaseSchema(java.sql.Connection connection, java.lang.String schemaName)Create database schema from schema.sql resource file.intexecute()voidexecuteFlagStatement(java.sql.PreparedStatement sql, CheckFlag flag)Add CheckFlag values to parameterized sql INSERT statementjava.lang.StringgetCommandName()longgetOsmIdentifier(com.google.gson.JsonObject properties)Returns the OSM identifier for a given JsonObject.java.lang.StringgetSimpleDescription()java.util.Map<java.lang.String,java.lang.String>getTags(com.google.gson.JsonObject properties)Filters non OSM tag in CheckFlag properties and converts into Map object for PostgreSQL hstorestatic voidmain(java.lang.String[] args)voidprocessCheckFlags(java.util.List<java.lang.String> lines, java.sql.PreparedStatement flagSqlStatement, java.sql.PreparedStatement featureSqlStatement)This function handles parsing each CheckFlag, and batching flag features into the databasevoidregisterManualPageSections()voidregisterOptionsAndArguments()-
Methods inherited from class org.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
addCodeLineToSection, addManualPageSection, addManualPageSection, addParagraphToSection, getCommandOutputDelegate, getOptionAndArgumentDelegate, registerArgument, registerEmptyContext, registerOption, registerOption, registerOptionWithOptionalArgument, registerOptionWithOptionalArgument, registerOptionWithRequiredArgument, registerOptionWithRequiredArgument, runSubcommand, runSubcommandAndExit, setNewErrStream, setNewOutStream, setVersion, throwIfInvalidNameOrDescription
-
-
-
-
Method Detail
-
main
public static void main(java.lang.String[] args)
-
batchFlagFeatureStatement
public void batchFlagFeatureStatement(java.sql.PreparedStatement sql, CheckFlag flag, int flagIdentifier, com.google.gson.JsonObject feature)Add CheckFlag feature values to parameterized sql INSERT statement- Parameters:
sql- PreparedStatement to add parameterized values toflag- CheckFlag to associate with featureflagIdentifier- Flag table record unique identifierfeature- - Flagged AtlasItem
-
createDatabaseSchema
public void createDatabaseSchema(java.sql.Connection connection, java.lang.String schemaName)Create database schema from schema.sql resource file.- Parameters:
connection- jdbc Connection objectschemaName- Name of database schema
-
execute
public int execute()
- Specified by:
executein classorg.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
-
executeFlagStatement
public void executeFlagStatement(java.sql.PreparedStatement sql, CheckFlag flag)Add CheckFlag values to parameterized sql INSERT statement- Parameters:
sql- - PreparedStatement to add parameterized values toflag- - CheckFlag to insert into flag table
-
getCommandName
public java.lang.String getCommandName()
- Specified by:
getCommandNamein classorg.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
-
getOsmIdentifier
public long getOsmIdentifier(com.google.gson.JsonObject properties)
Returns the OSM identifier for a given JsonObject. Atlas Checks OSM identifier changed from "osmid" to "osmIdentifier"- Parameters:
properties- CheckFlag properties- Returns:
- OSM identifier
- See Also:
- here
-
getSimpleDescription
public java.lang.String getSimpleDescription()
- Specified by:
getSimpleDescriptionin classorg.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
-
getTags
public java.util.Map<java.lang.String,java.lang.String> getTags(com.google.gson.JsonObject properties)
Filters non OSM tag in CheckFlag properties and converts into Map object for PostgreSQL hstore- Parameters:
properties- CheckFlag properties- Returns:
- hstore Map object
-
processCheckFlags
public void processCheckFlags(java.util.List<java.lang.String> lines, java.sql.PreparedStatement flagSqlStatement, java.sql.PreparedStatement featureSqlStatement)This function handles parsing each CheckFlag, and batching flag features into the database- Parameters:
lines- a List of stringified CheckFlags read in from line-delimited jsonflagSqlStatement- Flag PreparedStatementfeatureSqlStatement- Feature PreparedStatement
-
registerManualPageSections
public void registerManualPageSections()
- Specified by:
registerManualPageSectionsin classorg.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
-
registerOptionsAndArguments
public void registerOptionsAndArguments()
- Overrides:
registerOptionsAndArgumentsin classorg.openstreetmap.atlas.utilities.command.abstractcommand.AbstractAtlasShellToolsCommand
-
-