Interface PartitionMap<T extends AsyncCloseable>

Type Parameters:
T - The value object which represents the partition.
All Superinterfaces:
AsyncCloseable, ListenableAsyncCloseable
All Known Implementing Classes:
PowerSetPartitionMap

@Deprecated public interface PartitionMap<T extends AsyncCloseable> extends ListenableAsyncCloseable
Deprecated.
We are unaware of anyone using "partition" feature and plan to remove it in future releases. If you depend on it, consider using ClientGroup as an alternative or reach out to the maintainers describing the use-case.
A map like interface which manages PartitionAttributes that are fully specified and returns the corresponding partitions those PartitionAttributes belong to.
  • Method Details

    • add

      List<T> add(PartitionAttributes partition)
      Deprecated.
      Add a new PartitionAttributes that is absolutely specified. This may create new partitions.

      The terminology "absolutely"/"fully" here is meant to clarify that partition contains all the attributes to uniquely identify a single host. This is typically called when notification is received from ServiceDiscoverer and that address is translated to the corresponding PartitionAttributes.

      This method is not guaranteed to provide any thread safety or visibility with respect to calls to this method or remove(PartitionAttributes). If these methods are called from multiple threads you may need to provide external synchronization.

      Parameters:
      partition - A fully specified PartitionAttributes.
      Returns:
      The partitions that partition belongs to. These may (or may not) be new partitions.
    • remove

      List<T> remove(PartitionAttributes partition)
      Deprecated.
      Remove a PartitionAttributes that was previously added via add(PartitionAttributes).

      New partitions typically are not created as a result of this method call.

      This method is not guaranteed to provide any thread safety or visibility with respect to calls to this method or add(PartitionAttributes). If these methods are called from multiple threads you may need to provide external synchronization.

      Parameters:
      partition - A fully specified PartitionAttributes.
      Returns:
      The partitions that partition belongs to.
    • get

      @Nullable T get(@Nullable PartitionAttributes wildCardAttributes)
      Deprecated.
      Get the partition value corresponding to the PartitionAttributes parameter.

      This may be called from any thread.

      Parameters:
      wildCardAttributes - A PartitionAttributes which identifies the partition. Note that this may not be fully specified, and this is where the "wild card" terminology comes from.
      Returns:
      the partition value corresponding to the PartitionAttributes parameter.