Search in sources :

Example 1 with CacheLifetimeHint

use of no.stelar7.api.r4j.basic.cache.CacheLifetimeHint in project L4J8 by stelar7.

the class CacheTest method testCacheStuff.

@Test
@Disabled
public void testCacheStuff() throws InterruptedException {
    Logger root = (Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
    root.setLevel(Level.INFO);
    System.out.println("Fetching summoner for the first time");
    DataCall.setCacheProvider(fileCache.get());
    String id = new SpectatorBuilder().withPlatform(LeagueShard.EUW1).getFeaturedGames().get(0).getParticipants().get(0).getSummonerName();
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    Thread.sleep(6000);
    System.out.println("Fetching summoner after cache timeout");
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    Map<String, Object> data = new TreeMap<>();
    data.put("platform", LeagueShard.EUW1);
    data.put("name", id);
    DataCall.getCacheProvider().clear(URLEndpoint.V4_SUMMONER_BY_NAME, data);
    System.out.println("Fetching summoner after deleting entry");
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    CacheLifetimeHint defaults = CacheLifetimeHint.DEFAULTS;
    defaults.add(URLEndpoint.V4_SUMMONER_BY_NAME, TimeUnit.SECONDS.toMillis(1));
    DataCall.getCacheProvider().setTimeToLive(defaults);
    Thread.sleep(1000);
    System.out.println("Fetching summoner after setting lifetime to a lower limit");
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
    new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
}
Also used : SummonerBuilder(no.stelar7.api.r4j.impl.lol.builders.summoner.SummonerBuilder) CacheLifetimeHint(no.stelar7.api.r4j.basic.cache.CacheLifetimeHint) SpectatorBuilder(no.stelar7.api.r4j.impl.lol.builders.spectator.SpectatorBuilder)

Aggregations

CacheLifetimeHint (no.stelar7.api.r4j.basic.cache.CacheLifetimeHint)1 SpectatorBuilder (no.stelar7.api.r4j.impl.lol.builders.spectator.SpectatorBuilder)1 SummonerBuilder (no.stelar7.api.r4j.impl.lol.builders.summoner.SummonerBuilder)1