org.jboss.logging.annotations

## Annotation Type Transform

    @Retention(value=CLASS)
    @Target(value=PARAMETER)
    @Documented
    public @interface Transform

Indicate the given parameter should be transformed in each of the `transform types` provided. The parameter cannot be a primitive type.

For the `Transform.TransformType.SIZE` type, the object must be a `String`, a `Collection`, a `Map` or an array.

The type `Transform.TransformType.GET_CLASS` can be used with `Transform.TransformType.HASH_CODE` or `Transform.TransformType.IDENTITY_HASH_CODE`. The type `Transform.TransformType.SIZE` must be used on it's own.

Since:
  1.1.0
Author:
  James R. Perkins

### Required Element Summary

Required Elements
`Transform.TransformType[]` `value` The transform types used on the parameter.

### Element Detail

#### value

    public abstract Transform.TransformType[] value

The transform types used on the parameter.

Valid combinations:

- `Transform.TransformType.GET_CLASS`
- `Transform.TransformType.GET_CLASS`, `Transform.TransformType.HASH_CODE`
- `Transform.TransformType.GET_CLASS`, `Transform.TransformType.IDENTITY_HASH_CODE`
- `Transform.TransformType.HASH_CODE`
- `Transform.TransformType.IDENTITY_HASH_CODE`
- `Transform.TransformType.SIZE`

Returns:
  an array of the transform types