UI
Class GEVAConfig

java.lang.Object
  extended by UI.GEVAConfig

public class GEVAConfig
extends java.lang.Object

Hold all the configuration details for the life-time of the GUI

Author:
eliottbartley

Method Summary
static java.lang.String getClassName()
          Get the name of the main GEVA class
static java.lang.String getClassRelPath()
          Get the path to GEVA classes.
static java.util.Properties getCommands()
          Get the properties as they were when taken from the command line.
static java.lang.String getConfigAbsPath()
           
static java.lang.String getConfigRelPath()
           
static java.lang.String getGrammarAbsPath()
           
static java.lang.String getGrammarRelPath()
           
static java.lang.String getHeapSize()
          Get the heap memory to use for GEVA
static java.lang.String getJavaName()
          Get the path to GEVA classes.
static java.util.Properties getProperties()
          Get the properties as they were when taken from the gui.config
static java.lang.String getPropertiesAbsPath()
           
static java.lang.String getPropertiesRelPath()
           
static java.lang.String getSelectedPropertiesFile()
          Get the properties file that was selected in the GUI last time it was run.
static java.lang.String getWorkingAbsPath()
          Get that path used as the current directory when running GEVA, i.e. all paths within GEVA will be relative to this one.
static boolean initialise(java.lang.String[] args)
          Initialise the configuration details loading in default values, values from the configuration file, and values from the command line
static boolean isExpert()
          Get whether expert mode is on (--expert flag) which prevents the gui from disabling advanced features
static boolean isServer()
          Use the server JVM
static void save()
          Save the state of all modified configuration values.
static void saveQuiet()
          Save and ignore any errors.
static void setClassName(java.lang.String className)
           
static void setClassPath(java.lang.String classPath)
           
static void setConfigPath(java.lang.String configPath)
           
static void setExpert(boolean expert)
           
static void setGrammarPath(java.lang.String grammarPath)
           
static void setHeapSize(java.lang.String heapSize)
           
static void setJavaName(java.lang.String javaName)
           
static void setPropertiesPath(java.lang.String configPath)
           
static void setSelectedPropertiesFile(java.lang.String selectedPropertiesFile)
           
static void setServer()
           
static void setWorkingPath(java.lang.String workingAbsPath)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getSelectedPropertiesFile

public static java.lang.String getSelectedPropertiesFile()
Get the properties file that was selected in the GUI last time it was run. Saved so that the same properties file will be selected after closing the GUI


setSelectedPropertiesFile

public static void setSelectedPropertiesFile(java.lang.String selectedPropertiesFile)
See Also:
getSelectedPropertiesFile()

getConfigRelPath

public static java.lang.String getConfigRelPath()
See Also:
getConfigPath()

getConfigAbsPath

public static java.lang.String getConfigAbsPath()
See Also:
getConfigPath()

setConfigPath

public static void setConfigPath(java.lang.String configPath)
See Also:
getConfigPath()

getHeapSize

public static java.lang.String getHeapSize()
Get the heap memory to use for GEVA

Returns:
amount of memory to allocate

setHeapSize

public static void setHeapSize(java.lang.String heapSize)

isServer

public static boolean isServer()
Use the server JVM

Returns:
use of server JVM

setServer

public static void setServer()

getPropertiesRelPath

public static java.lang.String getPropertiesRelPath()
See Also:
getPropertiesPath()

getPropertiesAbsPath

public static java.lang.String getPropertiesAbsPath()
See Also:
getPropertiesPath()

setPropertiesPath

public static void setPropertiesPath(java.lang.String configPath)
See Also:
getPropertiesPath()

getGrammarRelPath

public static java.lang.String getGrammarRelPath()
See Also:
getGrammarPath()

getGrammarAbsPath

public static java.lang.String getGrammarAbsPath()
See Also:
getGrammarPath()

setGrammarPath

public static void setGrammarPath(java.lang.String grammarPath)
See Also:
getGrammarPath()

getJavaName

public static java.lang.String getJavaName()
Get the path to GEVA classes. This must be relative to the working path.

See Also:
getWorkingAbsPath()

setJavaName

public static void setJavaName(java.lang.String javaName)
See Also:
getJavaName()

getClassRelPath

public static java.lang.String getClassRelPath()
Get the path to GEVA classes. This must be relative to the working path.

See Also:
If an absolute path is given, it will be converted to a relative path

setClassPath

public static void setClassPath(java.lang.String classPath)
See Also:
getClassRelPath()

getClassName

public static java.lang.String getClassName()
Get the name of the main GEVA class


setClassName

public static void setClassName(java.lang.String className)
See Also:
getClassName()

getWorkingAbsPath

public static java.lang.String getWorkingAbsPath()
Get that path used as the current directory when running GEVA, i.e. all paths within GEVA will be relative to this one. This also means that all paths in the GUI that are to be given to GEVA will also be relative to this one, and not the GUI's current directory. This is always an absolute path, but if it is set using a relative path, it is converted to an absolute one for the GUI's current directory


setWorkingPath

public static void setWorkingPath(java.lang.String workingAbsPath)
See Also:
getWorkingAbsPath()

isExpert

public static boolean isExpert()
Get whether expert mode is on (--expert flag) which prevents the gui from disabling advanced features


setExpert

public static void setExpert(boolean expert)
See Also:
isExpert()

initialise

public static boolean initialise(java.lang.String[] args)
Initialise the configuration details loading in default values, values from the configuration file, and values from the command line

Parameters:
args - Command line arguements
Returns:
false if the GUI should not start - currently (2008y08M20d) this only happens if the user specifies -h on the command line, so only the command line help is output, and the program should end (this class displays the help)

getProperties

public static java.util.Properties getProperties()
Get the properties as they were when taken from the gui.config


getCommands

public static java.util.Properties getCommands()
Get the properties as they were when taken from the command line. This will be modified, along with the getProperties values, when properties are modified within the program


save

public static void save()
                 throws java.io.IOException
Save the state of all modified configuration values. This will only update values that have been modified by calling set* i.e. if the GUI was started with a command line argument that overrode the configuration properties, that value would be seen by calling get*, but would not be stored when calling save. If, however, set* was called for that property, save would then store the updated value. Save always goes to "./gui.config" i.e. save always goes to gui.config in the current directory of the GUI

Throws:
java.io.IOException

saveQuiet

public static void saveQuiet()
Save and ignore any errors. Only called when auto-saving [unimportant] GUI layout, (behind the users back), so don't want to suddenly start bothering the user with errors if this ninja-like action fails