X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Fsupported%2FInfoText.java;h=42e2c13b6f75a1e32afa10f560361c1670ea9572;hb=d442b96e0b1453c21abf7f34bfaf73dcbed2a7ee;hp=786e771a40c2f8c6cee016c7f0aeb14c2bd365f8;hpb=0ec7855764b78c0956c552566fe52587c2b43f4e;p=fanfix.git diff --git a/src/be/nikiroo/fanfix/supported/InfoText.java b/src/be/nikiroo/fanfix/supported/InfoText.java index 786e771..42e2c13 100644 --- a/src/be/nikiroo/fanfix/supported/InfoText.java +++ b/src/be/nikiroo/fanfix/supported/InfoText.java @@ -2,8 +2,6 @@ package be.nikiroo.fanfix.supported; import java.io.File; import java.io.IOException; -import java.io.InputStream; -import java.net.URISyntaxException; import java.net.URL; import be.nikiroo.fanfix.data.MetaData; @@ -18,45 +16,36 @@ import be.nikiroo.fanfix.data.MetaData; * @author niki */ class InfoText extends Text { - @Override - public String getSourceName() { - return "info-text"; + protected File getInfoFile() { + return new File(assureNoTxt(getSourceFile()).getPath() + ".info"); } @Override - protected MetaData getMeta(URL source, InputStream in) throws IOException { - try { - File sourceFile = new File(source.toURI()); - sourceFile = assureNoTxt(sourceFile); - - MetaData meta = InfoReader.readMeta(new File(sourceFile.getPath() - + ".info"), true); - - // Some old .info files don't have those now required fields... - String test = meta.getTitle() == null ? "" : meta.getTitle(); - test += meta.getAuthor() == null ? "" : meta.getAuthor(); - test += meta.getDate() == null ? "" : meta.getDate(); - test += meta.getUrl() == null ? "" : meta.getUrl(); - if (test.isEmpty()) { - MetaData superMeta = super.getMeta(source, reset(in)); - if (meta.getTitle() == null || meta.getTitle().isEmpty()) { - meta.setTitle(superMeta.getTitle()); - } - if (meta.getAuthor() == null || meta.getAuthor().isEmpty()) { - meta.setAuthor(superMeta.getAuthor()); - } - if (meta.getDate() == null || meta.getDate().isEmpty()) { - meta.setDate(superMeta.getDate()); - } - if (meta.getUrl() == null || meta.getUrl().isEmpty()) { - meta.setUrl(superMeta.getUrl()); - } + protected MetaData getMeta() throws IOException { + MetaData meta = InfoReader.readMeta(getInfoFile(), true); + + // Some old .info files don't have those now required fields... + String test = meta.getTitle() == null ? "" : meta.getTitle(); + test += meta.getAuthor() == null ? "" : meta.getAuthor(); + test += meta.getDate() == null ? "" : meta.getDate(); + test += meta.getUrl() == null ? "" : meta.getUrl(); + if (test.isEmpty()) { + MetaData superMeta = super.getMeta(); + if (meta.getTitle() == null || meta.getTitle().isEmpty()) { + meta.setTitle(superMeta.getTitle()); + } + if (meta.getAuthor() == null || meta.getAuthor().isEmpty()) { + meta.setAuthor(superMeta.getAuthor()); + } + if (meta.getDate() == null || meta.getDate().isEmpty()) { + meta.setDate(superMeta.getDate()); + } + if (meta.getUrl() == null || meta.getUrl().isEmpty()) { + meta.setUrl(superMeta.getUrl()); } - - return meta; - } catch (URISyntaxException e) { - throw new IOException("Cannot parse URL to file: " + source, e); } + + return meta; } @Override