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;
case SERVER: {
try {
Optional.runServer(port);
- } catch (Exception e) {
- if (e instanceof IOException) {
- ERR(StringId.CLI_ERR, StringId.CLI_ERR_CANNOT_START,
- ERR_INTERNAL);
- return;
- } else if (e instanceof ClassNotFoundException) {
+ } 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;
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);
- return;
- } else if (e instanceof ClassNotFoundException) {
+ } 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 {
}
} catch (IOException ioe) {
throw ioe;
- } catch (Exception e) {
+ } catch (NotSupportedException e) {
throw new IOException("Remoting support not available", e);
}