class CustomInstallationIdCache {

  @Nullable
  public synchronized CustomInstallationIdCacheEntryValue readCacheEntryValue() {
    JSONObject cidInfo = readCidInfoFromFile();
    String cid = cidInfo.optString(CUSTOM_INSTALLATION_ID_KEY, null);
    String iid = cidInfo.optString(INSTANCE_ID_KEY, null);
    int status = cidInfo.optInt(CACHE_STATUS_KEY, -1);

    if (cid == null || iid == null || status == -1) {
      return null;
    }
    return CustomInstallationIdCacheEntryValue.create(cid, iid, CacheStatus.values()[status]);
  }

  public  CustomInstallationIdCache(@NonNull FirebaseApp firebaseApp);

}