SimpleUrlWithoutAuthority

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]

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

Value members

Concrete methods

def normalize(removeEmptyPathParts: Boolean, slashTermination: SlashTermination): Self
def schemeOption: Option[String]

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

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

Value parameters:
host

the new host to set

Returns:

a new Url with the specified host

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

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

Value parameters:
path

the new path to set

Returns:

a new Url with the specified path

def withPort(port: Int): AbsoluteUrl

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

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

Value parameters:
port

the new port to set

Returns:

a new Url with the specified port

Inherited methods

def addParam[K : QueryKey, V : QueryValue](k: K, v: 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

Value parameters:
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

Inherited from:
Url
def addParam[A : QueryKeyValue](a: 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

Value parameters:
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

Inherited from:
Url
def addParams[KV : QueryKeyValue](first: KV, second: KV, params: 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

Value parameters:
params

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

Returns:

A new Url with the new Query String parameters

Inherited from:
Url
def addParams[A : TraversableParams](params: 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

Value parameters:
params

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

Returns:

A new Url with the new Query String parameters

Inherited from:
Url
def addPathPart[P : PathPart](part: P): Self
Inherited from:
Url
def addPathParts[P : PathPart](first: P, second: P, parts: P*): Self
Inherited from:
Url
Inherited from:
Url
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

Inherited from:
Url
Inherited from:
UrlWithoutAuthority
def collectQuery[KV : QueryKeyValue](f: PartialFunction[(String, Option[String]), 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.

Value parameters:
f

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

Inherited from:
Url
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

Inherited from:
Url
def filterQuery(f: (String, Option[String]) => Boolean): Self

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

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

Inherited from:
Url
def filterQueryNames(f: String => Boolean): Self

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

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

Inherited from:
Url
def filterQueryValues(f: String => Boolean): Self

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

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

Inherited from:
Url
def flatMapQuery[A : TraversableParams](f: (String, Option[String]) => 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

Value parameters:
f

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

Inherited from:
Url
def hostOption: Option[Host]
Inherited from:
UrlWithoutAuthority
def longestSubdomain: Option[String]
Inherited from:
UrlWithoutAuthority
def mapPassword(f: String => String): Self
Inherited from:
UrlWithoutAuthority
def mapQuery[KV : QueryKeyValue](f: PartialFunction[(String, Option[String]), 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.

Value parameters:
f

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

Inherited from:
Url
def mapQueryNames[K : QueryKey](f: String => 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

Value parameters:
f

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

Inherited from:
Url
def mapQueryValues[V : QueryValue](f: String => 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

Value parameters:
f

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

Inherited from:
Url
def mapUser(f: String => String): Self
Inherited from:
UrlWithoutAuthority
def password: Option[String]
Inherited from:
UrlWithoutAuthority
def port: Option[Int]
Inherited from:
UrlWithoutAuthority
def productElementNames: Iterator[String]
Inherited from:
Product
def productIterator: Iterator[Any]
Inherited from:
Product
def publicSuffix: Option[String]
Inherited from:
UrlWithoutAuthority
def publicSuffixes: Vector[String]
Inherited from:
UrlWithoutAuthority
Inherited from:
Url
def removeParams[K : QueryKey](k: Iterable[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

Value parameters:
k

Names of Query String parameter(s) to remove

Inherited from:
Url
def removeParams[K : QueryKey](first: K, second: K, rest: 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

Value parameters:
first

Name of a Query String parameter to remove

rest

Name of more Query String parameter(s) to remove

second

Name of another Query String parameter to remove

Inherited from:
Url
def removeParams[K : QueryKey](k: K): Self

Removes all Query String parameters with the specified key

Removes all Query String parameters with the specified key

Value parameters:
k

Key for the Query String parameter(s) to remove

Inherited from:
Url

Removes all Query String parameters

Removes all Query String parameters

Inherited from:
Url
def replaceParams[K : QueryKey, V : QueryValue](k: K, v: 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

Value parameters:
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

Inherited from:
Url
def resolve(base: UrlWithScheme, strict: Boolean): UrlWithScheme
Returns:

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

Inherited from:
Url
def shortestSubdomain: Option[String]
Inherited from:
UrlWithoutAuthority
def slashTerminated(slashTermination: SlashTermination): Self
Inherited from:
Url
def subdomain: Option[String]
Inherited from:
UrlWithoutAuthority
def subdomains: Vector[String]
Inherited from:
UrlWithoutAuthority
Inherited from:
Url
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

Inherited from:
Uri
def toRedactedString(redactor: Redactor)(implicit conf: UriConfig): String
Inherited from:
Url
Inherited from:
Url
override def toString: String
Definition Classes
Uri -> Any
Inherited from:
Uri
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.

Inherited from:
Url
def toStringRaw: String

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

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

Inherited from:
Uri
def toUrl: Url
Inherited from:
Url
def toUrn: Urn
Inherited from:
Url
def user: Option[String]
Inherited from:
UrlWithoutAuthority
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.

Value parameters:
host

the new host to set

Returns:

a new Url with the specified host

Inherited from:
Url

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

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

Value parameters:
parts

the parts that make up the new path

Returns:

a new Url with the specified path

Inherited from:
Url
def withQueryString[KV : QueryKeyValue](first: KV, second: KV, params: KV*): Self

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

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

Inherited from:
Url

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

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

Inherited from:
Url

Implicits

Implicits

implicit val config: UriConfig