public interface PortletPreferences
PortletPreferences interface allows the portlet to store
 configuration data. It is not the
 purpose of this interface to replace general purpose databases.
 There are two different types of preferences:
EDIT, HELP, VIEW).
     Per default every preference is modifiable.
 read-only set to true,
     or if the portlet container restricts write access.
 
 Changes are persisted when the store method is called. The store method 
 can only be invoked within the scope of a processAction call.
 Changes that are not persisted are discarded when the
 processAction or render method ends.
| Modifier and Type | Method and Description | 
|---|---|
| Map<String,String[]> | getMap()Returns a  Mapof the preferences. | 
| Enumeration<String> | getNames()Returns all of the keys that have an associated value,
 or an empty  Enumerationif no keys are
 available. | 
| String | getValue(String key,
        String def)Returns the first String value associated with the specified key of this preference. | 
| String[] | getValues(String key,
         String[] def)Returns the String array value associated with the specified key in this preference. | 
| boolean | isReadOnly(String key)Returns true, if the value of this key is defined as read-only and thus
 cannot be modified by the user. | 
| void | reset(String key)Resets or removes the value associated with the specified key. | 
| void | setValue(String key,
        String value)Associates the specified String value with the specified key in this
 preference. | 
| void | setValues(String key,
         String[] values)Associates the specified String array value with the specified key in this
 preference. | 
| void | store()Commits all changes made to the preferences via the 
  setmethods in the persistent store. | 
boolean isReadOnly(String key)
 Modifiable preferences can be changed by the
 portlet in any standard portlet mode (EDIT, HELP, VIEW). 
 Per default every preference is modifiable.
 
 Read-only preferences cannot be changed by the
 portlet in any standard portlet mode, but inside of custom modes,
 like the CONFIG mode, it may be allowed changing them.
 
 Preferences are read-only, if they are defined in the 
 deployment descriptor with read-only set to true,
 or if the portlet container restricts write access.
 
 Note that even if this call returns false and the 
 preference key is modifiable in general it does not mean that it
 is modifiable in the scope of the current request, e.g. if this
 request is a render request.
IllegalArgumentException - if key is null.String getValue(String key, String def)
null value is treated as a non-existent value.key - key for which the associated value is to be returneddef - the value to be returned in the event that there is no 
            value available associated with this key.key, or def
         if no value is associated with key, or the backing
         store is inaccessible.IllegalArgumentException - if key is null. (A 
         null value for def is permitted.)getValues(String, String[])String[] getValues(String key, String[] def)
Returns the specified default if there is no value
 associated with the key, or if the backing store is inaccessible.
 A null value is treated as a non-existent value.
 
If the implementation supports stored defaults and such a default exists and is accessible, it is used in favor of the specified default.
key - key for which associated value is to be returned.def - the value to be returned in the event that this
        preference node has no value associated with key
        or the associated value cannot be interpreted as a String array,
        or the backing store is inaccessible.key, or def if the
         associated value does not exist.IllegalArgumentException - if key is null.  (A 
         null value for def is permitted.)getValue(String,String)void setValue(String key, String value) throws ReadOnlyException
 The key cannot be null, but null values
 for the value parameter are allowed.
 
 If the same key contained already a String or String[]
 value it must be replaced by the new value.
key - key with which the specified value is to be associated.value - value to be associated with the specified key.ReadOnlyException - if this preference cannot be modified for this requestIllegalArgumentException - if key is null,
                 or key.length() 
                 or value.length are to long. The maximum length 
                 for key and value are implementation specific.setValues(String, String[])void setValues(String key, String[] values) throws ReadOnlyException
 The key cannot be null, but null values
 in the values parameter are allowed.
 
 If the same key contained already a String or String[]
 value it must be replaced by the new value.
key - key with which the  value is to be associatedvalues - values to be associated with keyIllegalArgumentException - if key is null, or
                 key.length() 
                 is to long or value.size is to large.  The maximum 
                 length for key and maximum size for value are implementation specific.ReadOnlyException - if this preference cannot be modified for this requestsetValue(String,String)Enumeration<String> getNames()
Enumeration if no keys are
 available.Enumeration if no keys are
         available.Map<String,String[]> getMap()
Map of the preferences.
 
 The values in the returned Map are from type
 String array (String[]).
 
 If no preferences exist this method returns an empty Map.
Map containing preference names as 
             keys and preference values as map values, or an empty Map
             if no preference exist. The keys in the preference
             map are of type String. The values in the preference map are of type
             String array (String[]).void reset(String key) throws ReadOnlyException
If this implementation supports stored defaults, and there is such a default for the specified preference, the given key will be reset to the stored default.
If there is no default available the key will be removed.
key - to resetIllegalArgumentException - if key is null.ReadOnlyException - if this preference cannot be modified for this requestvoid store()
           throws IOException,
                  ValidatorException
set methods in the persistent store.
 If this call returns successful, all changes are made persistent. If this call fails, no changes are made in the persistent store. This call is an atomic operation regardless of how many preference attributes have been modified.
 All changes made to preferences not followed by a call 
 to the store method are discarded when the 
 portlet finishes the processAction method.
 
 If a validator is defined for this preferences in the
 deployment descriptor, this validator is called before
 the actual store is performed to check whether the given
 preferences are valid. If this check fails a 
 ValidatorException is thrown.
IOException - if changes cannot be written into
                 the backend storeValidatorException - if the validation performed by the
                 associated validator failsIllegalStateException - if this method is called inside a render callPreferencesValidatorCopyright © 2004–2015 The Apache Software Foundation. All rights reserved.