change config bundle to better work with new nikiroo-utils
[fanfix.git] / src / be / nikiroo / fanfix / supported / Text.java
index f6803cd09d6358880290cdf8e2c487caf5794e16..34f180e94c3cb16bc778313ccaeebdc5ceef0472 100644 (file)
@@ -18,7 +18,8 @@ import be.nikiroo.fanfix.Instance;
 import be.nikiroo.fanfix.bundles.Config;
 import be.nikiroo.fanfix.data.MetaData;
 import be.nikiroo.utils.Image;
-import be.nikiroo.utils.MarkableFileInputStream;
+import be.nikiroo.utils.ImageUtils;
+import be.nikiroo.utils.streams.MarkableFileInputStream;
 import be.nikiroo.utils.Progress;
 
 /**
@@ -66,16 +67,11 @@ class Text extends BasicSupport {
                return false;
        }
 
-       @Override
-       public String getSourceName() {
-               return "text";
-       }
-
        @Override
        protected Document loadDocument(URL source) throws IOException {
                try {
                        sourceFile = new File(source.toURI());
-                       in = new MarkableFileInputStream(new FileInputStream(sourceFile));
+                       in = new MarkableFileInputStream(sourceFile);
                } catch (URISyntaxException e) {
                        throw new IOException("Cannot load the text document: " + source);
                }
@@ -91,7 +87,7 @@ class Text extends BasicSupport {
                meta.setAuthor(getAuthor());
                meta.setDate(getDate());
                meta.setTags(new ArrayList<String>());
-               meta.setSource(getSourceName());
+               meta.setSource(getType().getSourceName());
                meta.setUrl(getSourceFile().toURI().toURL().toString());
                meta.setPublisher("");
                meta.setUuid(getSourceFile().toString());
@@ -188,8 +184,20 @@ class Text extends BasicSupport {
                        }
                }
 
-               return BasicSupportImages.getImage(this, sourceFile.getParentFile(),
-                               path);
+               Image cover = BasicSupportImages.getImage(this,
+                               sourceFile.getParentFile(), path);
+               if (cover != null) {
+                       try {
+                               File tmp = Instance.getTempFiles().createTempFile(
+                                               "test_cover_image");
+                               ImageUtils.getInstance().saveAsImage(cover, tmp, "png");
+                               tmp.delete();
+                       } catch (IOException e) {
+                               cover = null;
+                       }
+               }
+
+               return cover;
        }
 
        @Override
@@ -323,8 +331,7 @@ class Text extends BasicSupport {
         */
        static private String detectChapter(String line, int number) {
                line = line.toUpperCase();
-               for (String lang : Instance.getConfig().getString(Config.CHAPTER)
-                               .split(",")) {
+               for (String lang : Instance.getConfig().getList(Config.CHAPTER)) {
                        String chapter = Instance.getConfig().getStringX(Config.CHAPTER,
                                        lang);
                        if (chapter != null && !chapter.isEmpty()) {