Class PickFirstLeafLoadBalancer.Index

java.lang.Object
io.grpc.internal.PickFirstLeafLoadBalancer.Index
Enclosing class:
PickFirstLeafLoadBalancer

static final class PickFirstLeafLoadBalancer.Index extends Object
Index as in 'i', the pointer to an entry. Not a "search index." All updates should be done in a synchronization context.
  • Field Details

    • addressGroups

      private List<EquivalentAddressGroup> addressGroups
    • size

      private int size
    • groupIndex

      private int groupIndex
    • addressIndex

      private int addressIndex
  • Constructor Details

  • Method Details

    • isValid

      public boolean isValid()
    • isAtBeginning

      public boolean isAtBeginning()
    • increment

      public boolean increment()
      Move to next address in group. If last address in group move to first address of next group.
      Returns:
      false if went off end of the list, otherwise true
    • reset

      public void reset()
    • getCurrentAddress

      public SocketAddress getCurrentAddress()
    • getCurrentEagAttributes

      public Attributes getCurrentEagAttributes()
    • getCurrentEagAsList

      public List<EquivalentAddressGroup> getCurrentEagAsList()
    • updateGroups

      public void updateGroups(List<EquivalentAddressGroup> newGroups)
      Update to new groups, resetting the current index.
    • seekTo

      public boolean seekTo(SocketAddress needle)
      Returns false if the needle was not found and the current index was left unchanged.
    • size

      public int size()