Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.struts2.config
Class Settings

    java.lang.Object
      org.apache.struts2.config.Settings

Direct Known Subclasses:
  DefaultSettings, DelegatingSettings, PropertiesSettings

     class Settings

extends Object

Settings retrieves and exposes default values used by the framework. An application can override a factory default and provide its own value for a setting.

Implementation of the class is pluggable (the default implementation is `DefaultSettings`). Pluggability gives applications to ability to customize how settings are retrieved. As an example, an application may wish to check some custom property store before delegating to the usual configuration and property files.

Key methods:

- `getLocale()`
- `get(String)`
- `set(String, String)`
- `list()`

Key methods for subclasses (plugins):

- `getImpl(String)`
- `setImpl(String, String)`
- `listImpl()`
- `isSetImpl(String)`

Field Summary
`(package private) static Settings` | `defaultImpl` An instance of `DefaultSettings` to use when another implementation is not provided (plugged in).
`(package private) static Locale` | `locale` An instance of the default locale as specified by the `struts.locale` setting.
`private static Log` | `LOG` The Logging instance for this class.
`(package private) static Settings` | `settingsImpl` A pluggable implementation of Settings, provided through the `setInstance(org.apache.struts2.config.Settings)` method.

Constructor Summary
`Settings()`

Method Summary
`static String` | `get(String name)` Provides a setting value as a String.
`private static Settings` | `getDefaultInstance()` Creates a default Settings object.
`String` | `getImpl(String name)` Implements the `get(String)` method.
`static Settings` | `getInstance()` Provides the Settings object.
`static Locale` | `getLocale()` Provides the Struts default locale.
`static Location` | `getLocation(String name)` Provides the Location of a setting.
`Location` | `getLocationImpl(String name)` Implements the `getLocation(String)` method.
`static boolean` | `isSet(String name)` Determines whether or not a setting has a registered value.
`boolean` | `isSetImpl(String name)` Implements the `isSet(String)` method.
`static Iterator` | `list()` Provides an Iterator of all properties names.
`Iterator` | `listImpl()` Implements the `list()` method.
`static void` | `reset()` Resets the default and any plugin Setting instance to null.
`static void` | `set(String name, String value)` Registers a value for a setting.
`void` | `setImpl(String name, String value)` Implements the `set(String, String)` method.
`static void` | `setInstance(Settings config)` Registers a custom Settings implementation (plugin), and resets the cached locale.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### settingsImpl

    static Settings settingsImpl

  A pluggable implementation of Settings, provided through the `setInstance(org.apache.struts2.config.Settings)` method.

### defaultImpl

    static Settings defaultImpl

  An instance of `DefaultSettings` to use when another implementation is not provided (plugged in).

### locale

    static Locale locale

  An instance of the default locale as specified by the `struts.locale` setting.

  See Also:
    `getLocale()`

### LOG

    private static final Log LOG

  The Logging instance for this class.

Constructor Detail

### Settings

    Settings()

Method Detail

### setInstance

    public static void setInstance(Settings config)
                            throws IllegalStateException

  Registers a custom Settings implementation (plugin), and resets the cached locale.

  This method can only be called once.

  Parameters:
    `config` - a Settings implementation
  Throws:
    `IllegalStateException` - if an error occurs when setting the settings implementation.

### getInstance

    public static Settings getInstance()

  Provides the Settings object.

  This method will substitute the default instance if another instance is not registered.

  Returns:
    the Settings object.

### getLocale

    public static Locale getLocale()

  Provides the Struts default locale.

  This method utilizes the `struts.locale` setting, which should be given as the Java `toString()` representation of a Locale object ("en", "de_DE", "_GB", "en_US_WIN", "de__POSIX", "fr_MAC", and so forth).

  If a `struts.locale` setting is not registered, then the default virtual machine locale is substituted and cached.

  Returns:
    the Struts default locale if specified or the VM default locale.
  See Also:
    `Locale.getDefault()`

### isSet

    public static boolean isSet(String name)

  Determines whether or not a setting has a registered value.

  This method is useful for testing for the existance of setting without throwing an IllegalArgumentException.

  Parameters:
    `name` - the name of a setting to test.
  Returns:
    `true` if the setting exists and has a value, `false` otherwise.

### get

    public static String get(String name)
                      throws IllegalArgumentException

  Provides a setting value as a String.

  The method will throw an `IllegalArgumentException` if an error occurs while retrieveing the property or if the property doesn't exist.

  Parameters:
    `name` - the name of the setting to retrieve.
  Returns:
    the setting value as a String.
  Throws:
    `IllegalArgumentException` - if an error occurs retrieving the property or the property does not exist.

### getLocation

    public static Location getLocation(String name)
                                throws IllegalArgumentException

  Provides the Location of a setting.

  The Location is utilized as part of precise error reporting.

  This method will throw an `IllegalArgumentException` if an error occurs while retrieving the value or if the setting doesn't exist.

  Parameters:
    `name` - the name of the property to get.
  Returns:
    the Location of a property.
  Throws:
    `IllegalArgumentException` - if an error occurs retrieving the property or the property does not exist.

### list

    public static Iterator list()

  Provides an Iterator of all properties names.

  Returns:
    an Iterator of all properties names.

### isSetImpl

    public boolean isSetImpl(String name)

  Implements the `isSet(String)` method.

  Parameters:
    `name` - Identifier for the setting value to change
  Returns:
    True if the setting exists and has a value, false otherwise.
  See Also:
    `isSet(String)`

### set

    public static void set(String name,
                           String value)
                    throws IllegalArgumentException,
                           UnsupportedOperationException

  Registers a value for a setting.

  This method raises an exception if an error occurs when setting the value or if the settings implementation does not support setting values.

  Parameters:
    `name` - the name of the setting.
    `value` - the value to register for the setting.
  Throws:
    `IllegalArgumentException` - if an error occurs when setting the value.
    `UnsupportedOperationException` - if the config implementation does not support setting values.

### setImpl

    public void setImpl(String name,
                        String value)
                 throws IllegalArgumentException,
                        UnsupportedOperationException

  Implements the `set(String, String)` method.

  Parameters:
    `name` - Identifer for the setting to change.
    `value` - The new value for the setting.
  Throws:
    `IllegalArgumentException` - if an error occurs when setting the value.
    `UnsupportedOperationException` - if the config implementation does not support setting values.
  See Also:
    `set(String, String)`

### getImpl

    public String getImpl(String name)
                   throws IllegalArgumentException

  Implements the `get(String)` method.

  Parameters:
    `name` - The name of the setting value to retreive
  Returns:
    The setting value as a String
  Throws:
    `IllegalArgumentException` - if an error occurs when retrieving the value
  See Also:
    `get(String)`

### getLocationImpl

    public Location getLocationImpl(String name)
                             throws IllegalArgumentException

  Implements the `getLocation(String)` method.

  Parameters:
    `name` - Name of the setting to locate
  Returns:
    The location of the setting
  Throws:
    `IllegalArgumentException` - if an error occurs when retrieving the value
  See Also:
    `getLocation(String)`

### listImpl

    public Iterator listImpl()

  Implements the `list()` method.

  Returns:
    A list of the settings as an iterator
  See Also:
    `list()`

### getDefaultInstance

    private static Settings getDefaultInstance()

  Creates a default Settings object.

  A default implementation may be specified by the `struts.configuration` setting; otherwise, this method instantiates `DefaultSettings` as the default implementation.

  Returns:
    A default Settings object.

### reset

    public static void reset()

  Resets the default and any plugin Setting instance to null.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.