public class HttpParameters
extends java.lang.Object
implements java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>, java.io.Serializable
SortedSet
of parameters collected from the request during message
signing. Parameter values are sorted as per ://oauth.net/core/1.0a/#anchor13. Every key/value pair will be
percent-encoded upon insertion. This class has special semantics tailored to
being useful for message signing; it's not a general purpose collection class
to handle request parameters.Constructor and Description |
---|
HttpParameters() |
Modifier and Type | Method and Description |
---|---|
void |
clear() |
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(java.lang.Object value) |
java.util.Set<java.util.Map.Entry<java.lang.String,java.util.SortedSet<java.lang.String>>> |
entrySet() |
java.util.SortedSet<java.lang.String> |
get(java.lang.Object key) |
java.lang.String |
getAsHeaderElement(java.lang.String key) |
java.lang.String |
getAsQueryString(java.lang.Object key)
Concatenates all values for the given key to a list of key/value pairs
suitable for use in a URL query string.
|
java.lang.String |
getAsQueryString(java.lang.Object key,
boolean percentEncode)
Concatenates all values for the given key to a list of key/value pairs
suitable for use in a URL query string.
|
java.lang.String |
getFirst(java.lang.Object key)
Convenience method for
#getFirst(key, false) . |
java.lang.String |
getFirst(java.lang.Object key,
boolean percentDecode)
Returns the first value from the set of all values for the given
parameter name.
|
HttpParameters |
getOAuthParameters() |
boolean |
isEmpty() |
java.util.Set<java.lang.String> |
keySet() |
java.util.SortedSet<java.lang.String> |
put(java.lang.String key,
java.util.SortedSet<java.lang.String> value) |
java.util.SortedSet<java.lang.String> |
put(java.lang.String key,
java.util.SortedSet<java.lang.String> values,
boolean percentEncode) |
java.lang.String |
put(java.lang.String key,
java.lang.String value)
Convenience method to add a single value for the parameter specified by
'key'.
|
java.lang.String |
put(java.lang.String key,
java.lang.String value,
boolean percentEncode)
Convenience method to add a single value for the parameter specified by
'key'.
|
void |
putAll(java.util.Map<? extends java.lang.String,? extends java.util.SortedSet<java.lang.String>> m) |
void |
putAll(java.util.Map<? extends java.lang.String,? extends java.util.SortedSet<java.lang.String>> m,
boolean percentEncode) |
void |
putAll(java.lang.String[] keyValuePairs,
boolean percentEncode) |
void |
putMap(java.util.Map<java.lang.String,java.util.List<java.lang.String>> m)
Convenience method to merge a Map
|
java.lang.String |
putNull(java.lang.String key,
java.lang.String nullString)
Convenience method to allow for storing null values.
|
java.util.SortedSet<java.lang.String> |
remove(java.lang.Object key) |
int |
size() |
java.util.Collection<java.util.SortedSet<java.lang.String>> |
values() |
public java.util.SortedSet<java.lang.String> put(java.lang.String key, java.util.SortedSet<java.lang.String> value)
put
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public java.util.SortedSet<java.lang.String> put(java.lang.String key, java.util.SortedSet<java.lang.String> values, boolean percentEncode)
public java.lang.String put(java.lang.String key, java.lang.String value)
key
- the parameter namevalue
- the parameter valuepublic java.lang.String put(java.lang.String key, java.lang.String value, boolean percentEncode)
key
- the parameter namevalue
- the parameter valuepercentEncode
- whether key and value should be percent encoded before being
inserted into the mappublic java.lang.String putNull(java.lang.String key, java.lang.String nullString)
put(java.lang.String, java.util.SortedSet<java.lang.String>)
doesn't
allow null values, because that would be ambiguous.key
- the parameter namenullString
- can be anything, but probably... null?public void putAll(java.util.Map<? extends java.lang.String,? extends java.util.SortedSet<java.lang.String>> m)
putAll
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public void putAll(java.util.Map<? extends java.lang.String,? extends java.util.SortedSet<java.lang.String>> m, boolean percentEncode)
public void putAll(java.lang.String[] keyValuePairs, boolean percentEncode)
public void putMap(java.util.Map<java.lang.String,java.util.List<java.lang.String>> m)
m
- the mappublic java.util.SortedSet<java.lang.String> get(java.lang.Object key)
get
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public java.lang.String getFirst(java.lang.Object key)
#getFirst(key, false)
.key
- the parameter name (must be percent encoded if it contains unsafe
characters!)public java.lang.String getFirst(java.lang.Object key, boolean percentDecode)
OAuth.percentEncode(String)
, otherwise the lookup will fail
(that's because upon storing values in this map, keys get
percent-encoded).key
- the parameter name (must be percent encoded if it contains unsafe
characters!)percentDecode
- whether the value being retrieved should be percent decodedpublic java.lang.String getAsQueryString(java.lang.Object key)
key
- the parameter namepublic java.lang.String getAsQueryString(java.lang.Object key, boolean percentEncode)
key
- the parameter namepercentEncode
- whether key should be percent encoded before being
used with the mappublic java.lang.String getAsHeaderElement(java.lang.String key)
public boolean containsKey(java.lang.Object key)
containsKey
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public boolean containsValue(java.lang.Object value)
containsValue
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public int size()
size
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public boolean isEmpty()
isEmpty
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public void clear()
clear
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public java.util.SortedSet<java.lang.String> remove(java.lang.Object key)
remove
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public java.util.Set<java.lang.String> keySet()
keySet
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public java.util.Collection<java.util.SortedSet<java.lang.String>> values()
values
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public java.util.Set<java.util.Map.Entry<java.lang.String,java.util.SortedSet<java.lang.String>>> entrySet()
entrySet
in interface java.util.Map<java.lang.String,java.util.SortedSet<java.lang.String>>
public HttpParameters getOAuthParameters()