calculateRetentionDate static method

int calculateRetentionDate(
  1. int installDayUtc,
  2. int nowUtcMillis
)

Calculates retention days between installDayUtc (yyyyMMdd) and nowUtcMillis.

Implementation

static int calculateRetentionDate(int installDayUtc, int nowUtcMillis) {
  if (installDayUtc == -1) return -1;

  try {
    final year = installDayUtc ~/ 10000;
    final month = (installDayUtc % 10000) ~/ 100;
    final day = installDayUtc % 100;
    final installDate = DateTime.utc(year, month, day);
    final diffMillis = nowUtcMillis - installDate.millisecondsSinceEpoch;
    final diffDays = diffMillis ~/ (1000 * 60 * 60 * 24);
    return diffDays;
  } catch (_) {
    return -1;
  }
}