Package org.jboss.logging.annotations

# Annotation Type Transform

@Retention(CLASS) @Target(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

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static enum`
`Transform.TransformType`
The transform type

## Required Element Summary

Required Elements
Modifier and Type
Required Element
Description
`Transform.TransformType[]`
`value`
The transform types used on the parameter.

## Element Details

### value

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