Interface ParamConverter<T>
-
- Type Parameters:
T- the supported Java type convertible to/from aStringformat.
public interface ParamConverter<T>Defines a contract for a delegate responsible for converting between aStringform of a message parameter value and the corresponding custom Java typeT. Conversion of message parameter values injected via@PathParam,@QueryParam,@MatrixParam,@FormParam,@CookieParamand@HeaderParamis supported. JAX-RS implementations MUST support theParamConvertermechanism for all Java types. If aParamConverteris available for a type, it MUST be preferred over all other conversion strategies mentioned in section 3.2 (i.e. singleStringargument constructor, staticvalueOforfromStringmethods, etc.).By default, when used for injection of parameter values, a selected
ParamConverterinstance MUST be used eagerly by a JAX-RS runtime to convert anydefault valuein the resource or provider model, that is during the application deployment, before any value – default or otherwise – is actually required. This conversion strategy ensures that any errors in the default values are reported as early as possible. This default behavior may be overridden by annotating theParamConverterimplementation class with a@Lazyannotation. In such case any default value conversion delegated to the@Lazy-annotated converter will be deferred to a latest possible moment (i.e. until the injection of such default value is required).NOTE: A service implementing this contract is not recognized as a registrable JAX-RS extension provider. Instead, a
ParamConverterProviderinstance responsible for providingParamConverterinstances has to be registered as one of the JAX-RS extension providers.- Since:
- 2.0
- Author:
- Marek Potociar
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceParamConverter.LazyMandates that a conversion of anydefault valuedelegated to aparameter converterannotated with@Lazyannotation SHOULD occur only once the value is actually required (e.g.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description TfromString(String value)Parse the supplied value and create an instance ofT.StringtoString(T value)Convert the supplied value to a String.
-
-
-
Method Detail
-
fromString
T fromString(String value)
Parse the supplied value and create an instance ofT.- Parameters:
value- the string value.- Returns:
- the newly created instance of
T. - Throws:
IllegalArgumentException- if the supplied string cannot be parsed or isnull.
-
toString
String toString(T value)
Convert the supplied value to a String.This method is reserved for future use. Proprietary JAX-RS extensions may leverage the method. Users should be aware that any such support for the method comes at the expense of producing non-portable code.
- Parameters:
value- the value of typeT.- Returns:
- a String representation of the value.
- Throws:
IllegalArgumentException- if the supplied object cannot be serialized or isnull.
-
-