Annotation Interface DriverParameter


Declares a URL parameter accepted by a PJDBC proxy driver.

This annotation is repeatable, allowing multiple parameters to be declared on a single driver class.

Example usage:


 @DriverCapability(prefix = "cache", description = "Caches query results")
 @DriverParameter(name = "ttl", type = ParameterType.INTEGER,
     description = "Time-to-live in seconds", defaultValue = "60", min = 1)
 @DriverParameter(name = "maxSize", type = ParameterType.INTEGER,
     description = "Maximum cached entries", defaultValue = "1000", min = 1)
 @DriverParameter(name = "enabled", type = ParameterType.BOOLEAN,
     description = "Enable caching", defaultValue = "true")
 public class CachingDriver extends AbstractProxyDriver {
     // ...
 }
 
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    Parameter types supported by driver parameters.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The parameter name as it appears in the JDBC URL.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    The default value if not specified in the URL.
    A description of what this parameter controls.
    Valid values for enum-like string parameters.
    long
    Maximum value for numeric parameters.
    long
    Minimum value for numeric parameters.
    boolean
    Whether this parameter is required.
    The parameter type.
  • Element Details

    • name

      String name
      The parameter name as it appears in the JDBC URL. For example, "ttl" for jdbc:cache[ttl=60]:...
      Returns:
      the parameter name
    • type

      The parameter type.
      Returns:
      the parameter type
      Default:
      STRING
    • description

      String description
      A description of what this parameter controls.
      Returns:
      the parameter description
      Default:
      ""
    • defaultValue

      String defaultValue
      The default value if not specified in the URL. Use empty string for no default (required parameter).
      Returns:
      the default value as a string
      Default:
      ""
    • min

      long min
      Minimum value for numeric parameters. Use Long.MIN_VALUE to indicate no minimum.
      Returns:
      the minimum value
      Default:
      -9223372036854775808L
    • max

      long max
      Maximum value for numeric parameters. Use Long.MAX_VALUE to indicate no maximum.
      Returns:
      the maximum value
      Default:
      9223372036854775807L
    • enumValues

      String[] enumValues
      Valid values for enum-like string parameters. Empty array means any value is allowed.
      Returns:
      array of valid values
      Default:
      {}
    • required

      boolean required
      Whether this parameter is required. If true and no default is provided, the driver will fail if the parameter is not specified.
      Returns:
      true if the parameter is required
      Default:
      false