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

## org.jboss.portal.portlet.impl.jsr168.api
Class PortletPreferencesImpl

    java.lang.Object
      org.jboss.portal.portlet.impl.jsr168.api.PortletPreferencesImpl

All Implemented Interfaces:
  PortletPreferences

Direct Known Subclasses:
  JBossPortletPreferences

    public class PortletPreferencesImpl

extends java.lang.Object
implements PortletPreferences

Version:
  $Revision: 6757 $
Author:
  Julien Viet

Field Summary
`static int` | `ACTION` Indicates the object is used during a action phase.
`protected ContainerPreferencesInfo` | `containerPrefs` .
`protected static org.apache.log4j.Logger` | `log` The logger.
`protected int` | `mode` .
`protected PropertyContext` | `prefs` .
`static int` | `RENDER` Indicates the object is used during a render phase.
`protected java.util.Map` | `updates` Keep track of updates
`protected PreferencesValidator` | `validator` .

Constructor Summary
`PortletPreferencesImpl(PropertyContext prefs, ContainerPreferencesInfo containerPrefs, PreferencesValidator validator, int mode)`

Method Summary
`java.util.Map` | `getMap()` Returns a `Map` of the preferences.
`java.util.Enumeration` | `getNames()` Returns all of the keys that have an associated value, or an empty `Enumeration` if no keys are available.
`java.lang.String` | `getValue(java.lang.String key, java.lang.String def)` Returns the first String value associated with the specified key of this preference.
`java.lang.String[]` | `getValues(java.lang.String key, java.lang.String[] def)` Returns the String array value associated with the specified key in this preference.
`boolean` | `isReadOnly(java.lang.String key)` Returns true, if the value of this key cannot be modified by the user.
`void` | `reset(java.lang.String key)` Resets or removes the value associated with the specified key.
`void` | `setValue(java.lang.String key, java.lang.String value)` Associates the specified String value with the specified key in this preference.
`void` | `setValues(java.lang.String key, java.lang.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 `set` methods in the persistent store.

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

Field Detail

### log

    protected static final org.apache.log4j.Logger log

  The logger.

### ACTION

    public static final int ACTION

  Indicates the object is used during a action phase.

  See Also:
    Constant Field Values

### RENDER

    public static final int RENDER

  Indicates the object is used during a render phase.

  See Also:
    Constant Field Values

### prefs

    protected final PropertyContext prefs

  .

### validator

    protected final PreferencesValidator validator

  .

### containerPrefs

    protected final ContainerPreferencesInfo containerPrefs

  .

### mode

    protected final int mode

  .

### updates

    protected final java.util.Map updates

  Keep track of updates

Constructor Detail

### PortletPreferencesImpl

    public PortletPreferencesImpl(PropertyContext prefs,
                                  ContainerPreferencesInfo containerPrefs,
                                  PreferencesValidator validator,
                                  int mode)

Method Detail

### getMap

    public java.util.Map getMap()

  Description copied from interface: `PortletPreferences`
  Returns a `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`.

  Specified by:
    `getMap` in interface `PortletPreferences`
  Returns:
    an immutable `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[]`).

### getNames

    public java.util.Enumeration getNames()

  Description copied from interface: `PortletPreferences`
  Returns all of the keys that have an associated value, or an empty `Enumeration` if no keys are available.

  Specified by:
    `getNames` in interface `PortletPreferences`
  Returns:
    an Enumeration of the keys that have an associated value, or an empty `Enumeration` if no keys are available.

### getValue

    public java.lang.String getValue(java.lang.String key,
                                     java.lang.String def)
                              throws java.lang.IllegalArgumentException

  Description copied from interface: `PortletPreferences`
  Returns the first String value associated with the specified key of this preference. If there is one or more preference values associated with the given key it returns the first associated value. If there are no preference values associated with the given key, or the backing preference database is unavailable, it returns the given default value.

  Specified by:
    `getValue` in interface `PortletPreferences`
  Parameters:
    `key` - key for which the associated value is to be returned
    `def` - the value to be returned in the event that there is no value available associated with this `key`.
  Returns:
    the value associated with `key`, or `def` if no value is associated with `key`, or the backing store is inaccessible.
  Throws:
    `java.lang.IllegalArgumentException` - if `key` is `null`. (A `null` value for `def` is permitted.)
  See Also:
    `PortletPreferences.getValues(String,String[])`

### getValues

    public java.lang.String[] getValues(java.lang.String key,
                                        java.lang.String[] def)
                                 throws java.lang.IllegalArgumentException

  Description copied from interface: `PortletPreferences`
  Returns the String array value associated with the specified key in this preference.

  Returns the specified default if there is no value associated with the key, or if the backing store is inaccessible.

  If the implementation supports stored defaults and such a default exists and is accessible, it is used in favor of the specified default.

  Specified by:
    `getValues` in interface `PortletPreferences`
  Parameters:
    `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.
  Returns:
    the String array value associated with `key`, or `def` if the associated value does not exist.
  Throws:
    `java.lang.IllegalArgumentException` - if `key` is `null`. (A `null` value for `def` is permitted.)
  See Also:
    `PortletPreferences.getValue(String,String)`

