package org.solovyev.android.io;
import android.support.annotation.NonNull;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
public abstract class BaseIoSaver {
@NonNull
private final CharSequence data;
protected BaseIoSaver(@NonNull CharSequence data) {
this.data = data;
}
public void save() throws IOException {
OutputStreamWriter out = null;
try {
out = new OutputStreamWriter(getOutputStream());
out.write(data.toString());
} finally {
Io.close(out);
}
}
@NonNull
protected abstract FileOutputStream getOutputStream() throws FileNotFoundException;
}