getMeta<T> method

  1. @visibleForTesting
Future<T> getMeta<T>(
  1. String key
)

Implementation

@visibleForTesting
Future<T> getMeta<T>(String key) async {
  final meta = '${opts.metaTable}';
  String pos(int i) => builder.makePositionalParam(i);

  final sql = 'SELECT value from $meta WHERE key = ${pos(1)}';
  final args = [key];
  final rows = await adapter.query(Statement(sql, args));

  if (rows.length != 1) {
    throw 'Invalid metadata table: missing $key';
  }

  return rows.first['value'] as T;
}