Package skyview.executive

# Class Settings

java.lang.Object
skyview.executive.Settings

public class Settings extends Object
This class defines a singleton where SkyView preferences/settings Testchange... can be set and gotten from anywhere in the system. A setting is simply a key=string value. When there is to be more than one value for the key it should be specified as string1,string2,string3. A comma is not allowed as a character within a setting. Keys are case insensitive.

When specified in the command line Settings may sometimes be set with just the keyword. This is treated as equivalent to key=1.

## Method Summary

Modifier and Type
Method
Description
`static void`
`add(String key, String value)`
Add a setting to a list -- but only if it is not already in the list.
`static void`
`addArgs(String[] args)`
Add settings from a list of arguments.
`static void`
`addToken(String arg)`
Add a single argument token
`static String`
`get(String key)`
Get a value corresponding to the key
`static String`
`get(String key, String dft)`
Get a values corresponding to a key or the default
`static String[]`
`getArray(String key)`
Get the values corresponding to a key as an array of strings.
`static String[]`
`getKeys()`
Return the array of keys in the current settings
`static boolean`
`has(String key)`
Check if the given key has been set
`static HashMap<String,String>`
`pop()`
Give a copy of the current settings and pop the stack
`static void`
`push(HashMap<String,String> top)`
`static void`
`put(String key, String value)`
Save a key and value
`static void`
`restore()`
Restore a previously saved state.
`static void`
`save()`
Save the current state of the settings for a later restoration
`static void`
`suggest(String key, String value)`
This method works like put except that it does not add a pair if the keys is in the _nullvalues setting or if the Setting is already set (unless it is set to the special value "default")
`static void`
`updateFromFile(String settingsFile)`
Try to read settings from a file

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### updateFromFile

public static void updateFromFile(String settingsFile)
Try to read settings from a file

### addArgs

public static void addArgs(String[] args)
Add settings from a list of arguments. This is probably the argument list given to main, but needn't be.

### addToken

public static void addToken(String arg)
Add a single argument token

### get

public static String get(String key)
Get a value corresponding to the key

### get

public static String get(String key, String dft)
Get a values corresponding to a key or the default

### getArray

public static String[] getArray(String key)
Get the values corresponding to a key as an array of strings. Returns null rather than a 0 length array if the value is not set.

### suggest

public static void suggest(String key, String value)
This method works like put except that it does not add a pair if the keys is in the _nullvalues setting or if the Setting is already set (unless it is set to the special value "default")

### put

public static void put(String key, String value)
Save a key and value

### save

public static void save()
Save the current state of the settings for a later restoration

### add

public static void add(String key, String value)
Add a setting to a list -- but only if it is not already in the list.

### has

public static boolean has(String key)
Check if the given key has been set

### getKeys

public static String[] getKeys()
Return the array of keys in the current settings

### restore

public static void restore()
Restore a previously saved state.

### pop

public static HashMap<String,String> pop()
Give a copy of the current settings and pop the stack

### push

public static void push(HashMap<String,String> top)