io.lemonlabs.uri

Members list

Concise view

Type members

Classlikes

sealed trait AbsoluteOrEmptyPath extends UrlPath

This trait has two subclasses; AbsolutePath and EmptyPath. This encompasses the paths allowed to be used in URLs that have an Authority. As per RFC 3986:

This trait has two subclasses; AbsolutePath and EmptyPath. 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.

Attributes

Companion:
object
Graph
Supertypes
trait UrlPath
trait Path
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
object EmptyPath.type

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class AbsolutePath(parts: Vector[String])(implicit config: UriConfig) extends AbsoluteOrEmptyPath

An AbsolutePath is a path that starts with a slash

An AbsolutePath is a path that starts with a slash

Attributes

Companion:
object
Graph
Supertypes
trait UrlPath
trait Path
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class AbsoluteUrl(scheme: String, authority: Authority, path: AbsoluteOrEmptyPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig) extends UrlWithAuthority with UrlWithScheme

Represents absolute URLs, for example: http://example.com

Represents absolute URLs, for example: http://example.com

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
case class Authority(userInfo: Option[UserInfo], host: Host, port: Option[Int])(implicit config: UriConfig)

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object Authority

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class DataUrl(mediaType: MediaType, base64: Boolean, data: Array[Byte])(implicit config: UriConfig) extends UrlWithoutAuthority

Represents URLs with the data scheme, for example: data:text/plain;charset=UTF-8;page=21,the%20data:1234,5678

Represents URLs with the data scheme, for example: data:text/plain;charset=UTF-8;page=21,the%20data:1234,5678

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object DataUrl

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
DataUrl.type
final case class DomainName(value: String)(implicit conf: UriConfig) extends Host with PunycodeSupport

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Host
class Object
trait Matchable
class Any
object DomainName

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
case object EmptyPath extends AbsoluteOrEmptyPath

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait UrlPath
trait Path
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Self type
sealed trait Host

Attributes

Companion:
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class IpV4
class IpV6
object Host

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Host.type
final case class IpV4(octet1: Byte, octet2: Byte, octet3: Byte, octet4: Byte)(implicit conf: UriConfig) extends Host

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Host
class Object
trait Matchable
class Any
object IpV4

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
IpV4.type
final case class IpV6(piece1: Char, piece2: Char, piece3: Char, piece4: Char, piece5: Char, piece6: Char, piece7: Char, piece8: Char)(implicit conf: UriConfig) extends Host

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait Host
class Object
trait Matchable
class Any
object IpV6

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
IpV6.type
case class MediaType(rawValue: Option[String], parameters: Vector[(String, String)])

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object MediaType

Attributes

Companion:
class
Graph
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
sealed trait Path extends Product with Serializable

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
object Path

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Path.type
object PathParts

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class ProtocolRelativeUrl(authority: Authority, path: AbsoluteOrEmptyPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig) extends UrlWithAuthority

Represents protocol relative URLs, for example: //example.com

Represents protocol relative URLs, for example: //example.com

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
case class QueryString(params: Vector[(String, Option[String])])(implicit config: UriConfig)

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class RelativeUrl(path: UrlPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig) extends Url

Represents Relative URLs which do not contain an authority. Examples include:

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

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class RootlessPath(parts: Vector[String])(implicit config: UriConfig) extends UrlPath

Attributes

Companion:
object
Graph
Supertypes
trait UrlPath
trait Path
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class ScpLikeUrl(user: Option[String], host: Host, path: UrlPath)(implicit config: UriConfig) extends UrlWithAuthority

Represents scp-like URLs, for example: [email protected]:lemonlabsuk/scala-uri.git

Represents scp-like URLs, for example: [email protected]:lemonlabsuk/scala-uri.git

From the scp manpage: [user@]host:[path]

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object ScpLikeUrl

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class SimpleUrlWithoutAuthority(scheme: String, path: UrlPath, query: QueryString, fragment: Option[String])(implicit config: UriConfig) extends UrlWithoutAuthority

Represents URLs that do not have an authority, for example: mailto:[email protected]

Represents URLs that do not have an authority, for example: mailto:[email protected]

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait Uri extends Product with Serializable

Represents a URI. See RFC 3986

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

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
object Uri

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Uri.type
class UriConversionException(msg: String) extends UriException

Attributes

Graph
Supertypes
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
class UriException(msg: String) extends Exception

Attributes

Graph
Supertypes
class Exception
class Throwable
trait Serializable
class Object
trait Matchable
class Any
Known subtypes
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

Attributes

Companion:
object
Graph
Supertypes
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
object Url

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Url.type
sealed trait UrlPath extends Path

Attributes

Companion:
object
Graph
Supertypes
trait Path
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
object UrlPath

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
UrlPath.type
sealed trait UrlWithAuthority extends Url

Represents absolute URLs with an authority (i.e. URLs with a host), examples include:

Represents absolute URLs with an authority (i.e. URLs with a host), examples include:

  •      Absolute URL: `http://example.com`
    
  • Protocol Relative URL: //example.com

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait UrlWithScheme extends Url

Attributes

Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
sealed trait UrlWithoutAuthority extends Url with UrlWithScheme

Represents URLs that do not have an authority, for example: mailto:[email protected] and data:text/plain;charset=UTF-8;page=21,the%20data:1234,5678

Represents URLs that do not have an authority, for example: mailto:[email protected] and data:text/plain;charset=UTF-8;page=21,the%20data:1234,5678

Attributes

Companion:
object
Graph
Supertypes
trait Url
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion:
trait
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class Urn(path: UrnPath)(implicit config: UriConfig) extends Uri

Represents a URN. See RFC 2141 and RFC 8141

Represents a URN. See RFC 2141 and RFC 8141

URNs will be in the form urn:nid:nss

Attributes

Companion:
object
Graph
Supertypes
trait Uri
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object Urn

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Urn.type
final case class UrnPath(nid: String, nss: String)(implicit config: UriConfig) extends Path

Attributes

Companion:
object
Graph
Supertypes
trait Path
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object UrnPath

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
UrnPath.type
case class UserInfo(user: String, password: Option[String])(implicit config: UriConfig)

Attributes

Companion:
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
object UserInfo

Attributes

Companion:
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type