Enum ObjectStructure

    • Enum Constant Detail

      • DEFAULT

        public static final ObjectStructure DEFAULT
        Use the backend-specific default.
      • FLATTENED

        public static final ObjectStructure FLATTENED
        Flatten multi-valued object fields.

        This structure is generally more efficient, but has the disadvantage of dropping the original structure by making the leaf fields multi-valued instead of the object fields.

        For instance this structure:

        • title = Levianthan Wakes
        • authors =
          • (first element)
            • firstName = Daniel
            • lastName = Abraham
          • (second element)
            • firstName = Ty
            • lastName = Frank
        Will become:
        • title = Levianthan Wakes
        • authors.firstName =
          • (first element) Daniel
          • (second element) Ty
        • authors.lastName =
          • (first element) Abraham
          • (second element) Frank
        As a result, a search for authors.firstname:Ty AND authors.lastname=Abraham would return the above document even though Ty Abraham does not exist.
      • NESTED

        public static final ObjectStructure NESTED
        Store object fields as nested documents.

        This structure is generally less efficient, but has the advantage of preserving the original structure. Note however that access to that information when querying requires special care. See in particular the "nested" predicate.

    • Method Detail

      • values

        public static ObjectStructure[] 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 (ObjectStructure c : ObjectStructure.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static ObjectStructure 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