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, forceExit, getCommandOutputDelegate, getEnvironmentValue, getErrStream, getFileSystem, getInStream, getMaximumColumn, getOptionAndArgumentDelegate, getOutStream, getTTYStringBuilderForStderr, getTTYStringBuilderForStdout, registerArgument, registerEmptyContext, registerManualPageSectionsFromTemplate, registerOption, registerOption, registerOptionsAndArgumentsFromTemplate, registerOptionWithOptionalArgument, registerOptionWithOptionalArgument, registerOptionWithRequiredArgument, registerOptionWithRequiredArgument, runSubcommand, runSubcommandAndExit, setNewEnvironment, setNewErrStream, setNewFileSystem, setNewInStream, 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
-
-