getTablesSorted static method
Sorts all supplied table names by type.
Supported types are:
- {@value ISpatialTableNames#INTERNALDATA}
- {@value ISpatialTableNames#SYSTEM}
@param allTableNames list of all tables.
@param doSort if true
, table names are alphabetically sorted.
@return the {@link LinkedHashMap}.
Implementation
static Map<String, List<String>> getTablesSorted(
List<TableName> allTableNames, bool doSort) {
Map<String, List<String>> tablesMap = {};
tablesMap[USERDATA] = [];
tablesMap[SYSTEM] = [];
for (TableName name in allTableNames) {
var tableName = name.name.toLowerCase();
if (tableName.startsWith(startsWithIndexTables) ||
metadataTables.contains(tableName) ||
internalDataTables.contains(tableName)) {
List<String> list = tablesMap[SYSTEM]!;
list.add(tableName);
continue;
}
List<String> list = tablesMap[USERDATA]!;
list.add(tableName);
}
if (doSort) {
for (List<String> values in tablesMap.values) {
values.sort();
}
}
return tablesMap;
}