Class ResourceParamsBuilder

java.lang.Object
ru.vyarus.dropwizard.guice.url.resource.ResourceParamsBuilder
Direct Known Subclasses:
RestPathBuilder

public abstract class ResourceParamsBuilder extends Object
Resource path params builder. Allows path and query params declaration. Used as the last step for RestPathBuilder (to hide other path-modifying methods).
  • Field Details

    • builder

      protected final org.glassfish.jersey.uri.internal.JerseyUriBuilder builder
      Path builder.
    • pathParams

      protected final Map<String,Object> pathParams
      Path parameters map.
  • Constructor Details

    • ResourceParamsBuilder

      public ResourceParamsBuilder(@Nullable String basePath)
      Construct a builder.
      Parameters:
      basePath - optional base path (to prepend)
  • Method Details

    • pathParam

      public ResourceParamsBuilder pathParam(String name, Object value)
      Apply path parameter.
      Parameters:
      name - parameter name
      value - parameter value
      Returns:
      builder instance for chained calls
    • queryParam

      public ResourceParamsBuilder queryParam(String name, Object... values)
      Apply query parameter.

      Note: jersey api supports multiple query parameters with the same name (in this case multiple parameters added).

      Parameters:
      name - parameter name
      values - one or more parameter values (array for multiple values)
      Returns:
      builder instance for chained calls
    • matrixParam

      public ResourceParamsBuilder matrixParam(String name, Object... values)
      Apply matrix parameter.

      Note: jersey api supports multiple matrix parameters with the same name (in this case multiple parameters added).

      Parameters:
      name - parameter name
      values - one or more parameter values (array for multiple values)
      Returns:
      builder instance for chained calls
    • buildTemplate

      public String buildTemplate()
      Returns:
      path with preserved path parameters placeholders
    • build

      public String build()
      Returns:
      path with resolved path parameters
    • buildUri

      public URI buildUri()
      Useful for resource redirects: (Response.sendRedirect(builder...buildUri()).build()).
      Returns:
      uri from configured path (with resolved variables)
    • applyPath

      protected void applyPath(String path, Object... args)
      Apply path containing query parameters. Manual parsing is required because otherwise query paramteres would be incorrectly encoded.
      Parameters:
      path - path (possibly with query parameters) with possible string format placeholders (%s)
      args - optional path parameters placeholders (String.format() arguments)