Class NodeNet<R,P,L extends GenNode<?>>

java.lang.Object
com.hbm_m.api.network.NodeNet<R,P,L>
Direct Known Subclasses:
FluidNet

public abstract class NodeNet<R,P,L extends GenNode<?>> extends Object
Абстрактная сеть (аналог NodeNet из 1.7.10). R = тип получателей, P = тип поставщиков, L = тип узлов.
  • Field Details

    • RAND

      public static final Random RAND
    • valid

      public boolean valid
    • receiverEntries

      public HashMap<R,Long> receiverEntries
      Активные получатели: ключ → timestamp последней подписки в мс.
    • providerEntries

      public HashMap<P,Long> providerEntries
      Активные поставщики: ключ → timestamp последней подписки в мс.
  • Constructor Details

    • NodeNet

      public NodeNet()
  • Method Details

    • isSubscribed

      public boolean isSubscribed(R receiver)
    • addReceiver

      public void addReceiver(R receiver)
    • removeReceiver

      public void removeReceiver(R receiver)
    • isProvider

      public boolean isProvider(P provider)
    • addProvider

      public void addProvider(P provider)
    • removeProvider

      public void removeProvider(P provider)
    • joinNetworks

      public void joinNetworks(NodeNet<R,P,L> other)
      Слить другую сеть в эту (меньшая поглощается большей).
    • joinLink

      public NodeNet<R,P,L> joinLink(L node)
      Добавить узел в эту сеть, убрав из предыдущей.
    • forceJoinLink

      public NodeNet<R,P,L> forceJoinLink(L node)
      Добавить узел без удаления из старой сети.
    • leaveLink

      public void leaveLink(L node)
      Убрать узел из сети.
    • invalidate

      public void invalidate()
    • isValid

      public boolean isValid()
    • resetTrackers

      public void resetTrackers()
    • update

      public abstract void update()
    • destroy

      public void destroy()
    • isBadLink

      public static boolean isBadLink(Object o)
      Проверка плохой ссылки: подписчик/поставщик убран (BE invalidated или выгружен).