Packages

object Uri extends Serializable

Source
Uri.scala
Linear Supertypes
Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Uri
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class Authority(userInfo: Option[UserInfo] = None, host: Host = RegName("localhost"), port: Option[Int] = None) extends Renderable with Product with Serializable
  2. type Fragment = String
  3. sealed trait Host extends Renderable
  4. final case class IPv4(address: CaseInsensitiveString) extends Host with Product with Serializable
  5. final case class IPv6(address: CaseInsensitiveString) extends Host with Product with Serializable
  6. class Macros extends AnyRef
  7. type Path = String
  8. final case class RegName(host: CaseInsensitiveString) extends Host with Product with Serializable
  9. final class Scheme extends Ordered[Scheme]

    A org.http4s.Uri may begin with a scheme name that refers to a specification for assigning identifiers within that scheme.

    A org.http4s.Uri may begin with a scheme name that refers to a specification for assigning identifiers within that scheme.

    If the scheme is defined, the URI is absolute. If the scheme is not defined, the URI is a relative reference.

    See also

    https://www.ietf.org/rfc/rfc3986.txt, Section 3.1

  10. type UserInfo = String

Value Members

  1. def decode(toDecode: String, charset: java.nio.charset.Charset = StandardCharsets.UTF_8, plusIsSpace: Boolean = false, toSkip: (Char) ⇒ Boolean = Function.const(false)): String

    Percent-decodes a string.

    Percent-decodes a string.

    toDecode

    the string to decode

    charset

    the charset of percent-encoded characters

    plusIsSpace

    true if '+' is to be interpreted as a ' '

    toSkip

    a predicate of characters whose percent-encoded form is left percent-encoded. Almost certainly should be left empty.

  2. def encode(toEncode: String, charset: java.nio.charset.Charset = StandardCharsets.UTF_8, spaceIsPlus: Boolean = false, toSkip: (Char) ⇒ Boolean = toSkip): String

    Percent-encodes a string.

    Percent-encodes a string. Depending on the parameters, this method is appropriate for URI or URL form encoding. Any resulting percent-encodings are normalized to uppercase.

    toEncode

    the string to encode

    charset

    the charset to use for characters that are percent encoded

    spaceIsPlus

    if space is not skipped, determines whether it will be rendreed as a "+" or a percent-encoding according to charset.

    toSkip

    a predicate of characters exempt from encoding. In typical use, this is composed of all Unreserved URI characters and sometimes a subset of Reserved URI characters.

  3. def fromString(s: String): ParseResult[Uri]

    Decodes the String to a Uri using the RFC 3986 uri decoding specification

  4. implicit val http4sUriEq: Eq[Uri]
  5. def pathEncode(s: String, charset: java.nio.charset.Charset = StandardCharsets.UTF_8): String
  6. def removeDotSegments(path: String): String

    Remove dot sequences from a Path, per RFC 3986 Sec 5.2.4 Adapted from" https://github.com/Norconex/commons-lang/blob/c83fdeac7a60ac99c8602e0b47056ad77b08f570/norconex-commons-lang/src/main/java/com/norconex/commons/lang/url/URLNormalizer.java#L429

  7. def requestTarget(s: String): ParseResult[Uri]

    Decodes the String to a Uri using the RFC 7230 section 5.3 uri decoding specification

  8. def resolve(base: Uri, reference: Uri): Uri

    Resolve a relative Uri reference, per RFC 3986 sec 5.2

  9. def unsafeFromString(s: String): Uri

    Parses a String to a Uri according to RFC 3986.

    Parses a String to a Uri according to RFC 3986. If decoding fails, throws a ParseFailure.

    For totality, call #fromString. For compile-time verification of literals, call #uri.

  10. object IPv4 extends Serializable
  11. object IPv6 extends Serializable
  12. object RegName extends Serializable
  13. object Scheme

Deprecated Value Members

  1. macro def uri(s: String): Uri

    Literal syntax for URIs.

    Literal syntax for URIs. Invalid or non-literal arguments are rejected at compile time.

    Annotations
    @deprecated
    Deprecated

    (Since version 0.20) use uri"" string interpolation instead