java.lang.Object
java.lang.Enum<CopyType>
org.glassfish.pfl.dynamic.copyobject.spi.CopyType
All Implemented Interfaces:
Serializable, Comparable<CopyType>, java.lang.constant.Constable

public enum CopyType extends Enum<CopyType>
Enum used with Copy annotation on fields to indicate special handling by the object copier. In what follows, the source is the object being copied, and the result is the resulting copy. field is the name of the annotated field.
  • Enum Constant Details

    • RECURSE

      public static final CopyType RECURSE
      Standard behavior: apply standard copier to the value of the field. This is the same thing that happens if the field is not annotated.
    • IDENTITY

      public static final CopyType IDENTITY
      Set result.field = source.field without copying
    • NULL

      public static final CopyType NULL
      Set result.field = null or 0 according to type.
    • SOURCE

      public static final CopyType SOURCE
      Set result.field = source. Requires that the declared type of field is assignment compatible with the type of the object; that is, field.class.isAssignableFrom( this.class ).
    • RESULT

      public static final CopyType RESULT
      Set result.field = result. Requires that the declared type of field is assignment compatible with the type of the object; that is, field.class.isAssignableFrom( this.class ).
  • Constructor Details

    • CopyType

      private CopyType()
  • Method Details

    • values

      public static CopyType[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static CopyType valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null