X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Finstantlauncher%2FInstantLauncher.java;h=bb8681e33e22f67a1d8dbc58d71f8f9eb5157d8b;hb=6f3b6383805ab24b835adaa7845e9306880ff7a3;hp=b21b2b3cb6616f64198641d8290a4ab6f566a4d4;hpb=ea9f229a2b0d0be0e765bdd508948b28cd2d490e;p=instantlauncher.git
diff --git a/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java b/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java
index b21b2b3..bb8681e 100755
--- a/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java
+++ b/src/main/java/eu/svjatoslav/instantlauncher/InstantLauncher.java
@@ -1,8 +1,8 @@
package eu.svjatoslav.instantlauncher;
+import eu.svjatoslav.commons.gui.dialog.ExceptionDialog;
import eu.svjatoslav.instantlauncher.configuration.ConfigurationManager;
import eu.svjatoslav.instantlauncher.configuration.FileAssociation;
-import org.apache.log4j.Logger;
import java.io.File;
import java.io.IOException;
@@ -11,15 +11,18 @@ import static eu.svjatoslav.instantlauncher.Utils.runOpeningApplication;
public class InstantLauncher {
- private static final Logger LOGGER = Logger.getLogger(InstantLauncher.class);
+ private final MainFrame mainFrame;
public ConfigurationManager configurationManager;
- final MainFrame mainFrame;
public InstantLauncher() throws IOException {
configurationManager = new ConfigurationManager();
mainFrame = new MainFrame(this);
}
+ public static void exitProgram() {
+ System.exit(0);
+ }
+
/**
* @return true
if file was opened. false
if
* unknown file type.
@@ -28,19 +31,25 @@ public class InstantLauncher {
FileAssociation fileAssociation = configurationManager.getConfiguration().findFileAssociation(file);
if (fileAssociation == null) return false;
- final String[] commands = fileAssociation.getCommands();
- runOpeningApplication(file, commands);
-
- return false;
+ runOpeningApplication(fileAssociation.command, file);
+ return true;
}
- public static void exitProgram() {
- LOGGER.info("Closing InstantLauncher");
- System.exit(0);
+ public void run() {
+ mainFrame.show();
}
- public void run() throws IOException {
- mainFrame.show();
+ public void openDirectory(File chosenFile) {
+ executeCommand(configurationManager.getConfiguration().directoryOpenCommand, chosenFile.getAbsolutePath());
}
+ public void executeCommand(String... c) {
+ try {
+ Runtime.getRuntime().exec(c);
+ exitProgram();
+
+ } catch (final IOException e) {
+ new ExceptionDialog(e);
+ }
+ }
}