final StubbornAppendSink<EventSink> stubborn = new StubbornAppendSink<EventSink>(
insistent);
final InsistentAppendDecorator<EventSink> append = new InsistentAppendDecorator<EventSink>(
stubborn, new CappedExponentialBackoff(100, 100000));
final EventSink sink = new LazyOpenDecorator<EventSink>(append);
sink.open();
// create an endless stream of data
final EventSource source = new LazyOpenSource<EventSource>(
new NoNlASCIISynthSource(0, 100));
source.open();