public class FileAssociationManager {
- private static final String TEXT_EDITOR = "scribes";
+ private static final String TEXT_EDITOR = "subl";
private static final String DOCUMENT_EDITOR = "lowriter";
private static final String FILE_INDICATOR = "<FILE>";
+ private static final String MUSIC_PLAYER = "clementine";
+
public static HashMap<String, String[]> extensionToApplication = new HashMap<String, String[]>();
public static boolean openFile(final File file) {
final String[] commands = extensionToApplication.get(fileExtension);
- final String[] c = new String[commands.length];
-
for (int i = 0; i < commands.length; i++)
if (commands[i].equals(FILE_INDICATOR))
- c[i] = file.getAbsolutePath();
- else
- c[i] = commands[i];
+ commands[i] = file.getAbsolutePath();
try {
- Runtime.getRuntime().exec(c);
+ Runtime.getRuntime().exec(commands);
InstantLauncher.exitProgram();
} catch (final IOException e) {
extensionToApplication.put("flv", new String[] { "vlc", FILE_INDICATOR });
extensionToApplication.put("wmv", new String[] { "vlc", FILE_INDICATOR });
+ extensionToApplication.put("flac", new String[] { MUSIC_PLAYER, FILE_INDICATOR });
+ extensionToApplication.put("mp3", new String[] { MUSIC_PLAYER, FILE_INDICATOR });
+ extensionToApplication.put("ogg", new String[] { MUSIC_PLAYER, FILE_INDICATOR });
+ extensionToApplication.put("wav", new String[] { MUSIC_PLAYER, FILE_INDICATOR });
+
extensionToApplication.put("ods", new String[] { SPREADSHEET_EDITOR, FILE_INDICATOR });
extensionToApplication.put("xls", new String[] { SPREADSHEET_EDITOR, FILE_INDICATOR });
extensionToApplication.put("xlsx", new String[] { SPREADSHEET_EDITOR, FILE_INDICATOR });
extensionToApplication.put("docx", new String[] { DOCUMENT_EDITOR, FILE_INDICATOR });
extensionToApplication.put("doc", new String[] { DOCUMENT_EDITOR, FILE_INDICATOR });
+ extensionToApplication.put("desktop", new String[] { "run-desktop", FILE_INDICATOR });
+
+ extensionToApplication.put("log", new String[] { "glogg", FILE_INDICATOR });
+ extensionToApplication.put("out", new String[] { "glogg", FILE_INDICATOR });
+
}
}