class LogJobFactory implements AsynchronousSpanSink.JobFactory {

    public static LogJobFactory withWriter(final Writer writer) {
        if (writer == null) throw new NullPointerException("Writer must not be null");
        return withWriterProvider(new WriterProvider() {
            @Override
            public Writer getWriter() throws IOException {
                return writer;
            }
        });
    }

    private  LogJobFactory(WriterProvider writerProvider);

}