Packages

sealed trait Url extends Uri

Represents a URL, which will be one of these forms:

  • Absolute: http://example.com
  • Protocol Relative: //example.com
  • Without Authority: mailto:[email protected]
  • Root Relative: /index.html?a=b
  • Rootless Relative: index.html?a=b
  • Rootless Relative (with doc segment): ../index.html?a=b
Linear Supertypes
Uri, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Url
  2. Uri
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. abstract type Self <: Url
    Definition Classes
    UrlUri
  2. abstract type SelfWithAuthority <: UrlWithAuthority
  3. abstract type SelfWithScheme <: UrlWithScheme
    Definition Classes
    UrlUri

Abstract Value Members

  1. abstract def authorityOption: Option[Authority]
  2. abstract def canEqual(that: Any): Boolean
    Definition Classes
    Equals
  3. implicit abstract def config: UriConfig
    Definition Classes
    Uri
  4. abstract def fragment: Option[String]
  5. abstract def hostOption: Option[Host]
  6. abstract def longestSubdomain: Option[String]

    Returns the longest subdomain for this URL's host.

    Returns the longest subdomain for this URL's host. E.g. for http://a.b.c.example.com returns a.b.c.example

    returns

    the longest subdomain for this URL's host

  7. abstract def mapPassword(f: (String) => String): Self

    Transforms this URL by applying the specified Function to the password if it exists

  8. abstract def mapUser(f: (String) => String): Self

    Transforms this URL by applying the specified Function to the user if it exists

  9. abstract def normalize(removeEmptyPathParts: Boolean = false, slashTermination: SlashTermination = SlashTermination.AddForEmptyPath): Self

    Normalizes this

  10. abstract def password: Option[String]
  11. abstract def path: UrlPath
    Definition Classes
    UrlUri
  12. abstract def port: Option[Int]
  13. abstract def productArity: Int
    Definition Classes
    Product
  14. abstract def productElement(n: Int): Any
    Definition Classes
    Product
  15. abstract def publicSuffix: Option[String]

    Returns the longest public suffix for the host in this URI.

    Returns the longest public suffix for the host in this URI. Examples include: com for www.example.com co.uk for www.example.co.uk

    returns

    the longest public suffix for the host in this URI

  16. abstract def publicSuffixes: Vector[String]

    Returns all longest public suffixes for the host in this URI.

    Returns all longest public suffixes for the host in this URI. Examples include: com for www.example.com co.uk and uk for www.example.co.uk

    returns

    all public suffixes for the host in this URI

  17. abstract def query: QueryString
  18. abstract def removePassword(): Self

    Removes any password from this URL's user-info

    Removes any password from this URL's user-info

    returns

    This URL without the password

  19. abstract def removeUserInfo(): Self

    Removes the user-info (both user and password) from this URL

    Removes the user-info (both user and password) from this URL

    returns

    This URL without the user-info

  20. abstract def schemeOption: Option[String]
    Definition Classes
    Uri
  21. abstract def shortestSubdomain: Option[String]

    Returns the shortest subdomain for this URL's host.

    Returns the shortest subdomain for this URL's host. E.g. for http://a.b.c.example.com returns a

    returns

    the shortest subdomain for this URL's host

  22. abstract def subdomain: Option[String]

    Returns the second largest subdomain for this URL's host.

    Returns the second largest subdomain for this URL's host.

    E.g. for http://a.b.c.example.com returns a.b.c

    Note: In the event there is only one subdomain (i.e. the host is the apex domain), this method returns None. E.g. This method will return None for http://example.com.

    returns

    the second largest subdomain for this URL's host

  23. abstract def subdomains: Vector[String]

    Returns all subdomains for this URL's host.

    Returns all subdomains for this URL's host. E.g. for http://a.b.c.example.com returns a, a.b, a.b.c and a.b.c.example

    returns

    all subdomains for this URL's host

  24. abstract def user: Option[String]
  25. abstract def withAuthority(authority: Authority): SelfWithAuthority

    Copies this Url but with the authority set as the given value.

    Copies this Url but with the authority set as the given value.

    authority

    the authority to set

    returns

    a new Url with the specified authority

  26. abstract def withConfig(config: UriConfig): Self

    Copies this Uri but with a new UriConfig

    Copies this Uri but with a new UriConfig

    config

    the new config to use

    returns

    a new Uri with the specified config

    Definition Classes
    Uri
  27. abstract def withFragment[T](fragment: T)(implicit arg0: Fragment[T]): Self

    Copies this Url but with the fragment set as the given value.

    Copies this Url but with the fragment set as the given value.

    fragment

    the new fragment to set

    returns

    a new Url with the specified fragment

  28. abstract def withHost(host: Host): SelfWithAuthority

    Copies this Url but with the host set as the given value.

    Copies this Url but with the host set as the given value.

    host

    the new host to set

    returns

    a new Url with the specified host

  29. abstract def withPath(path: UrlPath): Self

    Copies this Url but with the path set as the given value.

    Copies this Url but with the path set as the given value.

    path

    the new path to set

    returns

    a new Url with the specified path

  30. abstract def withQueryString(query: QueryString): Self

    Copies this Url but with the query set as the given value.

    Copies this Url but with the query set as the given value.

    query

    the new QueryString to set

    returns

    a new Url with the specified query

  31. abstract def withScheme(scheme: String): SelfWithScheme

    Copies this Uri but with the scheme set as the given value.

    Copies this Uri but with the scheme set as the given value.

    scheme

    the new scheme to set

    returns

    a new Uri with the specified scheme

    Definition Classes
    Uri

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def addParam[K, V](k: K, v: V)(implicit arg0: QueryKey[K], arg1: QueryValue[V]): Self

    Adds a new Query String parameter key-value pair.

    Adds a new Query String parameter key-value pair.

    Pairs with values, such as Some("value"), represent query params with values, i.e ?param=value

    By default, pairs without values, i.e None, represent query params without values, i.e ?param Using a UriConfig(renderQuery = ExcludeNones), will cause pairs with None values not to be rendered

    k

    value that provides a name pair for the parameter. Can be a any basic value type or a custom type if you provide a QueryKey type-class

    v

    value that provides a value for the parameter. Can be a any basic value type or a custom type if you provide a QueryValue type-class

    returns

    A new Url with the new Query String parameter

  5. def addParam[A](a: A)(implicit arg0: QueryKeyValue[A]): Self

    Adds a new Query String parameter key-value pair.

    Adds a new Query String parameter key-value pair.

    Pairs with values, such as Some("value"), represent query params with values, i.e ?param=value

    By default, pairs without values, i.e None, represent query params without values, i.e ?param Using a UriConfig(renderQuery = ExcludeNones), will cause pairs with None values not to be rendered

    a

    value that provides a name/value pair for the parameter. Can be a Tuple of any basic value types or a custom type if you provide a QueryKeyValue type-class

    returns

    A new Url with the new Query String parameter

  6. def addParams[KV](first: KV, second: KV, params: KV*)(implicit arg0: QueryKeyValue[KV]): Self

    Adds all the specified key-value pairs as parameters to the query

    Adds all the specified key-value pairs as parameters to the query

    params

    A list of key-value pairs to add as query parameters

    returns

    A new Url with the new Query String parameters

  7. def addParams[A](params: A)(implicit arg0: TraversableParams[A]): Self

    Adds all the specified key-value pairs as parameters to the query

    Adds all the specified key-value pairs as parameters to the query

    params

    A list of key-value pairs to add as query parameters

    returns

    A new Url with the new Query String parameters

  8. def addPathPart[P](part: P)(implicit arg0: PathPart[P]): Self
  9. def addPathParts[P](first: P, second: P, parts: P*)(implicit arg0: PathPart[P]): Self
  10. def addPathParts[P](parts: P)(implicit arg0: TraversablePathParts[P]): Self
  11. def apexDomain: Option[String]

    Returns the apex domain for this URL.

    Returns the apex domain for this URL.

    The apex domain is constructed from the public suffix for this URL's host prepended with the immediately preceding dot segment.

    Examples include: example.com for www.example.com example.co.uk for www.example.co.uk

    returns

    the apex domain for this URL

  12. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  13. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  14. def collectQuery[KV](f: PartialFunction[(String, Option[String]), KV])(implicit arg0: QueryKeyValue[KV]): Self

    Transforms the Query String by applying the specified PartialFunction to each Query String Parameter

    Transforms the Query String by applying the specified PartialFunction to each Query String Parameter

    Parameters not defined in the PartialFunction will be removed.

    f

    A function that returns a new Parameter when applied to each Parameter

  15. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  17. def equalsUnordered(other: Uri): Boolean

    Similar to == but ignores the ordering of any query string parameters

    Similar to == but ignores the ordering of any query string parameters

    Definition Classes
    UrlUri
  18. def filterQuery(f: ((String, Option[String])) => Boolean): Self

    Removes any Query String Parameters that return false when applied to the given Function

  19. def filterQueryNames(f: (String) => Boolean): Self

    Removes any Query String Parameters that return false when their name is applied to the given Function

  20. def filterQueryValues(f: (String) => Boolean): Self

    Removes any Query String Parameters that return false when their value is applied to the given Function

  21. def flatMapQuery[A](f: ((String, Option[String])) => A)(implicit arg0: TraversableParams[A]): Self

    Transforms the Query String by applying the specified Function to each Query String Parameter

    Transforms the Query String by applying the specified Function to each Query String Parameter

    f

    A function that returns a collection of Parameters when applied to each parameter

  22. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  23. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  24. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  25. def mapQuery[KV](f: PartialFunction[(String, Option[String]), KV])(implicit arg0: QueryKeyValue[KV]): Self

    Transforms the Query String by applying the specified PartialFunction to each Query String Parameter

    Transforms the Query String by applying the specified PartialFunction to each Query String Parameter

    Parameters not defined in the PartialFunction will be left as-is.

    f

    A function that returns a new Parameter when applied to each Parameter

  26. def mapQueryNames[K](f: (String) => K)(implicit arg0: QueryKey[K]): Self

    Transforms the Query String by applying the specified Function to each Query String Parameter name

    Transforms the Query String by applying the specified Function to each Query String Parameter name

    f

    A function that returns a new Parameter name when applied to each Parameter name

  27. def mapQueryValues[V](f: (String) => V)(implicit arg0: QueryValue[V]): Self

    Transforms the Query String by applying the specified Function to each Query String Parameter value

    Transforms the Query String by applying the specified Function to each Query String Parameter value

    f

    A function that returns a new Parameter value when applied to each Parameter value

  28. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  29. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  30. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  31. def productElementName(n: Int): String
    Definition Classes
    Product
  32. def productElementNames: Iterator[String]
    Definition Classes
    Product
  33. def productIterator: Iterator[Any]
    Definition Classes
    Product
  34. def productPrefix: String
    Definition Classes
    Product
  35. def queryToString(config: UriConfig): String
    Attributes
    protected
  36. def removeEmptyPathParts(): Self
  37. def removeParams[K](k: Iterable[K])(implicit arg0: QueryKey[K]): Self

    Removes all Query String parameters with a name in the specified list

    Removes all Query String parameters with a name in the specified list

    k

    Names of Query String parameter(s) to remove

  38. def removeParams[K](first: K, second: K, rest: K*)(implicit arg0: QueryKey[K]): Self

    Removes all Query String parameters with a name in the specified list

    Removes all Query String parameters with a name in the specified list

    first

    Name of a Query String parameter to remove

    second

    Name of another Query String parameter to remove

    rest

    Name of more Query String parameter(s) to remove

  39. def removeParams[K](k: K)(implicit arg0: QueryKey[K]): Self

    Removes all Query String parameters with the specified key

    Removes all Query String parameters with the specified key

    k

    Key for the Query String parameter(s) to remove

  40. def removeQueryString(): Self

    Removes all Query String parameters

  41. def replaceParams[K, V](k: K, v: V)(implicit arg0: QueryKey[K], arg1: QueryValue[V]): Self

    Replaces the all existing Query String parameters with the specified key with a single Query String parameter with the specified value.

    Replaces the all existing Query String parameters with the specified key with a single Query String parameter with the specified value.

    Pairs with values, such as ("param", Some("value")), represent query params with values, i.e ?param=value

    By default, pairs without values, such as ("param", None), represent query params without values, i.e ?param Using a UriConfig(renderQuery = ExcludeNones), will cause pairs with None values not to be rendered

    k

    Key for the Query String parameter(s) to replace

    v

    value to replace with

    returns

    A new Uri with the result of the replace

  42. def resolve(base: UrlWithScheme, strict: Boolean = false): UrlWithScheme

    returns

    this URL resolved with the given URL as the base according to section 5.2.2 Transform References of RFC 3986.

  43. def slashTerminated(slashTermination: SlashTermination = SlashTermination.AddForAll): Self
  44. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  45. def toAbsoluteUrl: AbsoluteUrl
  46. def toJavaURI: URI

    Converts to a java.net.URI

    Converts to a java.net.URI

    This involves a toString and URI.parse because the specific java.net.URI constructors do not deal properly with encoded elements

    returns

    a java.net.URI matching this io.lemonlabs.uri.Uri

    Definition Classes
    Uri
  47. def toProtocolRelativeUrl: ProtocolRelativeUrl
  48. def toRedactedString(redactor: Redactor)(implicit conf: UriConfig = UriConfig.default): String
  49. def toRelativeUrl: RelativeUrl
  50. def toString(): String
    Definition Classes
    Uri → AnyRef → Any
  51. def toStringPunycode: String

    returns

    the URL as a String. If the URI has a domain name for a host, any unicode characters will be returned in ASCII Compatible Encoding (ACE), as defined by the ToASCII operation of RFC 3490.

  52. def toStringRaw: String

    Returns the path with no encoders taking place (e.g.

    Returns the path with no encoders taking place (e.g. non ASCII characters will not be percent encoded)

    returns

    String containing the raw path for this Uri

    Definition Classes
    Uri
  53. def toUrl: Url
    Definition Classes
    UrlUri
  54. def toUrn: Urn
    Definition Classes
    UrlUri
  55. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  56. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  57. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  58. def withHost(host: String): SelfWithAuthority

    Copies this Url but with the host set as the given value.

    Copies this Url but with the host set as the given value.

    host

    the new host to set

    returns

    a new Url with the specified host

  59. def withPathParts[P](parts: P)(implicit arg0: TraversablePathParts[P]): Self

    Copies this Url but with the path set as the given value.

    Copies this Url but with the path set as the given value.

    parts

    the parts that make up the new path

    returns

    a new Url with the specified path

  60. def withQueryString[KV](first: KV, second: KV, params: KV*)(implicit arg0: QueryKeyValue[KV]): Self

    Replaces the all existing Query String parameters with a new set of query params

  61. def withQueryString[T](params: T)(implicit arg0: TraversableParams[T]): Self

    Replaces the all existing Query String parameters with a new set of query params

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from Uri

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped