From 4a2f093e9217f8f4a4636ce0d2cda2e28821e08a Mon Sep 17 00:00:00 2001 From: Reinhard Pointner Date: Fri, 19 Jun 2015 16:27:29 +0000 Subject: [PATCH] * simplify mediainfo error messages --- source/net/filebot/mediainfo/MediaInfo.java | 2 +- source/net/filebot/mediainfo/MediaInfoException.java | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/source/net/filebot/mediainfo/MediaInfo.java b/source/net/filebot/mediainfo/MediaInfo.java index 2d59e530..99e94bdd 100644 --- a/source/net/filebot/mediainfo/MediaInfo.java +++ b/source/net/filebot/mediainfo/MediaInfo.java @@ -39,7 +39,7 @@ public class MediaInfo implements Closeable { try { handle = MediaInfoLibrary.INSTANCE.New(); } catch (LinkageError e) { - throw new MediaInfoException(); + throw new MediaInfoException(e); } } diff --git a/source/net/filebot/mediainfo/MediaInfoException.java b/source/net/filebot/mediainfo/MediaInfoException.java index 0f6452ba..137b5559 100644 --- a/source/net/filebot/mediainfo/MediaInfoException.java +++ b/source/net/filebot/mediainfo/MediaInfoException.java @@ -4,16 +4,14 @@ import com.sun.jna.Platform; public class MediaInfoException extends RuntimeException { - public MediaInfoException() { - super(String.format("Unable to load %d-bit native library 'mediainfo'", Platform.is64Bit() ? 64 : 32)); - } - public MediaInfoException(LinkageError e) { - super(String.format("Unable to load %d-bit native library 'mediainfo'", Platform.is64Bit() ? 64 : 32), e); + super(getLinkageErrorMessage(e)); } - public MediaInfoException(String msg, Throwable e) { - super(msg, e); + private static String getLinkageErrorMessage(LinkageError e) { + String name = Platform.isWindows() ? "MediaInfo.dll" : Platform.isMac() ? "libmediainfo.dylib" : "libmediainfo.so"; + String arch = System.getProperty("os.arch").toLowerCase().trim(); + return String.format("Unable to load %s native library %s", arch, name); } }