getDataTimmed method

Future<Map<String, dynamic>?> getDataTimmed(
  1. dynamic key
)

Implementation

Future<Map<String, dynamic>?> getDataTimmed(key) async {
  try {
    var keyTimmed = "$key-timmed";
    if (!await existsKey(keyTimmed)) {
      throw Exception();
    }
    var isValidUntil = await getString(keyTimmed);
    if (isValidUntil == null) {
      return null;
    }
    var currentDate = DateTime.now();
    var isValidCache = DateTime.parse(isValidUntil).isAfter(currentDate);
    if (!isValidCache) {
      return null;
    }
    var responseData = await getData(key);
    return responseData;
  } catch (e) {
    dropKey("$key-timmed");
    return null;
  }
}