All Downloads are FREE. Search and download functionalities are using the official Maven repository.

arez.annotations.Multiplicity Maven / Gradle / Ivy

There is a newer version: 0.213
Show newest version
package arez.annotations;

/**
 * Defines the multiplicity of the {@link Inverse} relationship for {@link Reference}.
 */
public enum Multiplicity
{
  /**
   * The inverse is related to many references. The type of the inverse must be one of
   * {@link java.util.Collection}, {@link java.util.List} or a {@link java.util.Set} with
   * a type parameter compatible with the class containing the method annotated with the
   * {@link Reference} annotation.
   */
  MANY,
  /**
   * The inverse is related to exactly one reference. The type of the inverse must be
   * compatible with the class containing the method annotated with the {@link Reference}
   * annotation. The inverse MUST be annotated with {@link javax.annotation.Nonnull}
   */
  ONE,
  /**
   * The inverse is related to one or no reference. The type of the inverse must be
   * compatible with the class containing the method annotated with the {@link Reference}
   * annotation. The inverse MUST be annotated with {@link javax.annotation.Nullable}
   */
  ZERO_OR_ONE
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy