Interface ProcessorMetaSupplier

All Superinterfaces:
Serializable
All Known Implementing Classes:
ProcessorMetaSupplier.RandomMemberPms, ProcessorMetaSupplier.SpecificMemberPms
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface ProcessorMetaSupplier extends Serializable
Factory of ProcessorSupplier instances. The starting point of the chain leading to the eventual creation of Processor instances on each cluster member:
  1. client or member creates ProcessorMetaSupplier as a part of the DAG;
  2. client or member sends it to the job coordinator (if the member is job coordinator and the DAG consists of reusable ProcessorMetaSuppliers, the serialization may be skipped);
  3. the job coordinator uses it to create one ProcessorSupplier for each cluster member;
  4. serializes each ProcessorSupplier and sends it to its target member;
  5. the target member deserializes and uses it to instantiate as many instances of Processor as requested by the parallelism property on the corresponding Vertex.
Before being asked to create ProcessorSuppliers this meta-supplier will be given access to the Hazelcast instance and, in particular, its cluster topology and partitioning services. It can use the information from these services to precisely parameterize each Processor instance that will be created on each member.
Since:
Jet 3.0