package eu.svjatoslav.instantlauncher;
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;
+import static eu.svjatoslav.instantlauncher.Utils.runOpeningApplication;
+
public class InstantLauncher {
private static final Logger LOGGER = Logger.getLogger(InstantLauncher.class);
- public ConfigurationManager configuration;
- FileAssociationManager associationManager = new FileAssociationManager();
+ public ConfigurationManager configurationManager;
+ final MainFrame mainFrame;
+
+ public InstantLauncher() throws IOException {
+ configurationManager = new ConfigurationManager();
+ mainFrame = new MainFrame(this);
+ }
+
+ /**
+ * @return <code>true</code> if file was opened. <code>false</code> if
+ * unknown file type.
+ */
+ public boolean openFile(final File file) {
+ FileAssociation fileAssociation = configurationManager.getConfiguration().findFileAssociation(file);
+ if (fileAssociation == null) return false;
+
+ final String[] commands = fileAssociation.getCommands();
+ runOpeningApplication(file, commands);
+
+ return false;
+ }
public static void exitProgram() {
LOGGER.info("Closing InstantLauncher");
}
public void run() throws IOException {
- configuration = new ConfigurationManager();
-
- final MainFrame mainFrame = new MainFrame(this);
mainFrame.show();
}