Package akka.http.scaladsl.model
Class Uri$
- java.lang.Object
-
- akka.http.scaladsl.model.Uri$
-
- All Implemented Interfaces:
java.io.Serializable
public class Uri$ extends java.lang.Object implements java.io.Serializable
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Uri$()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Uri
apply(akka.parboiled2.ParserInput input)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1.Uri
apply(akka.parboiled2.ParserInput input, Uri.ParsingMode mode)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1.Uri
apply(akka.parboiled2.ParserInput input, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1.Uri
apply(java.lang.String input)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1.Uri
apply(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
Creates a new Uri instance from the given components.Uri.Path
collapseDotSegments(Uri.Path path)
Uri
create(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
Uri
create(java.lang.String scheme, java.lang.String userinfo, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
Uri
createUnsafe(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
'Unsafe' in the sense that queryString validation must already have been done.java.lang.String
decode(java.lang.String string, java.nio.charset.Charset charset)
java.lang.String
decode(java.lang.String string, java.nio.charset.Charset charset, int ix, java.lang.StringBuilder sb)
Uri
effectiveHttpRequestUri(java.lang.String scheme, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> query, scala.Option<java.lang.String> fragment, boolean securedConnection, Uri.Host hostHeaderHost, int hostHeaderPort, Uri.Authority defaultAuthority)
Converts a set of URI components to an "effective HTTP request URI" as defined by http://tools.ietf.org/html/rfc7230#section-5.5.Uri
effectiveRequestUri(java.lang.String scheme, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> query, scala.Option<java.lang.String> fragment, java.lang.String defaultScheme, Uri.Host hostHeaderHost, int hostHeaderPort, Uri.Authority defaultAuthority)
Converts a set of URI components to an "effective request URI" as defined by http://tools.ietf.org/html/rfc7230#section-5.5.scala.runtime.Nothing$
fail(java.lang.String summary, java.lang.String detail)
Uri
from(java.lang.String scheme, java.lang.String userinfo, java.lang.String host, int port, java.lang.String path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment, Uri.ParsingMode mode)
Creates a new Uri instance from the given components.java.lang.String
httpScheme(boolean securedConnection)
java.lang.String
normalize(akka.parboiled2.ParserInput uri, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Normalizes the given URI string by performing the following normalizations: - thescheme
andhost
components are converted to lowercase - a potentially existingport
component is removed if it matches one of the defined default ports for the scheme - percent-encoded octets are decoded if allowed, otherwise they are converted to uppercase hex notation -.
and..
path segments are resolved as far as possibleint
normalizePort(int port, java.lang.String scheme)
java.lang.String
normalizeScheme(java.lang.String scheme)
Uri
parseAbsolute(akka.parboiled2.ParserInput input, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses a string into a normalized absolute URI as defined by http://tools.ietf.org/html/rfc3986#section-4.3.Uri
parseAndResolve(akka.parboiled2.ParserInput string, Uri base, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses a string into a normalized URI reference that is immediately resolved against the given base URI as defined by http://tools.ietf.org/html/rfc3986#section-5.2.Uri.Authority
parseHttp2AuthorityPseudoHeader(akka.parboiled2.ParserInput headerValue, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses the given string as if it were the value of an HTTP/2 ":authority" pseudo-header.scala.Tuple2<Uri.Path,scala.Option<java.lang.String>>
parseHttp2PathPseudoHeader(akka.parboiled2.ParserInput headerValue, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses the given string as if it were the value of an HTTP/2 ":path" pseudo-header.Uri
parseHttpRequestTarget(akka.parboiled2.ParserInput requestTarget, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses the given string into an HTTP request target URI as defined by http://tools.ietf.org/html/rfc7230#section-5.3.Uri
resolveUnsafe(java.lang.String scheme, java.lang.String userinfo, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> query, scala.Option<java.lang.String> fragment, Uri base)
https://tools.ietf.org/html/rfc3986#section-5.2.2Uri.Path
verifyPath(Uri.Path path, java.lang.String scheme, Uri.Host host)
java.lang.String
websocketScheme(boolean securedConnection)
-
-
-
Field Detail
-
MODULE$
public static final Uri$ MODULE$
Static reference to the singleton instance of this Scala object.
-
-
Method Detail
-
apply
public Uri apply(java.lang.String input)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1. Percent-encoded octets are UTF-8 decoded. Accepts unencoded visible 7-bit ASCII characters in addition to the RFC. If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
input
- (undocumented)- Returns:
- (undocumented)
-
apply
public Uri apply(akka.parboiled2.ParserInput input)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1. Percent-encoded octets are decoded using the given charset (where specified by the RFC). Accepts unencoded visible 7-bit ASCII characters in addition to the rfc. If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
input
- (undocumented)- Returns:
- (undocumented)
-
apply
public Uri apply(akka.parboiled2.ParserInput input, Uri.ParsingMode mode)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1. Percent-encoded octets are decoded using the given charset (where specified by the RFC). If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.input
- (undocumented)- Returns:
- (undocumented)
-
apply
public Uri apply(akka.parboiled2.ParserInput input, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses a valid URI string into a normalized URI reference as defined by http://tools.ietf.org/html/rfc3986#section-4.1. Percent-encoded octets are decoded using the given charset (where specified by the RFC). If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.input
- (undocumented)charset
- (undocumented)- Returns:
- (undocumented)
-
apply
public Uri apply(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
Creates a new Uri instance from the given components. All components are verified and normalized except the authority which is kept as provided. If the given combination of components does not constitute a valid URI as defined by http://tools.ietf.org/html/rfc3986 the method throws anIllegalUriException
.- Parameters:
queryString
- percent-encoded query string. When characters are encountered that are outside of the RFC3986 range they are automatically percent-encodedscheme
- (undocumented)authority
- (undocumented)path
- (undocumented)fragment
- (undocumented)- Returns:
- (undocumented)
-
from
public Uri from(java.lang.String scheme, java.lang.String userinfo, java.lang.String host, int port, java.lang.String path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment, Uri.ParsingMode mode)
Creates a new Uri instance from the given components. All components are verified and normalized. If the given combination of components does not constitute a valid URI as defined by http://tools.ietf.org/html/rfc3986 the method throws anIllegalUriException
.- Parameters:
scheme
- (undocumented)userinfo
- (undocumented)host
- (undocumented)port
- (undocumented)path
- (undocumented)queryString
- (undocumented)fragment
- (undocumented)mode
- (undocumented)- Returns:
- (undocumented)
-
parseAbsolute
public Uri parseAbsolute(akka.parboiled2.ParserInput input, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses a string into a normalized absolute URI as defined by http://tools.ietf.org/html/rfc3986#section-4.3. Percent-encoded octets are decoded using the given charset (where specified by the RFC). If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.input
- (undocumented)charset
- (undocumented)- Returns:
- (undocumented)
-
parseAndResolve
public Uri parseAndResolve(akka.parboiled2.ParserInput string, Uri base, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses a string into a normalized URI reference that is immediately resolved against the given base URI as defined by http://tools.ietf.org/html/rfc3986#section-5.2. Note that the given base Uri must be absolute (i.e. define a scheme). Percent-encoded octets are decoded using the given charset (where specified by the RFC). If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.string
- (undocumented)base
- (undocumented)charset
- (undocumented)- Returns:
- (undocumented)
-
parseHttpRequestTarget
public Uri parseHttpRequestTarget(akka.parboiled2.ParserInput requestTarget, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses the given string into an HTTP request target URI as defined by http://tools.ietf.org/html/rfc7230#section-5.3. If the given string is not a valid URI the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.requestTarget
- (undocumented)charset
- (undocumented)- Returns:
- (undocumented)
-
parseHttp2PathPseudoHeader
public scala.Tuple2<Uri.Path,scala.Option<java.lang.String>> parseHttp2PathPseudoHeader(akka.parboiled2.ParserInput headerValue, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses the given string as if it were the value of an HTTP/2 ":path" pseudo-header. The result is a path and a query string as defined in https://tools.ietf.org/html/rfc7540#section-8.1.2.3 If the given string is not a valid path or query string the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.headerValue
- (undocumented)charset
- (undocumented)- Returns:
- path and percent-encoded query string. When in in 'relaxed' mode, characters not permitted by https://tools.ietf.org/html/rfc3986#section-3.4 are already automatically percent-encoded here
-
parseHttp2AuthorityPseudoHeader
public Uri.Authority parseHttp2AuthorityPseudoHeader(akka.parboiled2.ParserInput headerValue, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Parses the given string as if it were the value of an HTTP/2 ":authority" pseudo-header. The result is an authority object. https://tools.ietf.org/html/rfc7540#section-8.1.2.3 If the given string is not a valid path or query string the method throws anIllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.headerValue
- (undocumented)charset
- (undocumented)- Returns:
- (undocumented)
-
normalize
public java.lang.String normalize(akka.parboiled2.ParserInput uri, java.nio.charset.Charset charset, Uri.ParsingMode mode)
Normalizes the given URI string by performing the following normalizations: - thescheme
andhost
components are converted to lowercase - a potentially existingport
component is removed if it matches one of the defined default ports for the scheme - percent-encoded octets are decoded if allowed, otherwise they are converted to uppercase hex notation -.
and..
path segments are resolved as far as possibleIf the given string is not a valid URI the method throws an
IllegalUriException
.- Parameters:
mode
- ifRelaxed
, accepts unencoded visible 7-bit ASCII characters in addition to the RFC.uri
- (undocumented)charset
- (undocumented)- Returns:
- (undocumented)
-
effectiveHttpRequestUri
public Uri effectiveHttpRequestUri(java.lang.String scheme, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> query, scala.Option<java.lang.String> fragment, boolean securedConnection, Uri.Host hostHeaderHost, int hostHeaderPort, Uri.Authority defaultAuthority)
Converts a set of URI components to an "effective HTTP request URI" as defined by http://tools.ietf.org/html/rfc7230#section-5.5.- Parameters:
scheme
- (undocumented)host
- (undocumented)port
- (undocumented)path
- (undocumented)query
- (undocumented)fragment
- (undocumented)securedConnection
- (undocumented)hostHeaderHost
- (undocumented)hostHeaderPort
- (undocumented)defaultAuthority
- (undocumented)- Returns:
- (undocumented)
-
effectiveRequestUri
public Uri effectiveRequestUri(java.lang.String scheme, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> query, scala.Option<java.lang.String> fragment, java.lang.String defaultScheme, Uri.Host hostHeaderHost, int hostHeaderPort, Uri.Authority defaultAuthority)
Converts a set of URI components to an "effective request URI" as defined by http://tools.ietf.org/html/rfc7230#section-5.5.- Parameters:
scheme
- (undocumented)host
- (undocumented)port
- (undocumented)path
- (undocumented)query
- (undocumented)fragment
- (undocumented)defaultScheme
- (undocumented)hostHeaderHost
- (undocumented)hostHeaderPort
- (undocumented)defaultAuthority
- (undocumented)- Returns:
- (undocumented)
-
httpScheme
public java.lang.String httpScheme(boolean securedConnection)
-
websocketScheme
public java.lang.String websocketScheme(boolean securedConnection)
-
resolveUnsafe
public Uri resolveUnsafe(java.lang.String scheme, java.lang.String userinfo, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> query, scala.Option<java.lang.String> fragment, Uri base)
https://tools.ietf.org/html/rfc3986#section-5.2.2'Unsafe' in the sense that queryString validation must already have been done.
- Parameters:
query
- percent-encoded query string that must be guaranteed not to contain invalid percent-encodings or characters not allowed by the RFC.scheme
- (undocumented)userinfo
- (undocumented)host
- (undocumented)port
- (undocumented)path
- (undocumented)fragment
- (undocumented)base
- (undocumented)- Returns:
- (undocumented)
-
decode
public java.lang.String decode(java.lang.String string, java.nio.charset.Charset charset)
-
decode
public java.lang.String decode(java.lang.String string, java.nio.charset.Charset charset, int ix, java.lang.StringBuilder sb)
-
normalizeScheme
public java.lang.String normalizeScheme(java.lang.String scheme)
-
normalizePort
public int normalizePort(int port, java.lang.String scheme)
-
fail
public scala.runtime.Nothing$ fail(java.lang.String summary, java.lang.String detail)
-
create
public Uri create(java.lang.String scheme, java.lang.String userinfo, Uri.Host host, int port, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
- Parameters:
queryString
- percent-encoded query string. When characters are encountered that are outside of the RFC3986 range they are automatically percent-encodedscheme
- (undocumented)userinfo
- (undocumented)host
- (undocumented)port
- (undocumented)path
- (undocumented)fragment
- (undocumented)- Returns:
- (undocumented)
-
create
public Uri create(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
- Parameters:
queryString
- percent-encoded query string. When characters are encountered that are outside of the RFC3986 range they are automatically percent-encodedscheme
- (undocumented)authority
- (undocumented)path
- (undocumented)fragment
- (undocumented)- Returns:
- (undocumented)
-
createUnsafe
public Uri createUnsafe(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)
'Unsafe' in the sense that queryString validation must already have been done.- Parameters:
queryString
- percent-encoded query string that must be guaranteed not to contain invalid percent-encodings or characters not allowed by the RFC.scheme
- (undocumented)authority
- (undocumented)path
- (undocumented)fragment
- (undocumented)- Returns:
- (undocumented)
-
-