getItem method

Future getItem(
  1. dynamic docId, {
  2. String? streamId,
})

Implementation

Future<dynamic> getItem(dynamic docId, {String? streamId}) async {
  final data = await get();

  dynamic item;

  if (streamId != null && storageListeners.hasStreamId(path, streamId)) {
    storageListeners.getDate(path, streamId);
  }

  if (data is Map) {
    item = data[docId];
  } else if (data is List) {
    if (docId is! int) {
      throw const StorageDatabaseException("docId must be integer");
    }
    item = data[docId];
  } else {
    throw StorageDatabaseException(
      "This Collection ($collectionId) does not support collections",
    );
  }

  return item;
}