Class ServletRequestConfiguration

All Implemented Interfaces:
Configuration

A configuration wrapper to read the parameters of a servlet request. This configuration is read only, adding or removing a property will throw an UnsupportedOperationException.
Since:
1.1
Version:
$Id: ServletRequestConfiguration.java 1211131 2011-12-06 20:57:37Z oheger $
Author:
Emmanuel Bourg
  • Field Details

    • request

      protected javax.servlet.ServletRequest request
      Stores the wrapped request.
  • Constructor Details

    • ServletRequestConfiguration

      public ServletRequestConfiguration(javax.servlet.ServletRequest request)
      Create a ServletRequestConfiguration using the request parameters.
      Parameters:
      request - the servlet request
  • Method Details

    • getProperty

      public Object getProperty(String key)
      Description copied from interface: Configuration
      Gets a property from the configuration. This is the most basic get method for retrieving values of properties. In a typical implementation of the Configuration interface the other get methods (that return specific data types) will internally make use of this method. On this level variable substitution is not yet performed. The returned object is an internal representation of the property value for the passed in key. It is owned by the Configuration object. So a caller should not modify this object. It cannot be guaranteed that this object will stay constant over time (i.e. further update operations on the configuration may change its internal state).
      Parameters:
      key - property to retrieve
      Returns:
      the value to which this configuration maps the specified key, or null if the configuration contains no mapping for this key.
    • getKeys

      public Iterator<String> getKeys()
      Description copied from interface: Configuration
      Get the list of the keys contained in the configuration. The returned iterator can be used to obtain all defined keys. Note that the exact behavior of the iterator's remove() method is specific to a concrete implementation. It may remove the corresponding property from the configuration, but this is not guaranteed. In any case it is no replacement for calling Configuration.clearProperty(String) for this property. So it is highly recommended to avoid using the iterator's remove() method.
      Returns:
      An Iterator.
    • isEmpty

      public boolean isEmpty()
      Checks if this configuration is empty. This implementation makes use of the getKeys() method (which must be defined by concrete sub classes) to find out whether properties exist.
      Returns:
      a flag whether this configuration is empty
    • containsKey

      public boolean containsKey(String key)
      Checks whether the specified key is stored in this configuration.
      Parameters:
      key - the key
      Returns:
      a flag whether this key exists in this configuration
    • clearProperty

      public void clearProperty(String key)
      Removes the property with the given key. This operation is not supported and will throw an UnsupportedOperationException.
      Specified by:
      clearProperty in interface Configuration
      Overrides:
      clearProperty in class AbstractConfiguration
      Parameters:
      key - the key of the property to be removed
      Throws:
      UnsupportedOperationException - because this operation is not allowed
    • addPropertyDirect

      protected void addPropertyDirect(String key, Object obj)
      Adds a property to this configuration. This operation is not supported and will throw an UnsupportedOperationException.
      Specified by:
      addPropertyDirect in class AbstractConfiguration
      Parameters:
      key - the key of the property
      obj - the value to be added
      Throws:
      UnsupportedOperationException - because this operation is not allowed
    • handleDelimiters

      protected Object handleDelimiters(Object value)
      Takes care of list delimiters in property values. This method checks if delimiter parsing is enabled and the passed in value contains a delimiter character. If this is the case, a split operation is performed.
      Parameters:
      value - the property value to be examined
      Returns:
      the processed value