package com.l7tech.external.assertions.oauth2.introspection.server;

import com.github.benmanes.caffeine.cache.Expiry;
import com.l7tech.external.assertions.oauth2.introspection.config.OAuthIntrospectionResult;
import java.util.concurrent.TimeUnit;

class a implements Expiry<String, OAuthIntrospectionResult> {
   final int val$tokenCacheItemLifeTime;

   a(OAuthTokenIntrospector var1, int var2) {
      this.val$tokenCacheItemLifeTime = var2;
   }

   public long expireAfterCreate(String var1, OAuthIntrospectionResult var2, long var3) {
      if (var2.getExpiry() > 0L) {
         if (this.val$tokenCacheItemLifeTime > 0) {
            long var5 = var2.getExpiry() * 1000L - System.currentTimeMillis();
            long var7 = this.val$tokenCacheItemLifeTime * 1000L;
            return TimeUnit.MILLISECONDS.toNanos(Math.min(var5, var7));
         } else {
            return TimeUnit.MILLISECONDS.toNanos(var2.getExpiry() * 1000L - System.currentTimeMillis());
         }
      } else {
         return OAuthTokenIntrospector.b;
      }
   }

   public long expireAfterUpdate(String var1, OAuthIntrospectionResult var2, long var3, long var5) {
      return var5;
   }

   public long expireAfterRead(String var1, OAuthIntrospectionResult var2, long var3, long var5) {
      return var5;
   }
}
