getAsMapWithMeta method
Implementation
@override
Future<List<Map<String, Map<String, dynamic>>>> getAsMapWithMeta(String query,
{Map<String, dynamic>? substitutionValues}) async {
logger?.fine('Query: $query');
logger?.fine('Values: $substitutionValues');
//return _connection.mappedResultsQuery(query, substitutionValues: substitutionValues);
var results = <Map<String, Map<String, dynamic>>>[];
try {
results = await connection!.mappedResultsQuery(query,
substitutionValues: substitutionValues,
timeoutInSeconds: connectionInfo.timeoutInSeconds);
} catch (e) {
//reconnect in Error
//PostgreSQLSeverity.error : Attempting to execute query, but connection is not open.
if (connectionInfo.reconnectIfConnectionIsNotOpen == true &&
'$e'.contains('connection is not open') ||
'$e'.contains('database connection closing')) {
await reconnect();
results = await connection!.mappedResultsQuery(query,
substitutionValues: substitutionValues,
timeoutInSeconds: connectionInfo.timeoutInSeconds);
} else {
rethrow;
}
}
return results;
}