Interface ParameterParser

  • All Superinterfaces:
    Iterable<String>, ValueParser
    All Known Implementing Classes:
    DefaultParameterParser

    public interface ParameterParser
    extends ValueParser
    ParameterParser is an interface to a utility to handle parsing and retrieving the data passed via the GET/POST/PATH_INFO arguments.

    NOTE: The name= portion of a name=value pair may be converted to lowercase or uppercase when the object is initialized and when new data is added. This behaviour is determined by the url.case.folding property in TurbineResources.properties. Adding a name/value pair may overwrite existing name=value pairs if the names match:

     ParameterParser pp = data.getParameters();
     pp.add("ERROR",1);
     pp.add("eRrOr",2);
     int result = pp.getInt("ERROR");
     
    In the above example, result is 2.
    Version:
    $Id$
    Author:
    Ilkka Priha, Jon S. Stevens, Sean Legassick, Jürgen Hoffmann, Thomas Vandahl
    • Method Detail

      • setRequest

        void setRequest​(HttpServletRequest req)
        Sets the servlet request to be parser. This requires a valid HttpServletRequest object. It will attempt to parse out the GET/POST/PATH_INFO data and store the data into a Hashtable. There are convenience methods for retrieving the data as a number of different datatypes. The PATH_INFO data must be a URLEncoded() string.

        To add name/value pairs to this set of parameters, use the add() methods.

        Parameters:
        req - An HttpServletRequest.
      • setUploadData

        void setUploadData​(byte[] uploadData)
        Sets the uploadData byte[]
        Parameters:
        uploadData - A byte[] with data.
      • getUploadData

        byte[] getUploadData()
        Gets the uploadData byte[]
        Returns:
        uploadData A byte[] with data.
      • add

        void add​(String name,
                 Part value)
        Add a Part object as a parameters. If there are any Parts already associated with the name, append to the array. The reason for this is that RFC 1867 allows multiple files to be associated with single HTML input element.
        Parameters:
        name - A String with the name.
        value - A Part with the value.
      • getPart

        Part getPart​(String name)
        Return a Part object for the given name. If the name does not exist or the object stored is not a Part, return null.
        Parameters:
        name - A String with the name.
        Returns:
        A Part.
      • getParts

        Part[] getParts​(String name)
        Return an array of Part objects for the given name. If the name does not exist or the object stored is not a Part array, return null.
        Parameters:
        name - A String with the name.
        Returns:
        A Part[].
      • getParts

        Collection<PartgetParts()
        Return an array of all Part objects. If no parts exist or the object stored is not a Part array, return an empty list.
        Returns:
        Collection Collection of parts
      • getFileName

        String getFileName​(Part part)
        Convenience fileName utility, which extracts the filename from header
        Parameters:
        part - The part which represents the uploaded file
        Returns:
        the fileName String object.