com.compomics.software
Class CompomicsWrapper

java.lang.Object
  extended by com.compomics.software.CompomicsWrapper

public class CompomicsWrapper
extends Object

A general wrapper for compomics tools. All tools shall contain a resources/conf folder. In it a JavaOptions.txt and splash screen. Eventually JavaHome.txt and proxy/uniprotjapi.properties.

Author:
Marc Vaudel

Constructor Summary
CompomicsWrapper()
          Constructor.
 
Method Summary
static void checkForNewVersion(String currentVersion, String toolName, String googleCodeToolName)
          Check if a newer version of the tool is available on GoogleCode, and closes the tool if the user decided to upgrade.
static void checkForNewVersion(String currentVersion, String toolName, String googleCodeToolName, boolean closeToolWhenUpgrading, String zipFileTag)
          Check if a newer version of the tool is available on GoogleCode.
static String getJarFilePath(String classPath, String toolName)
          Returns the path to the jar file.
 ArrayList<String> getJavaHomeAndOptions(String toolPath)
          Returns an array list containing the Java home plus any parameters to the JVM.
 void launchTool(String toolName, File jarFile, String splashName, String mainClass)
          Starts the launcher by calling the launch method.
 void launchTool(String toolName, File jarFile, String splashName, String mainClass, String[] args)
          Starts the launcher by calling the launch method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CompomicsWrapper

public CompomicsWrapper()
Constructor.

Method Detail

launchTool

public void launchTool(String toolName,
                       File jarFile,
                       String splashName,
                       String mainClass)
Starts the launcher by calling the launch method. Use this as the main class in the jar file.

Parameters:
toolName -
jarFile - the jar file to execute
splashName - the splash name, for example peptide-shaker-splash.png
mainClass - the main class to execute, for example eu.isas.peptideshaker.gui.PeptideShakerGUI

launchTool

public void launchTool(String toolName,
                       File jarFile,
                       String splashName,
                       String mainClass,
                       String[] args)
Starts the launcher by calling the launch method. Use this as the main class in the jar file.

Parameters:
toolName -
jarFile - the jar file to execute
splashName - the splash name, for example peptide-shaker-splash.png, can be null
mainClass - the main class to execute, for example eu.isas.peptideshaker.gui.PeptideShakerGUI
args - the arguments to pass to the tool (ignored if null)

getJarFilePath

public static String getJarFilePath(String classPath,
                                    String toolName)
Returns the path to the jar file. Verifies that the path exists and tries to decode from Unicode if not.

Parameters:
classPath - the class path to extract the jar file path from
toolName - the name of the tool, e.g., "PeptideShaker" or "SearchGUI".
Returns:
the path to the jar file

checkForNewVersion

public static void checkForNewVersion(String currentVersion,
                                      String toolName,
                                      String googleCodeToolName)
Check if a newer version of the tool is available on GoogleCode, and closes the tool if the user decided to upgrade. No zip file tag used (see the other checkForNewVersion method).

Parameters:
currentVersion - the version number of the tool currently running
toolName - the name of the tool, e.g., "PeptideShaker"
googleCodeToolName - the GoogleCode name of the tool, e.g., "peptide-shaker"

checkForNewVersion

public static void checkForNewVersion(String currentVersion,
                                      String toolName,
                                      String googleCodeToolName,
                                      boolean closeToolWhenUpgrading,
                                      String zipFileTag)
Check if a newer version of the tool is available on GoogleCode.

Parameters:
currentVersion - the version number of the tool currently running
toolName - the name of the tool, e.g., "PeptideShaker"
googleCodeToolName - the GoogleCode name of the tool, e.g., "peptide-shaker"
closeToolWhenUpgrading - if true, the tool will close when the download page is opened, false only opens the download page
zipFileTag - the zip file tag, e.g., SearchGUI-1.10.4_windows.zip has the tag "_windows"

getJavaHomeAndOptions

public ArrayList<String> getJavaHomeAndOptions(String toolPath)
                                        throws FileNotFoundException,
                                               IOException,
                                               ClassNotFoundException
Returns an array list containing the Java home plus any parameters to the JVM. The fist index in the list will always contain the Java home. Note that this method assumes that the tool has folder called resources/conf in the same folder as the jar file.

Parameters:
toolPath - the path to the jar file of the tool
Returns:
an array list containing the Java home plus any parameters to the JVM
Throws:
FileNotFoundException
IOException
ClassNotFoundException


Copyright © 2013. All Rights Reserved.