### isReadOnly

    public boolean isReadOnly(java.lang.String key)
                       throws java.lang.IllegalArgumentException,
                              java.lang.IllegalArgumentException

  Description copied from interface: `PortletPreferences`
  Returns true, if the value of this key cannot be modified by the user.

  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 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.

  Specified by:
    `isReadOnly` in interface `PortletPreferences`
  Returns:
    false, if the value of this key can be changed, or if the key is not known
  Throws:
    `java.lang.IllegalArgumentException` - if `key` is `null`.

### reset

    public void reset(java.lang.String key)
               throws java.lang.IllegalArgumentException,
                      ReadOnlyException

  Description copied from interface: `PortletPreferences`
  Resets or removes the value associated with the specified key.

  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.

  Specified by:
    `reset` in interface `PortletPreferences`
  Parameters:
    `key` - to reset
  Throws:
    `java.lang.IllegalArgumentException` - if key is `null`.
    `ReadOnlyException` - if this preference cannot be modified for this request

### setValue

    public void setValue(java.lang.String key,
                         java.lang.String value)
                  throws java.lang.IllegalArgumentException,
                         ReadOnlyException

  Description copied from interface: `PortletPreferences`
  Associates the specified String value with the specified key in this preference.

  The key cannot be `null`, but `null` values for the value parameter are allowed.

  Specified by:
    `setValue` in interface `PortletPreferences`
  Parameters:
    `key` - key with which the specified value is to be associated.
    `value` - value to be associated with the specified key.
  Throws:
    `java.lang.IllegalArgumentException` - if key is `null`, or `key.length()` or `value.length` are to long. The maximum length for key and value are implementation specific.
    `ReadOnlyException` - if this preference cannot be modified for this request
  See Also:
    `PortletPreferences.setValues(String,String[])`

### setValues

    public void setValues(java.lang.String key,
                          java.lang.String[] values)
                   throws java.lang.IllegalArgumentException,
                          ReadOnlyException

  Description copied from interface: `PortletPreferences`
  Associates the specified String array value with the specified key in this preference.

  The key cannot be `null`, but `null` values in the values parameter are allowed.

  Specified by:
    `setValues` in interface `PortletPreferences`
  Parameters:
    `key` - key with which the value is to be associated
    `values` - values to be associated with key
  Throws:
    `java.lang.IllegalArgumentException` - 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 request
  See Also:
    `PortletPreferences.setValue(String,String)`

### store

    public void store()
               throws java.io.IOException,
                      ValidatorException

  Description copied from interface: `PortletPreferences`
  Commits all changes made to the preferences via the `set` methods in the persistent store.

  If this call returns succesfull, 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 wether the given preferences are vaild. If this check fails a `ValidatorException` is thrown.

  Specified by:
    `store` in interface `PortletPreferences`
  Throws:
    `java.io.IOException` - if changes cannot be written into the backend store
    `ValidatorException` - if the validation performed by the associated validator fails
  See Also:
    `PreferencesValidator`

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