PrioritisedProvider class

Пакет: com.hypixel.hytale.server.npc.blackboard.view

Файл: com/hypixel/hytale/server/npc/blackboard/view/PrioritisedProviderView.java

implements: Comparable<PrioritisedProviderView.PrioritisedProvider<T>>

Поля (2)

МодификаторыТипИмя
private final int priority
private final T provider

Методы (2)

МодификаторыВозвратСигнатура
public int compareTopublic int compareTo(@Nonnull PrioritisedProviderView.PrioritisedProvider<T> var1)
public T getProviderpublic T getProvider()

Исходный код

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

class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.Collections;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;

class="kw">public class="kw">abstract class PrioritisedProviderView<T, ViewType class="kw">extends IBlackboardView<ViewType>> class="kw">implements IBlackboardView<ViewType> {
   class="kw">public class="kw">static class="kw">final int LOWEST_PRIORITY = Integer.MAX_VALUE;
   @Nonnull
   class="kw">protected List<PrioritisedProviderView.PrioritisedProvider<T>> providers = new ObjectArrayList();

   class="kw">public PrioritisedProviderView() {
   }

   class="kw">public void registerProvider(int var1, T var2) {
      this.providers.add(new PrioritisedProviderView.PrioritisedProvider<>(var1, var2));
      Collections.sort(this.providers);
   }

   class="kw">public class="kw">static class PrioritisedProvider<T> class="kw">implements Comparable<PrioritisedProviderView.PrioritisedProvider<T>> {
      class="kw">private class="kw">final int priority;
      class="kw">private class="kw">final T provider;

      class="kw">public PrioritisedProvider(int var1, T var2) {
         this.priority = var1;
         this.provider = var2;
      }

      class="kw">public T getProvider() {
         class="kw">return this.provider;
      }

      class="kw">public int compareTo(@Nonnull PrioritisedProviderView.PrioritisedProvider<T> var1) {
         class="kw">return Integer.compare(this.priority, var1.priority);
      }
   }
}