code: public static <T> ReplayProcessor<T> createTimeout(Duration maxAge, Scheduler scheduler) {
  		return createSizeAndTimeout(Integer.MAX_VALUE, maxAge, scheduler);
  	}
docs: Creates a time-bounded replay processor.
  <p>
  In this setting, the {@code ReplayProcessor} internally tags each observed item
  with a timestamp value supplied by the {@link Scheduler} and keeps only
  those whose age is less than the supplied time value converted to milliseconds. For
  example, an item arrives at T=0 and the max age is set to 5; at T&gt;=5 this first
  item is then evicted by any subsequent item or termination signal, leaving the
  buffer empty.
  <p>
  Once the processor is terminated, subscribers subscribing to it will receive items
  that remained in the buffer after the terminal signal, regardless of their age.
  <p>
  If an subscriber subscribes while the {@code ReplayProcessor} is active, it will
  observe only those items from within the buffer that have an age less than the
  specified time, and each item observed thereafter, even if the buffer evicts items
  due to the time constraint in the mean time. In other words, once an subscriber
  subscribes, it observes items without gaps in the sequence except for any outdated
  items at the beginning of the sequence.
  <p>
  Note that terminal signals ({@code onError} and {@code onComplete}) trigger
  eviction as well. For example, with a max age of 5, the first item is observed at
  T=0, then an {@code onComplete} signal arrives at T=10. If an subscriber subscribes
  at T=11, it will find an empty {@code ReplayProcessor} with just an {@code
  onCompleted} signal.
  
  @param <T> the type of items observed and emitted by the Processor
  @param maxAge the maximum age of the contained items
  
  @return a new {@link ReplayProcessor} that replays elements based on their age.