Interface Url.UrlBuilder

All Superinterfaces:
org.refcodes.mixin.CredentialsAccessor, org.refcodes.mixin.CredentialsAccessor.CredentialsBuilder<Url.UrlBuilder>, org.refcodes.mixin.CredentialsAccessor.CredentialsMutator, org.refcodes.mixin.CredentialsAccessor.CredentialsProperty, org.refcodes.mixin.Dumpable, FragmentAccessor, FragmentAccessor.FragmentBuilder<Url.UrlBuilder>, FragmentAccessor.FragmentMutator, FragmentAccessor.FragmentProperty, HostAccessor, HostAccessor.HostBuilder<Url.UrlBuilder>, HostAccessor.HostMutator, HostAccessor.HostProperty, org.refcodes.mixin.IdentityAccessor, org.refcodes.mixin.IdentityAccessor.IdentityBuilder<Url.UrlBuilder>, org.refcodes.mixin.IdentityAccessor.IdentityMutator, org.refcodes.mixin.IdentityAccessor.IdentityProperty, IpAddressAccessor, IpAddressAccessor.IpAddressBuilder<Url.UrlBuilder>, IpAddressAccessor.IpAddressMutator, IpAddressAccessor.IpAddressProperty, org.refcodes.mixin.PathAccessor, org.refcodes.mixin.PathAccessor.PathBuilder<Url.UrlBuilder>, org.refcodes.mixin.PathAccessor.PathMutator, org.refcodes.mixin.PathAccessor.PathProperty, org.refcodes.mixin.PortAccessor, org.refcodes.mixin.PortAccessor.PortBuilder<Url.UrlBuilder>, org.refcodes.mixin.PortAccessor.PortMutator, org.refcodes.mixin.PortAccessor.PortProperty, QueryFieldsAccessor, QueryFieldsAccessor.QueryFieldsBuilder<Url.UrlBuilder>, QueryFieldsAccessor.QueryFieldsMutator, QueryFieldsAccessor.QueryFieldsProperty, SchemeAccessor, SchemeAccessor.SchemeBuilder<Url.UrlBuilder>, SchemeAccessor.SchemeMutator, SchemeAccessor.SchemeProperty, org.refcodes.mixin.SecretAccessor, org.refcodes.mixin.SecretAccessor.SecretBuilder<Url.UrlBuilder>, org.refcodes.mixin.SecretAccessor.SecretMutator, org.refcodes.mixin.SecretAccessor.SecretProperty, Url
All Known Implementing Classes:
UrlBuilderImpl
Enclosing interface:
Url

