Package org.eclipse.jetty.http
Class HttpURI
- java.lang.Object
-
- org.eclipse.jetty.http.HttpURI
-
public class HttpURI extends java.lang.ObjectHttp URI. Parse an HTTP URI from a string or byte array. Given a URIhttp://user@host:port/path/info;param?query#fragmentthis 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.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classHttpURI.State
-
Field Summary
Fields Modifier and Type Field Description (package private) java.lang.String_decodedPathprivate java.lang.String_fragmentprivate java.lang.String_hostprivate java.lang.String_paramprivate java.lang.String_pathprivate int_portprivate java.lang.String_queryprivate java.lang.String_scheme(package private) java.lang.String_uriprivate java.lang.String_user
-
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 voidclear()static HttpURIcreateHttpURI(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.voiddecodeQueryTo(MultiMap<java.lang.String> parameters)voiddecodeQueryTo(MultiMap<java.lang.String> parameters, java.lang.String encoding)voiddecodeQueryTo(MultiMap<java.lang.String> parameters, java.nio.charset.Charset encoding)booleanequals(java.lang.Object o)java.lang.StringgetAuthority()java.lang.StringgetDecodedPath()java.lang.StringgetFragment()java.lang.StringgetHost()java.lang.StringgetParam()java.lang.StringgetPath()The parsed Path.java.lang.StringgetPathQuery()intgetPort()java.lang.StringgetQuery()java.lang.StringgetScheme()java.lang.StringgetUser()booleanhasQuery()booleanisAbsolute()voidparse(java.lang.String uri)voidparse(java.lang.String uri, int offset, int length)private voidparse(HttpURI.State state, java.lang.String uri, int offset, int end)voidparseConnect(java.lang.String uri)Deprecated.voidparseRequestTarget(java.lang.String method, java.lang.String uri)Parse according to https://tools.ietf.org/html/rfc7230#section-5.3voidsetAuthority(java.lang.String host, int port)voidsetParam(java.lang.String param)voidsetPath(java.lang.String path)voidsetPathQuery(java.lang.String path)voidsetQuery(java.lang.String query)voidsetScheme(java.lang.String scheme)java.lang.StringtoString()java.net.URItoURI()
-
-
-
Field Detail
-
_scheme
private java.lang.String _scheme
-
_user
private java.lang.String _user
-
_host
private java.lang.String _host
-
_port
private int _port
-
_path
private java.lang.String _path
-
_param
private java.lang.String _param
-
_query
private java.lang.String _query
-
_fragment
private java.lang.String _fragment
-
_uri
java.lang.String _uri
-
_decodedPath
java.lang.String _decodedPath
-
-
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)
-
parse
private void parse(HttpURI.State state, java.lang.String uri, int offset, int end)
-
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:
toStringin classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin 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()
-
-