Class HeartbeatSender<I>

  • Type Parameters:
    I - Type of the payload which is sent to the heartbeat target
    All Implemented Interfaces:
    HeartbeatTarget<I>

    public abstract class HeartbeatSender<I>
    extends Object
    implements HeartbeatTarget<I>
    The sender implementation of HeartbeatTarget, which mutes the HeartbeatTarget#receiveHeartbeat(ResourceID, I). The extender only has to care about the sending logic.
    • Constructor Detail

      • HeartbeatSender

        public HeartbeatSender()
    • Method Detail

      • receiveHeartbeat

        public final CompletableFuture<Void> receiveHeartbeat​(ResourceID heartbeatOrigin,
                                                              I heartbeatPayload)
        Description copied from interface: HeartbeatTarget
        Sends a heartbeat response to the target. Each heartbeat response can carry a payload which contains additional information for the heartbeat target.
        Specified by:
        receiveHeartbeat in interface HeartbeatTarget<I>
        Parameters:
        heartbeatOrigin - Resource ID identifying the machine for which a heartbeat shall be reported.
        heartbeatPayload - Payload of the heartbeat. Null indicates an empty payload.
        Returns:
        Future that is completed exceptionally if the heartbeat response could not be sent to the target