X-Git-Url: http://git.nikiroo.be/?p=fanfix.git;a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2FMain.java;h=f51071d5c82faffd10e7bedd9d5b81c1b593f96f;hp=bb9aee5a5bdd8e4bd1e99125b1c2424145e7a23d;hb=b4dc6ab518ded2dd92e4cbb02ac615b1d57e8e6d;hpb=7de079f11e29028d226132d84b4fef3870453599 diff --git a/src/be/nikiroo/fanfix/Main.java b/src/be/nikiroo/fanfix/Main.java index bb9aee5..f51071d 100644 --- a/src/be/nikiroo/fanfix/Main.java +++ b/src/be/nikiroo/fanfix/Main.java @@ -14,6 +14,7 @@ import be.nikiroo.fanfix.reader.BasicReader; import be.nikiroo.fanfix.reader.BasicReader.ReaderType; import be.nikiroo.fanfix.supported.BasicSupport; import be.nikiroo.fanfix.supported.BasicSupport.SupportType; +import be.nikiroo.utils.UIUtils; /** * Main program entry point. @@ -22,7 +23,7 @@ import be.nikiroo.fanfix.supported.BasicSupport.SupportType; */ public class Main { private enum MainAction { - IMPORT, EXPORT, CONVERT, READ, READ_URL, LIST, HELP, SET_READER + IMPORT, EXPORT, CONVERT, READ, READ_URL, LIST, HELP, SET_READER, START, } /** @@ -46,9 +47,9 @@ public class Main { * target *
  • --read [id] ([chapter number]): read the given story from the library *
  • - *
  • --read-url [URL] ([cahpter number]): convert on the fly and read the + *
  • --read-url [URL] ([chapter number]): convert on the fly and read the * story, without saving it
  • - *
  • --list: list the stories present in the library
  • + *
  • --list ([type]): list the stories present in the library
  • *
  • --set-reader [reader type]: set the reader type to CLI or LOCAL for * this command
  • * @@ -62,7 +63,7 @@ public class Main { String typeString = null; String chapString = null; String target = null; - MainAction action = null; + MainAction action = MainAction.START; Boolean plusInfo = null; boolean noMoreActions = false; @@ -154,6 +155,9 @@ public class Main { case SET_READER: exitCode = setReaderType(args[i]); break; + case START: + exitCode = 255; // not supposed to be selected by user + break; } } @@ -163,7 +167,7 @@ public class Main { exitCode = imprt(urlString); break; case EXPORT: - exitCode = export(urlString, typeString, target); + exitCode = export(luid, typeString, target); break; case CONVERT: exitCode = convert(urlString, typeString, target, @@ -184,6 +188,11 @@ public class Main { break; case SET_READER: break; + case START: + UIUtils.setLookAndFeel(); + BasicReader.setDefaultReaderType(ReaderType.LOCAL); + BasicReader.getReader().start(null); + break; } } @@ -232,7 +241,7 @@ public class Main { * * @return the exit return code (0 = success) */ - private static int imprt(String urlString) { + public static int imprt(String urlString) { try { Story story = Instance.getLibrary().imprt(getUrl(urlString)); System.out.println(story.getMeta().getLuid() + ": \"" @@ -248,7 +257,7 @@ public class Main { /** * Export the {@link Story} from the {@link Library} to the given target. * - * @param urlString + * @param luid * the story LUID * @param typeString * the {@link OutputType} to use @@ -257,7 +266,7 @@ public class Main { * * @return the exit return code (0 = success) */ - private static int export(String urlString, String typeString, String target) { + public static int export(String luid, String typeString, String target) { OutputType type = OutputType.valueOfNullOkUC(typeString); if (type == null) { Instance.syserr(new Exception(trans(StringId.OUTPUT_DESC, @@ -266,9 +275,7 @@ public class Main { } try { - Story story = Instance.getLibrary().imprt(new URL(urlString)); - Instance.getLibrary().export(story.getMeta().getLuid(), type, - target); + Instance.getLibrary().export(luid, type, target); } catch (IOException e) { Instance.syserr(e); return 4; @@ -282,23 +289,13 @@ public class Main { * is passed, in which case all stories will be listed). * * @param typeString - * the {@link SupportType} to list the known stories of, or NULL - * to list all stories + * the type to list the known stories of, or NULL to list all + * stories * * @return the exit return code (0 = success) */ - private static int list(String typeString) { - SupportType type = null; - try { - type = SupportType.valueOfNullOkUC(typeString); - } catch (Exception e) { - Instance.syserr(new Exception( - trans(StringId.INPUT_DESC, typeString), e)); - return 1; - } - + private static int list(String type) { BasicReader.getReader().start(type); - return 0; } @@ -381,6 +378,7 @@ public class Main { } else { try { BasicSupport support = BasicSupport.getSupport(source); + if (support != null) { Story story = support.process(source);