Package org.eclipse.jetty.http
Class HttpURI
- java.lang.Object
-
- org.eclipse.jetty.http.HttpURI
-
public class HttpURI extends java.lang.Object
Http URI. Parse an HTTP URI from a string or byte array. Given a URIhttp://user@host:port/path/info;param?query#fragment
this class will split it into the following undecoded optional elements:getScheme()
- http:getAuthority()
- //name@host:portgetHost()
- hostgetPort()
- portgetPath()
- /path/infogetParam()
- paramgetQuery()
- querygetFragment()
- fragment
Any parameters will be returned from
getPath()
, but are excluded from the return value ofgetDecodedPath()
. If there are multiple parameters, thegetParam()
method returns only the last one.
-
-
Constructor Summary
Constructors Constructor Description HttpURI()
HttpURI(java.lang.String uri)
HttpURI(java.lang.String scheme, java.lang.String host, int port, java.lang.String pathQuery)
HttpURI(java.lang.String scheme, java.lang.String host, int port, java.lang.String path, java.lang.String param, java.lang.String query, java.lang.String fragment)
HttpURI(java.net.URI uri)
HttpURI(HttpURI uri)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
clear()
static HttpURI
createHttpURI(java.lang.String scheme, java.lang.String host, int port, java.lang.String path, java.lang.String param, java.lang.String query, java.lang.String fragment)
Construct a normalized URI.void
decodeQueryTo(MultiMap<java.lang.String> parameters)
void
decodeQueryTo(MultiMap<java.lang.String> parameters, java.lang.String encoding)
void
decodeQueryTo(MultiMap<java.lang.String> parameters, java.nio.charset.Charset encoding)
boolean
equals(java.lang.Object o)
java.lang.String
getAuthority()
java.lang.String
getDecodedPath()
java.lang.String
getFragment()
java.lang.String
getHost()
java.lang.String
getParam()
java.lang.String
getPath()
The parsed Path.java.lang.String
getPathQuery()
int
getPort()
java.lang.String
getQuery()
java.lang.String
getScheme()
java.lang.String
getUser()
boolean
hasQuery()
boolean
isAbsolute()
void
parse(java.lang.String uri)
void
parse(java.lang.String uri, int offset, int length)
void
parseConnect(java.lang.String uri)
Deprecated.void
parseRequestTarget(java.lang.String method, java.lang.String uri)
Parse according to https://tools.ietf.org/html/rfc7230#section-5.3void
setAuthority(java.lang.String host, int port)
void
setParam(java.lang.String param)
void
setPath(java.lang.String path)
void
setPathQuery(java.lang.String path)
void
setQuery(java.lang.String query)
void
setScheme(java.lang.String scheme)
java.lang.String
toString()
java.net.URI
toURI()
-
-
-
Constructor Detail
-
HttpURI
public HttpURI()
-
HttpURI
public HttpURI(java.lang.String scheme, java.lang.String host, int port, java.lang.String path, java.lang.String param, java.lang.String query, java.lang.String fragment)
-
HttpURI
public HttpURI(HttpURI uri)
-
HttpURI
public HttpURI(java.lang.String uri)
-
HttpURI
public HttpURI(java.net.URI uri)
-
HttpURI
public HttpURI(java.lang.String scheme, java.lang.String host, int port, java.lang.String pathQuery)
-
-
Method Detail
-
createHttpURI
public static HttpURI createHttpURI(java.lang.String scheme, java.lang.String host, int port, java.lang.String path, java.lang.String param, java.lang.String query, java.lang.String fragment)
Construct a normalized URI. Port is not set if it is the default port.- Parameters:
scheme
- the URI schemehost
- the URI hoseport
- the URI portpath
- the URI pathparam
- the URI paramquery
- the URI queryfragment
- the URI fragment- Returns:
- the normalized URI
-
parse
public void parse(java.lang.String uri)
-
parseRequestTarget
public void parseRequestTarget(java.lang.String method, java.lang.String uri)
Parse according to https://tools.ietf.org/html/rfc7230#section-5.3- Parameters:
method
- the request methoduri
- the request uri
-
parseConnect
@Deprecated public void parseConnect(java.lang.String uri)
Deprecated.
-
parse
public void parse(java.lang.String uri, int offset, int length)
-
getScheme
public java.lang.String getScheme()
-
getHost
public java.lang.String getHost()
-
getPort
public int getPort()
-
getPath
public java.lang.String getPath()
The parsed Path.- Returns:
- the path as parsed on valid URI. null for invalid URI.
-
getDecodedPath
public java.lang.String getDecodedPath()
-
getParam
public java.lang.String getParam()
-
setParam
public void setParam(java.lang.String param)
-
getQuery
public java.lang.String getQuery()
-
hasQuery
public boolean hasQuery()
-
getFragment
public java.lang.String getFragment()
-
decodeQueryTo
public void decodeQueryTo(MultiMap<java.lang.String> parameters)
-
decodeQueryTo
public void decodeQueryTo(MultiMap<java.lang.String> parameters, java.lang.String encoding) throws java.io.UnsupportedEncodingException
- Throws:
java.io.UnsupportedEncodingException
-
decodeQueryTo
public void decodeQueryTo(MultiMap<java.lang.String> parameters, java.nio.charset.Charset encoding) throws java.io.UnsupportedEncodingException
- Throws:
java.io.UnsupportedEncodingException
-
clear
public void clear()
-
isAbsolute
public boolean isAbsolute()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
setScheme
public void setScheme(java.lang.String scheme)
-
setAuthority
public void setAuthority(java.lang.String host, int port)
- Parameters:
host
- the hostport
- the port
-
setPath
public void setPath(java.lang.String path)
- Parameters:
path
- the path
-
setPathQuery
public void setPathQuery(java.lang.String path)
-
setQuery
public void setQuery(java.lang.String query)
-
toURI
public java.net.URI toURI() throws java.net.URISyntaxException
- Throws:
java.net.URISyntaxException
-
getPathQuery
public java.lang.String getPathQuery()
-
getAuthority
public java.lang.String getAuthority()
-
getUser
public java.lang.String getUser()
-
-