public static interface Url.UrlBuilder
extends Url, SchemeAccessor.SchemeProperty, SchemeAccessor.SchemeBuilder<Url.UrlBuilder>, HostAccessor.HostProperty, HostAccessor.HostBuilder<Url.UrlBuilder>, IpAddressAccessor.IpAddressProperty, IpAddressAccessor.IpAddressBuilder<Url.UrlBuilder>, org.refcodes.mixin.PortAccessor.PortProperty, org.refcodes.mixin.PortAccessor.PortBuilder<Url.UrlBuilder>, org.refcodes.mixin.PathAccessor.PathProperty, org.refcodes.mixin.PathAccessor.PathBuilder<Url.UrlBuilder>, QueryFieldsAccessor.QueryFieldsProperty, QueryFieldsAccessor.QueryFieldsBuilder<Url.UrlBuilder>, FragmentAccessor.FragmentProperty, FragmentAccessor.FragmentBuilder<Url.UrlBuilder>, org.refcodes.mixin.CredentialsAccessor.CredentialsProperty, org.refcodes.mixin.CredentialsAccessor.CredentialsBuilder<Url.UrlBuilder>
  • Method Details

    • fromUrl

      default void fromUrl​(String aUrl) throws MalformedURLException
      Uses the given String to set the Url's state.
      Parameters:
      aUrl - The URL from which to determine the state.
      Throws:
      MalformedURLException - in case the provided URL is considered being malformed.
    • fromURL

      default void fromURL​(URL aUrl)
      USes the given URL to set the Url's state.
      Parameters:
      aUrl - The URL from which to determine the state.
    • withScheme

      default Url.UrlBuilder withScheme​(org.refcodes.data.Scheme aScheme)
      Sets the UrlScheme for the URL scheme.
      Specified by:
      withScheme in interface SchemeAccessor.SchemeBuilder<Url.UrlBuilder>
      Parameters:
      aScheme - The UrlScheme to be stored by the URL scheme.
      Returns:
      The builder for applying multiple build operations.
    • withProtocol

      default Url.UrlBuilder withProtocol​(String aProtocol)
      Sets the protocol for the URL scheme.
      Specified by:
      withProtocol in interface SchemeAccessor.SchemeBuilder<Url.UrlBuilder>
      Parameters:
      aProtocol - The protocol to be stored by the URL scheme.
      Returns:
      The builder for applying multiple build operations.
    • withHost

      default Url.UrlBuilder withHost​(String aHost)
      Sets the host to use and returns this builder as of the builder pattern.
      Specified by:
      withHost in interface HostAccessor.HostBuilder<Url.UrlBuilder>
      Parameters:
      aHost - The host to be stored by the host property.
      Returns:
      This HostAccessor.HostBuilder instance to continue configuration.
    • withIpAddress

      default Url.UrlBuilder withIpAddress​(int[] aIpAddress)
      Sets the IP-Address for the IP-Address property.
      Specified by:
      withIpAddress in interface IpAddressAccessor.IpAddressBuilder<Url.UrlBuilder>
      Parameters:
      aIpAddress - The IP-Address to be stored by the IP-Address property.
      Returns:
      The builder for applying multiple build operations.
    • withCidrNotation

      default Url.UrlBuilder withCidrNotation​(String aCidrNotation)
      Constructs the IP-Address from the given String and sets it for the IP-Address property. The String must be provided in CIDR notation as of "https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation".
      Specified by:
      withCidrNotation in interface IpAddressAccessor.IpAddressBuilder<Url.UrlBuilder>
      Parameters:
      aCidrNotation - The IP-Address String in CIDR notation to be converted and stored by the IP-Address property.
      Returns:
      The builder for applying multiple build operations.
    • withPort

      default Url.UrlBuilder withPort​(int aPort)
      Specified by:
      withPort in interface org.refcodes.mixin.PortAccessor.PortBuilder<Url.UrlBuilder>
    • withPath

      default Url.UrlBuilder withPath​(String aPath)
      Specified by:
      withPath in interface org.refcodes.mixin.PathAccessor.PathBuilder<Url.UrlBuilder>
    • appendToPath

      default void appendToPath​(String aPathElement)
      Appends a path element to the path.
      Parameters:
      aPathElement - The path element to be appended.
    • appendToPath

      default void appendToPath​(String... aPathElements)
      Appends multiple path elements to the path, automatically adding the path separator "/" as required.
      Parameters:
      aPathElements - The path elements to be appended.
    • withAppendToPath

      default Url.UrlBuilder withAppendToPath​(String aPath)
      Appends a path element to the path as of the Builder-Pattern.
      Parameters:
      aPath - The path element to be appended.
      Returns:
      This Url.UrlBuilder instance to continue configuration.
    • withAppendToPath

      default Url.UrlBuilder withAppendToPath​(String... aPathElements)
      Appends multiple path elements to the path, automatically adding the path separator "/" as required as of the Builder-Pattern.
      Parameters:
      aPathElements - The path elements to be appended.
      Returns:
      This Url.UrlBuilder instance to continue configuration.
    • withQueryFields

      default Url.UrlBuilder withQueryFields​(FormFields aQueryFields)
      Sets the request Query-Fields to use and returns this builder as of the Builder-Pattern.
      Specified by:
      withQueryFields in interface QueryFieldsAccessor.QueryFieldsBuilder<Url.UrlBuilder>
      Parameters:
      aQueryFields - The request Query-Fields to be stored by the form fields property.
      Returns:
      This FormFieldsAccessor.FormFieldsBuilder instance to continue configuration.
    • addToQueryFields

      default void addToQueryFields​(String aField, String aValue)
      Adds a value to the list of values associated with the given Query-Field (key).
      Parameters:
      aField - The Query-Field (key) of which's list of values a value is to be added.
      aValue - The value to be added to the list of values associated to the given Query-Field (key).
    • addToQueryFields

      default void addToQueryFields​(String aField, String... aValues)
      Adds values to the list of values associated with the given Query-Field (key).
      Parameters:
      aField - The Query-Field (key) of which's list of values the values are to be added.
      aValues - The values to be added to the list of values associated to the given Query-Field (key).
    • withAddToQueryFields

      default Url.UrlBuilder withAddToQueryFields​(String aField, String aValue)
      Adds a value to the list of values associated with the given Query-Field (key) and returns this builder as of the Builder-Pattern.
      Parameters:
      aField - The Query-Field (key) of which's list of values a value is to be added.
      aValue - The value to be added to the list of values associated to the given Query-Field (key).
      Returns:
      This Url.UrlBuilder instance to continue configuration.
    • withAddToQueryFields

      default Url.UrlBuilder withAddToQueryFields​(String aField, String... aValues)
      Adds values to the list of values associated with the given Query-Field (key) and returns this builder as of the Builder-Pattern.
      Parameters:
      aField - The Query-Field (key) of which's list of values the values are to be added.
      aValues - The values to be added to the list of values associated to the given Query-Field (key).
      Returns:
      This Url.UrlBuilder instance to continue configuration.
    • withFragment

      default Url.UrlBuilder withFragment​(String aFragment)
      Sets the fragment to use and returns this builder as of the builder pattern.
      Specified by:
      withFragment in interface FragmentAccessor.FragmentBuilder<Url.UrlBuilder>
      Parameters:
      aFragment - The fragment to be stored by the fragment property.
      Returns:
      This FragmentAccessor.FragmentBuilder instance to continue configuration.
    • withIdentity

      default Url.UrlBuilder withIdentity​(String aIdentity)
      Specified by:
      withIdentity in interface org.refcodes.mixin.IdentityAccessor.IdentityBuilder<Url.UrlBuilder>
    • withSecret

      default Url.UrlBuilder withSecret​(String aSecret)
      Specified by:
      withSecret in interface org.refcodes.mixin.SecretAccessor.SecretBuilder<Url.UrlBuilder>