X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Fjvcard%2Flauncher%2FMain.java;h=7feaaa4cee28563aa0cdb945e6f99bd1e39d7b03;hb=aa5b4ad473f730a6d780cef9387a79c41ddf47a9;hp=65fbf9c635f51d4a097ca16604680faabe63c3eb;hpb=a1783d00d03245556a833bc02fbe2865225c2501;p=jvcard.git diff --git a/src/be/nikiroo/jvcard/launcher/Main.java b/src/be/nikiroo/jvcard/launcher/Main.java index 65fbf9c..7feaaa4 100644 --- a/src/be/nikiroo/jvcard/launcher/Main.java +++ b/src/be/nikiroo/jvcard/launcher/Main.java @@ -15,6 +15,7 @@ import be.nikiroo.jvcard.Contact; import be.nikiroo.jvcard.Data; import be.nikiroo.jvcard.TypeInfo; import be.nikiroo.jvcard.launcher.CardResult.MergeCallback; +import be.nikiroo.jvcard.launcher.Optional.NotSupportedException; import be.nikiroo.jvcard.parsers.Format; import be.nikiroo.jvcard.remote.Command; import be.nikiroo.jvcard.remote.SimpleSocket; @@ -37,7 +38,7 @@ import be.nikiroo.jvcard.resources.enums.StringId; */ public class Main { static public final String APPLICATION_TITLE = "jVcard"; - static public final String APPLICATION_VERSION = "1.0-dev"; + static public final String APPLICATION_VERSION = "1.1-dev"; static private final int ERR_NO_FILE = 1; static private final int ERR_SYNTAX = 2; @@ -286,14 +287,19 @@ public class Main { case SERVER: { try { Optional.runServer(port); - } catch (Exception e) { - if (e instanceof IOException) { - System.err - .println("I/O Exception: Cannot start the server"); - } else { + } catch (IOException e) { + ERR(StringId.CLI_ERR, StringId.CLI_ERR_CANNOT_START, + ERR_INTERNAL); + return; + } catch (NotSupportedException e) { + if (!e.isCompiledIn()) { ERR(StringId.CLI_ERR, StringId.CLI_ERR_NO_REMOTING, ERR_INTERNAL); return; + } else { + e.printStackTrace(); + ERR(StringId.CLI_ERR, StringId.CLI_ERR, ERR_INTERNAL); + return; } } break; @@ -302,9 +308,9 @@ public class Main { try { transService.updateFile(dir); } catch (IOException e) { - System.err.println(trans(StringId.CLI_ERR_CANNOT_CREATE_LANG, - dir)); - e.printStackTrace(); + ERR(StringId.CLI_ERR, StringId.CLI_ERR_CANNOT_CREATE_LANG, + ERR_INTERNAL); + return; } break; } @@ -387,13 +393,17 @@ public class Main { case CONTACT_MANAGER: { try { Optional.startTui(textMode, files); - } catch (Exception e) { - if (e instanceof IOException) { - ERR(StringId.CLI_ERR, StringId.CLI_ERR_CANNOT_START, - ERR_NO_FILE); + } catch (IOException e) { + ERR(StringId.CLI_ERR, StringId.CLI_ERR_CANNOT_START, + ERR_NO_FILE); + return; + } catch (NotSupportedException e) { + if (!e.isCompiledIn()) { + ERR(StringId.CLI_ERR, StringId.CLI_ERR_NO_TUI, ERR_INTERNAL); return; } else { - ERR(StringId.CLI_ERR, StringId.CLI_ERR_NO_TUI, ERR_INTERNAL); + e.printStackTrace(); + ERR(StringId.CLI_ERR, StringId.CLI_ERR, ERR_INTERNAL); return; } } @@ -429,7 +439,8 @@ public class Main { + trans(StringId.CLI_HELP_LANG)); System.out.println("\t--tui : " + trans(StringId.CLI_HELP_TUI)); System.out.println("\t--gui : " + trans(StringId.CLI_HELP_GUI)); - System.out.println("\t--noutf : " + trans(StringId.CLI_HELP_NOUTF)); + System.out.println("\t--noutf : " + + trans(StringId.CLI_HELP_NOUTF_OPTION)); System.out.println("\t--config : " + trans(StringId.CLI_HELP_CONFIG)); System.out.println(); @@ -489,7 +500,7 @@ public class Main { } } catch (IOException ioe) { throw ioe; - } catch (Exception e) { + } catch (NotSupportedException e) { throw new IOException("Remoting support not available", e); } @@ -500,7 +511,7 @@ public class Main { Data name = contact.getPreferredData("FN"); if (name == null || name.getValue().length() == 0 || forceComputedFn) { - name.setValue(contact.toString(defaultFn, "")); + name.setValue(contact.toString(defaultFn, "").trim()); } } } catch (Exception e) {