package uri
- Alphabetic
- Public
- All
Type Members
- sealed trait AbsoluteOrEmptyPath extends UrlPath
This trait has two subclasses;
AbsolutePath
andEmptyPath
.This trait has two subclasses;
AbsolutePath
andEmptyPath
. This encompasses the paths allowed to be used in URLs that have an Authority. As per RFC 3986:When authority is present, the path must either be empty or begin with a slash ("/") character.
- final case class AbsolutePath(parts: Vector[String])(implicit config: UriConfig = UriConfig.default) extends AbsoluteOrEmptyPath with Product with Serializable
An AbsolutePath is a path that starts with a slash
- final case class AbsoluteUrl(scheme: String, authority: Authority, path: AbsoluteOrEmptyPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig = UriConfig.default) extends UrlWithAuthority with Product with Serializable
Represents absolute URLs, for example:
http://example.com
- case class Authority(userInfo: UserInfo, host: Host, port: Option[Int])(implicit config: UriConfig) extends Product with Serializable
- final case class DomainName(value: String) extends Host with PublicSuffixSupportImpl with PunycodeSupport with Product with Serializable
- sealed trait Host extends PublicSuffixSupport
- final case class IpV4(octet1: Byte, octet2: Byte, octet3: Byte, octet4: Byte) extends Host with Product with Serializable
- final case class IpV6(piece1: Char, piece2: Char, piece3: Char, piece4: Char, piece5: Char, piece6: Char, piece7: Char, piece8: Char) extends Host with Product with Serializable
- sealed trait Path extends Product with Serializable
- final case class ProtocolRelativeUrl(authority: Authority, path: AbsoluteOrEmptyPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig = UriConfig.default) extends UrlWithAuthority with Product with Serializable
Represents absolute URLs, for example:
//example.com
- case class QueryString(params: Vector[(String, Option[String])])(implicit config: UriConfig = UriConfig.default) extends Product with Serializable
- final case class RelativeUrl(path: UrlPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig = UriConfig.default) extends Url with Product with Serializable
Represents Relative URLs which do not contain an authority.
Represents Relative URLs which do not contain an authority. Examples include:
- Root Relative:
/index.html?a=b
- Rootless Relative:
index.html?a=b
- Rootless Relative
(with dot segment):
../index.html?a=b
- Root Relative:
- final case class RootlessPath(parts: Vector[String])(implicit config: UriConfig = UriConfig.default) extends UrlPath with Product with Serializable
- sealed trait Uri extends Product with Serializable
Represents a URI.
Represents a URI. See RFC 3986
Can either be a URL or a URN
URLs 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
URNs will be in the form
urn:example:example2
- Absolute:
- class UriConversionException extends UriException
- class UriException extends Exception
- sealed trait Url extends Uri
Represents a URL, which will be one of these forms:
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
- Absolute:
- sealed trait UrlPath extends Path
- sealed trait UrlWithAuthority extends Url
Represents absolute URLs with an authority (i.e.
Represents absolute URLs with an authority (i.e. URLs with a host), examples include:
- Absolute URL:
http://example.com
- Protocol Relative URL:
//example.com
- Absolute URL:
- final case class UrlWithoutAuthority(scheme: String, path: UrlPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig = UriConfig.default) extends Url with Product with Serializable
Represents URLs that do not have an authority, for example:
mailto:[email protected]
- final case class Urn(path: UrnPath)(implicit config: UriConfig = UriConfig.default) extends Uri with Product with Serializable
Represents a URN.
- final case class UrnPath(nid: String, nss: String)(implicit config: UriConfig = UriConfig.default) extends Path with Product with Serializable
- case class UserInfo(user: Option[String], password: Option[String]) extends Product with Serializable
Value Members
- object AbsolutePath extends Serializable
- object AbsoluteUrl extends Serializable
- object Authority extends Serializable
- object DomainName extends Serializable
- object EmptyPath extends AbsoluteOrEmptyPath with Product with Serializable
- object Host extends Serializable
- object IpV4 extends Serializable
- object IpV6 extends Serializable
- object Path extends Serializable
- object PathParts
- object ProtocolRelativeUrl extends Serializable
- object QueryString extends Serializable
- object RelativeUrl extends Serializable
- object RootlessPath extends Serializable
- object Uri extends Serializable
- object Url extends Serializable
- object UrlPath extends Serializable
- object UrlWithAuthority extends Serializable
- object UrlWithoutAuthority extends Serializable
- object Urn extends Serializable
- object UrnPath extends Serializable
- object UserInfo extends Serializable