*/
class Epub extends InfoText {
protected MetaData meta;
+ private File tmpDir;
private File tmp;
private String desc;
protected void preprocess(URL source, InputStream in) throws IOException {
// Note: do NOT close this stream, as it would also close "in"
ZipInputStream zipIn = new ZipInputStream(in);
- tmp = File.createTempFile("fanfic-reader-parser_", ".tmp");
- File tmpInfo = new File(tmp + ".info");
+ tmpDir = Instance.getTempFiles().createTempDir("fanfic-reader-parser");
+ tmp = new File(tmpDir, "file.txt");
+ File tmpInfo = new File(tmpDir, "file.info");
fakeSource = tmp.toURI().toURL();
Image cover = null;
}
meta = new MetaData();
- meta.setLang("EN");
+ meta.setLang("en");
meta.setTags(new ArrayList<String>());
meta.setSource(getSourceName());
meta.setUuid(url);
meta.setUrl(url);
meta.setTitle(title);
meta.setAuthor(author);
+ meta.setImageDocument(isImagesDocumentByDefault());
}
}
@Override
- protected void close() throws IOException {
- if (tmp != null && tmp.exists()) {
- if (!tmp.delete()) {
- tmp.deleteOnExit();
- }
+ protected void close() {
+ if (tmpDir != null) {
+ IOUtils.deltree(tmpDir);
}
+ tmpDir = null;
tmp = null;
if (fakeIn != null) {
- fakeIn.close();
+ try {
+ fakeIn.close();
+ } catch (Exception e) {
+ Instance.getTraceHandler().error(e);
+ }
}
super.close();
protected boolean getCover() {
return true;
}
+
+ protected boolean isImagesDocumentByDefault() {
+ return false;
+ }
}