Class ResteasyUriBuilder

java.lang.Object
jakarta.ws.rs.core.UriBuilder
org.jboss.resteasy.spi.ResteasyUriBuilder
Direct Known Subclasses:
ResteasyUriBuilderImpl

public abstract class ResteasyUriBuilder extends jakarta.ws.rs.core.UriBuilder
  • Field Details

    • opaqueUri

      public static final Pattern opaqueUri
    • hierarchicalUri

      public static final Pattern hierarchicalUri
  • Constructor Details

    • ResteasyUriBuilder

      public ResteasyUriBuilder()
  • Method Details

    • clone

      public abstract jakarta.ws.rs.core.UriBuilder clone()
      Specified by:
      clone in class jakarta.ws.rs.core.UriBuilder
    • compare

      public static boolean compare(String s1, String s2)
    • relativize

      public static URI relativize(URI from, URI to)
    • fromTemplate

      public static ResteasyUriBuilder fromTemplate(String uriTemplate)
      You may put path parameters anywhere within the uriTemplate except port.
      Parameters:
      uriTemplate - uri template
      Returns:
      uri builder
    • uriTemplate

      public abstract jakarta.ws.rs.core.UriBuilder uriTemplate(CharSequence uriTemplate)
      You may put path parameters anywhere within the uriTemplate except port.
      Parameters:
      uriTemplate - uri template
      Returns:
      uri builder
    • uriFromCharSequence

      public abstract jakarta.ws.rs.core.UriBuilder uriFromCharSequence(CharSequence uriTemplate) throws IllegalArgumentException
      Throws:
      IllegalArgumentException
    • substitutePathParam

      public abstract jakarta.ws.rs.core.UriBuilder substitutePathParam(String name, Object value, boolean isEncoded)
      Only replace path params in path of URI. This changes state of URIBuilder.
      Parameters:
      name - parameter name
      value - parameter value
      isEncoded - encoded flag
      Returns:
      uri builder
    • getPathParamNamesInDeclarationOrder

      public abstract List<String> getPathParamNamesInDeclarationOrder()
      Return a unique order list of path params.
      Returns:
      list of path parameters
    • clientQueryParam

      public abstract jakarta.ws.rs.core.UriBuilder clientQueryParam(String name, Object... values) throws IllegalArgumentException
      Called by ClientRequest.getUri() to add a query parameter for @QueryParam parameters. We do not use UriBuilder.queryParam() because
      • queryParam() supports URI template processing and this method must always encode braces (for parameter substitution is not possible for @QueryParam parameters).
      • queryParam() supports "contextual URI encoding" (i.e., it does not encode % characters that are followed by two hex characters). The JavaDoc for @QueryParam.value() explicitly states that the value is specified in decoded format and that "any percent encoded literals within the value will not be decoded and will instead be treated as literal text". This means that it is an explicit bug to perform contextual URI encoding of this method's name parameter; hence, we must always encode said parameter. This method also foregoes contextual URI encoding on this method's values parameter because it represents arbitrary data passed to a QueryParam parameter of a client proxy (since the client proxy is nothing more than a transport layer, it should not be "interpreting" such data; instead, it should faithfully transmit this data over the wire).
      Parameters:
      name - the name of the query parameter.
      values - the value(s) of the query parameter.
      Returns:
      Returns this instance to allow call chaining.
      Throws:
      IllegalArgumentException
    • getHost

      public abstract String getHost()
    • getScheme

      public abstract String getScheme()
    • getPort

      public abstract int getPort()
    • getUserInfo

      public abstract String getUserInfo()
    • getPath

      public abstract String getPath()
    • getQuery

      public abstract String getQuery()
    • getFragment

      public abstract String getFragment()