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 Uriapply(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.Uriapply(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.Uriapply(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.Uriapply(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.Uriapply(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.PathcollapseDotSegments(Uri.Path path)Uricreate(java.lang.String scheme, Uri.Authority authority, Uri.Path path, scala.Option<java.lang.String> queryString, scala.Option<java.lang.String> fragment)Uricreate(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)UricreateUnsafe(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.Stringdecode(java.lang.String string, java.nio.charset.Charset charset)java.lang.Stringdecode(java.lang.String string, java.nio.charset.Charset charset, int ix, java.lang.StringBuilder sb)UrieffectiveHttpRequestUri(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.UrieffectiveRequestUri(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)Urifrom(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.StringhttpScheme(boolean securedConnection)java.lang.Stringnormalize(akka.parboiled2.ParserInput uri, java.nio.charset.Charset charset, Uri.ParsingMode mode)Normalizes the given URI string by performing the following normalizations: - theschemeandhostcomponents are converted to lowercase - a potentially existingportcomponent 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 possibleintnormalizePort(int port, java.lang.String scheme)java.lang.StringnormalizeScheme(java.lang.String scheme)UriparseAbsolute(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.UriparseAndResolve(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.AuthorityparseHttp2AuthorityPseudoHeader(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.UriparseHttpRequestTarget(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.UriresolveUnsafe(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.PathverifyPath(Uri.Path path, java.lang.String scheme, Uri.Host host)java.lang.StringwebsocketScheme(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: - theschemeandhostcomponents are converted to lowercase - a potentially existingportcomponent 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)
-
-