code: public <I, O> HeartbeatManager<I, O> createHeartbeatManager(
  		ResourceID resourceId,
  		HeartbeatListener<I, O> heartbeatListener,
  		ScheduledExecutor scheduledExecutor,
  		Logger log) {
  
  		return new HeartbeatManagerImpl<>(
  			heartbeatTimeout,
  			resourceId,
  			heartbeatListener,
  			scheduledExecutor,
  			scheduledExecutor,
  			log);
  	}
docs: Creates a heartbeat manager which does not actively send heartbeats.
  
  @param resourceId Resource Id which identifies the owner of the heartbeat manager
  @param heartbeatListener Listener which will be notified upon heartbeat timeouts for registered
  targets
  @param scheduledExecutor Scheduled executor to be used for scheduling heartbeat timeouts
  @param log Logger to be used for the logging
  @param <I> Type of the incoming payload
  @param <O> Type of the outgoing payload
  @return A new HeartbeatManager instance