Package: grails.web.servlet.mvc

## [Java] Class GrailsParameterMap

- grails.web.servlet.mvc.GrailsParameterMap

- All Implemented Interfaces and Traits:
    java.lang.Cloneable

      @java.lang.SuppressWarnings({ "rawtypes", "unchecked" })
      public class GrailsParameterMap
      extends TypeConvertingMap

  A parameter map class that allows mixing of request parameters and controller parameters. If a controller parameter is set with the same name as a request parameter the controller parameter value is retrieved.

  Authors:
    Graeme Rocher
    Lari Hotari
  Since:
    Oct 24, 2005

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `static java.lang.Object[]` | `EMPTY_ARGS` |
    `static java.lang.String` | `REQUEST_BODY_PARSED` |

  - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `class AbstractTypeConvertingMap` | `wrappedMap`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `GrailsParameterMap (java.util.Map values, javax.servlet.http.HttpServletRequest request)` Does not populate the GrailsParameterMap from the request but instead uses the supplied values.
    `GrailsParameterMap (javax.servlet.http.HttpServletRequest request)` Creates a GrailsParameterMap populating from the given request object

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `void` | `addParametersFrom(GrailsParameterMap otherMap)`
    `` | `java.lang.Object` | `clone()`
    `` | `java.lang.Object` | `get(java.lang.Object key)`
    `` | `java.util.Date` | `getDate(java.lang.String name)` Obtains a date for the parameter name using the default format
    `` | `java.lang.Object` | `getIdentifier()` @return The identifier in the request
    `` | `javax.servlet.http.HttpServletRequest` | `getRequest()` @return Returns the request.
    `` | `java.lang.Object` | `put(java.lang.Object key, java.lang.Object value)`
    `` | `void` | `putAll(java.util.Map map)`
    `` | `java.lang.Object` | `remove(java.lang.Object key)`
    `` | `java.lang.String` | `toQueryString()` Converts this parameter map into a query String.
    `` | `protected void` | `updateNestedKeys(java.util.Map keys)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class TypeConvertingMap` | `boolean, boolean, byte, byte, char, char, char, clone, double, double, float, float, int, int, long, long, short, short`
    `class AbstractTypeConvertingMap` | `asBoolean, clear, containsKey, containsValue, date, date, date, entrySet, equals, equals, get, getBoolean, getBoolean, getByte, getByte, getChar, getChar, getDate, getDate, getDouble, getDouble, getFloat, getFloat, getInt, getInt, getList, getLong, getLong, getShort, getShort, hashCode, isEmpty, keySet, list, put, putAll, remove, size, toString, values`
    `class groovy.lang.GroovyObjectSupport` | `groovy.lang.GroovyObjectSupport#getMetaClass(), groovy.lang.GroovyObjectSupport#setMetaClass(groovy.lang.MetaClass), groovy.lang.GroovyObjectSupport#invokeMethod(java.lang.String, java.lang.Object), groovy.lang.GroovyObjectSupport#setProperty(java.lang.String, java.lang.Object), groovy.lang.GroovyObjectSupport#getProperty(java.lang.String), groovy.lang.GroovyObjectSupport#wait(long, int), groovy.lang.GroovyObjectSupport#wait(long), groovy.lang.GroovyObjectSupport#wait(), groovy.lang.GroovyObjectSupport#equals(java.lang.Object), groovy.lang.GroovyObjectSupport#toString(), groovy.lang.GroovyObjectSupport#hashCode(), groovy.lang.GroovyObjectSupport#getClass(), groovy.lang.GroovyObjectSupport#notify(), groovy.lang.GroovyObjectSupport#notifyAll()`

- - ### Field Detail

    - #### public static final java.lang.Object[] EMPTY_ARGS

    - #### public static final java.lang.String REQUEST_BODY_PARSED

  - ### Constructor Detail

    - #### public GrailsParameterMap(java.util.Map values, javax.servlet.http.HttpServletRequest request)

      Does not populate the GrailsParameterMap from the request but instead uses the supplied values.

      Parameters:
        `values` - The values to populate with
        `request` - The request object

    - #### public GrailsParameterMap(javax.servlet.http.HttpServletRequest request)

      Creates a GrailsParameterMap populating from the given request object

      Parameters:
        `request` - The request object

  - ### Method Detail

    - #### public void addParametersFrom(GrailsParameterMap otherMap)

    - #### @java.lang.Override public java.lang.Object clone()

    - #### @java.lang.Override public java.lang.Object get(java.lang.Object key)

    - #### @java.lang.Override public java.util.Date getDate(java.lang.String name)

      Obtains a date for the parameter name using the default format

      Parameters:
        `name` - The name of the parameter
      Returns:
        A date or null

    - #### public java.lang.Object getIdentifier()

      Returns:
        The identifier in the request

    - #### public javax.servlet.http.HttpServletRequest getRequest()

      Returns:
        Returns the request.

    - #### @java.lang.Override public java.lang.Object put(java.lang.Object key, java.lang.Object value)

    - #### @java.lang.Override public void putAll(java.util.Map map)

    - #### @java.lang.Override public java.lang.Object remove(java.lang.Object key)

    - #### public java.lang.String toQueryString()

      Converts this parameter map into a query String. Note that this will flatten nested keys separating them with the . character and URL encode the result

      Returns:
        A query String starting with the ? character

    - #### protected void updateNestedKeys(java.util.Map keys)