org.mortbay.util
Class UrlEncoded

java.lang.Object
  |
  +--java.util.AbstractMap
        |
        +--java.util.HashMap
              |
              +--org.mortbay.util.MultiMap
                    |
                    +--org.mortbay.util.UrlEncoded
All Implemented Interfaces:
java.lang.Cloneable, java.util.Map, java.io.Serializable

public class UrlEncoded
extends MultiMap

Handles coding of MIME "x-www-form-urlencoded". This class handles the encoding and decoding for either the query string of a URL or the content of a POST HTTP request.

Notes

The hashtable either contains String single values, vectors of String or arrays of Strings. This class is only partially synchronised. In particular, simple get operations are not protected from concurrent updates.

Version:
$Id: UrlEncoded.java,v 1.1 2001/09/02 01:13:09 gregwilkins Exp $
Author:
Greg Wilkins (gregw)
See Also:
URLEncoder, Serialized Form

Inner classes inherited from class java.util.Map
java.util.Map.Entry
 
Constructor Summary
UrlEncoded()
           
UrlEncoded(java.lang.String s)
           
UrlEncoded(UrlEncoded url)
           
 
Method Summary
 java.lang.Object clone()
          Clone MultiMap.
 void decode(java.lang.String query)
           
static java.lang.String decodeString(java.lang.String encoded)
          Decode String with % encoding.
static void decodeTo(java.lang.String content, MultiMap map)
           
 java.lang.String encode()
          Encode Hashtable with % encoding.
 java.lang.String encode(boolean equalsForNullValue)
          Encode Hashtable with % encoding.
static java.lang.String encodeString(java.lang.String string)
          Perform URL encoding.
static void main(java.lang.String[] a)
           
 
Methods inherited from class org.mortbay.util.MultiMap
add, addValues, addValues, addValues, getString, getValue, getValues, put, putAll, putValues, putValues, putValues, removeValue
 
Methods inherited from class java.util.HashMap
clear, containsKey, containsValue, entrySet, get, isEmpty, keySet, remove, size, values
 
Methods inherited from class java.util.AbstractMap
equals, hashCode, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

UrlEncoded

public UrlEncoded(UrlEncoded url)

UrlEncoded

public UrlEncoded()

UrlEncoded

public UrlEncoded(java.lang.String s)
Method Detail

decode

public void decode(java.lang.String query)

encode

public java.lang.String encode()
Encode Hashtable with % encoding.

encode

public java.lang.String encode(boolean equalsForNullValue)
Encode Hashtable with % encoding.
Parameters:
equalsForNullValue - if True, then an '=' is always used, even for parameters without a value. e.g. "blah?a=&b=&c=".

decodeTo

public static void decodeTo(java.lang.String content,
                            MultiMap map)

decodeString

public static java.lang.String decodeString(java.lang.String encoded)
Decode String with % encoding. This method makes the assumption that the majority of calls will need no decoding.

encodeString

public static java.lang.String encodeString(java.lang.String string)
Perform URL encoding.
Parameters:
string -  
Returns:
encoded string.

clone

public java.lang.Object clone()
Description copied from class: MultiMap
Clone MultiMap. Medium depth clone of map and lists, but not values.
Overrides:
clone in class MultiMap
Following copied from class: org.mortbay.util.MultiMap
Returns:
cloned MultiMap

main

public static void main(java.lang.String[] a)


Copyright © 2000 Mortbay Consulting Pty. Ltd. All Rights Reserved.