Relationship (Oracle - Berkeley DB Java API)
Date: 2017-04-13

com.sleepycat.persist.model

## Enum Relationship

- java.lang.Object
- - java.lang.Enum<Relationship>
  - - com.sleepycat.persist.model.Relationship

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<Relationship>

      public enum Relationship
      extends java.lang.Enum<Relationship>

  Defines the relationship between instances of the entity class and the secondary keys. This can be specified using a `SecondaryKey.relate()` annotation.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `MANY_TO_MANY` Relates many entities to many secondary keys.
    `MANY_TO_ONE` Relates many entities to one secondary key.
    `ONE_TO_MANY` Relates one entity to many secondary keys.
    `ONE_TO_ONE` Relates one entity to one secondary key.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Relationship` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static Relationship[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### MANY_TO_ONE

          public static final Relationship MANY_TO_ONE

      Relates many entities to one secondary key.

      The secondary index will have non-unique keys; in other words, duplicates will be allowed.

      The secondary key field is singular, in other words, it may not be an array or collection type.

    - #### ONE_TO_MANY

          public static final Relationship ONE_TO_MANY

      Relates one entity to many secondary keys.

      The secondary index will have unique keys, in other words, duplicates will not be allowed.

      The secondary key field must be an array or collection type.

    - #### MANY_TO_MANY

          public static final Relationship MANY_TO_MANY

      Relates many entities to many secondary keys.

      The secondary index will have non-unique keys, in other words, duplicates will be allowed.

      The secondary key field must be an array or collection type.

    - #### ONE_TO_ONE

          public static final Relationship ONE_TO_ONE

      Relates one entity to one secondary key.

      The secondary index will have unique keys, in other words, duplicates will not be allowed.

      The secondary key field is singular, in other words, it may not be an array or collection type.

  - ### Method Detail

    - #### values

          public static Relationship[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (Relationship c : Relationship.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static Relationship valueOf(java.lang.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:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null

Copyright (c) 1996, 2017 Oracle and/or its affiliates. All rights reserved.