@@ -0,0 +1,1309 @@
+package org.textfiledatatools.io;%0A%0Aimport org.textfiledatatools.core.Record;%0A%0Aimport java.io.BufferedReader;%0Aimport java.io.BufferedWriter;%0Aimport java.io.IOException;%0Aimport java.nio.charset.Charset;%0Aimport java.nio.file.Files;%0Aimport java.nio.file.OpenOption;%0Aimport java.nio.file.Path;%0Aimport java.util.Objects;%0A%0A/**%0A * @author Mathias Kalb%0A * @since 0.1%0A */%0Apublic class BaseRecordFile%3CT extends Record%3E implements ReadableRecordFile%3CT%3E, WritableRecordFile%3CT%3E %7B%0A%0A    protected final Path path;%0A%0A    public BaseRecordFile(final Path path) %7B%0A        Objects.requireNonNull(path);%0A        this.path = path;%0A    %7D%0A%0A    @Override%0A    public final Path getPath() %7B%0A        return path;%0A    %7D%0A%0A    @Override%0A    public ReadableRecordProducer%3CT%3E openProducer() throws IOException %7B%0A        throw new UnsupportedOperationException();%0A    %7D%0A%0A    @Override%0A    public WritableRecordConsumer%3CT%3E openConsumer() throws IOException %7B%0A        throw new UnsupportedOperationException();%0A    %7D%0A%0A    protected BufferedWriter newBufferedWriter(Charset charset, OpenOption... options) throws IOException %7B%0A        return Files.newBufferedWriter(path, charset, options);%0A    %7D%0A%0A    protected BufferedReader newBufferedReader(Charset charset) throws IOException %7B%0A        return Files.newBufferedReader(path, charset);%0A    %7D%0A%0A%7D%0A

Add BaseRecordFile