UniquePrefabCache class

Пакет: com.hypixel.hytale.server.worldgen.cache

Файл: com/hypixel/hytale/server/worldgen/cache/UniquePrefabCache.java

Методы (2)

МодификаторыВозвратСигнатура
abstract throw new Errorthrow new Error("Failed to receive UniquePrefabEntry for " + var1, var3)
abstract UniquePrefabContainer.UniquePrefabEntry[] getUniquePrefabContainer.UniquePrefabEntry[] get(int var1)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.worldgen.cache;

class="kw">import com.hypixel.hytale.server.worldgen.container.UniquePrefabContainer;
class="kw">import com.hypixel.hytale.server.worldgen.util.cache.SizedTimeoutCache;
class="kw">import java.util.concurrent.TimeUnit;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class UniquePrefabCache {
   @Nonnull
   class="kw">protected class="kw">final SizedTimeoutCache<Integer, UniquePrefabContainer.UniquePrefabEntry[]> cache;

   class="kw">public UniquePrefabCache(@Nonnull UniquePrefabCache.UniquePrefabFunction var1, int var2, long var3) {
      this.cache = new SizedTimeoutCache<>(var3, TimeUnit.SECONDS, var2, var1::get, null);
   }

   @Nullable
   class="kw">public UniquePrefabContainer.UniquePrefabEntry[] get(int var1) {
      try {
         class="kw">return this.cache.get(Integer.valueOf(var1));
      } catch (Exception var3) {
         throw new Error("Failed to receive UniquePrefabEntry for " + var1, var3);
      }
   }

   @FunctionalInterface
   class="kw">public class="kw">interface UniquePrefabFunction {
      UniquePrefabContainer.UniquePrefabEntry[] get(int var1);
   }
}