org.apache.shindig.common.uri
Class UriBuilder

java.lang.Object
  extended by org.apache.shindig.common.uri.UriBuilder

public final class UriBuilder
extends Object

Constructs Uris from inputs. Note that the builder will only automatically encode query parameters that are added. Other parameters must be encoded explicitly.


Constructor Summary
UriBuilder()
          Create an empty builder.
UriBuilder(javax.servlet.http.HttpServletRequest req)
          Construct a new builder from a servlet request.
UriBuilder(Uri uri)
          Construct a new builder from an existing uri.
 
Method Summary
 UriBuilder addFragmentParameter(String name, String value)
           
 UriBuilder addFragmentParameters(Map<String,String> parameters)
           
 UriBuilder addQueryParameter(String name, String value)
           
 UriBuilder addQueryParameters(Map<String,String> parameters)
           
 boolean equals(Object obj)
           
 String getAuthority()
           
 String getFragment()
           
 String getFragmentParameter(String name)
           
 Map<String,List<String>> getFragmentParameters()
           
 List<String> getFragmentParameters(String name)
           
 String getPath()
           
 String getQuery()
           
 String getQueryParameter(String name)
           
 Map<String,List<String>> getQueryParameters()
           
 List<String> getQueryParameters(String name)
           
 String getScheme()
           
 int hashCode()
           
static String joinParameters(Map<String,List<String>> query)
          Utility method for joining key / value pair parameters into a url-encoded string.
static UriBuilder parse(String text)
          Construct a builder by parsing a string.
 UriBuilder putFragmentParameter(String name, Iterable<String> values)
          Force overwrites a given fragment parameter with the given value.
 UriBuilder putFragmentParameter(String name, String... values)
          Force overwrites a given fragment parameter with the given value.
 UriBuilder putQueryParameter(String name, Iterable<String> values)
          Force overwrites a given query parameter with the given value.
 UriBuilder putQueryParameter(String name, String... values)
          Force overwrites a given query parameter with the given value.
 UriBuilder removeFragmentParameter(String name)
          Removes a fragment parameter.
 UriBuilder removeQueryParameter(String name)
          Removes a query parameter.
 UriBuilder setAuthority(String authority)
           
 UriBuilder setFragment(String str)
           
 UriBuilder setPath(String path)
          Sets the path component of the Uri.
 UriBuilder setQuery(String str)
          Assigns the specified query string as the query portion of the uri, automatically decoding parameters to populate the parameter map for calls to getParameter.
 UriBuilder setScheme(String scheme)
           
static Map<String,List<String>> splitParameters(String query)
          Utility method for splitting a parameter string into key / value pairs.
 String toString()
           
 Uri toUri()
          Convert the builder to a Uri.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UriBuilder

public UriBuilder(Uri uri)
Construct a new builder from an existing uri.


UriBuilder

public UriBuilder(javax.servlet.http.HttpServletRequest req)
Construct a new builder from a servlet request.


UriBuilder

public UriBuilder()
Create an empty builder.

Method Detail

parse

public static UriBuilder parse(String text)
Construct a builder by parsing a string.


toUri

public Uri toUri()
Convert the builder to a Uri.


getScheme

public String getScheme()
Returns:
The scheme part of the uri, or null if none was specified.

setScheme

public UriBuilder setScheme(String scheme)

getAuthority

public String getAuthority()
Returns:
The authority part of the uri, or null if none was specified.

setAuthority

public UriBuilder setAuthority(String authority)

getPath

public String getPath()
Returns:
The path part of the uri, or null if none was specified.

setPath

public UriBuilder setPath(String path)
Sets the path component of the Uri.


getQuery

public String getQuery()
Returns:
The queryParameters fragment.

setQuery

public UriBuilder setQuery(String str)
Assigns the specified query string as the query portion of the uri, automatically decoding parameters to populate the parameter map for calls to getParameter.


addQueryParameter

public UriBuilder addQueryParameter(String name,
                                    String value)

addQueryParameters

public UriBuilder addQueryParameters(Map<String,String> parameters)

putQueryParameter

public UriBuilder putQueryParameter(String name,
                                    String... values)
Force overwrites a given query parameter with the given value.


putQueryParameter

public UriBuilder putQueryParameter(String name,
                                    Iterable<String> values)
Force overwrites a given query parameter with the given value.


removeQueryParameter

public UriBuilder removeQueryParameter(String name)
Removes a query parameter.


getQueryParameters

public Map<String,List<String>> getQueryParameters()
Returns:
The queryParameters part of the uri, separated into component parts.

getQueryParameters

public List<String> getQueryParameters(String name)
Returns:
All queryParameters parameters with the given name.

getQueryParameter

public String getQueryParameter(String name)
Returns:
The first queryParameters parameter value with the given name.

getFragment

public String getFragment()
Returns:
The queryParameters fragment.

setFragment

public UriBuilder setFragment(String str)

addFragmentParameter

public UriBuilder addFragmentParameter(String name,
                                       String value)

addFragmentParameters

public UriBuilder addFragmentParameters(Map<String,String> parameters)

putFragmentParameter

public UriBuilder putFragmentParameter(String name,
                                       String... values)
Force overwrites a given fragment parameter with the given value.


putFragmentParameter

public UriBuilder putFragmentParameter(String name,
                                       Iterable<String> values)
Force overwrites a given fragment parameter with the given value.


removeFragmentParameter

public UriBuilder removeFragmentParameter(String name)
Removes a fragment parameter.


getFragmentParameters

public Map<String,List<String>> getFragmentParameters()
Returns:
The fragmentParameters part of the uri, separated into component parts.

getFragmentParameters

public List<String> getFragmentParameters(String name)
Returns:
All fragmentParameters parameters with the given name.

getFragmentParameter

public String getFragmentParameter(String name)
Returns:
The first fragmentParameters parameter value with the given name.

joinParameters

public static String joinParameters(Map<String,List<String>> query)
Utility method for joining key / value pair parameters into a url-encoded string.


splitParameters

public static Map<String,List<String>> splitParameters(String query)
Utility method for splitting a parameter string into key / value pairs.


toString

public String toString()
Overrides:
toString in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object obj)
Overrides:
equals in class Object


Copyright © 2007-2012. All Rights Reserved.