diff --git a/hibernate-core/src/main/java/org/hibernate/metamodel/mapping/Bindable.java b/hibernate-core/src/main/java/org/hibernate/metamodel/mapping/Bindable.java index a3969b04fe..22f7ea0ec3 100644 --- a/hibernate-core/src/main/java/org/hibernate/metamodel/mapping/Bindable.java +++ b/hibernate-core/src/main/java/org/hibernate/metamodel/mapping/Bindable.java @@ -52,43 +52,45 @@ public interface Bindable extends JdbcMappingContainer { } /** - * @asciidoc Breaks down a value of `J` into its simple pieces. E.g., an embedded + * Breaks down a value of {@code J} into its simple pieces. E.g., an embedded * value gets broken down into an array of its attribute state; a basic * value converts to itself; etc. *
* Generally speaking, this is the form in which entity state is kept relative to a - * Session via `EntityEntry`. - * @Entity class Person { - * @Id Integer id; - * @Embedded Name name; - * int age; - * } - * @Embeddable class Name { - * String familiarName; - * String familyName; - * } - * ```` + * Session via {@code EntityEntry}. *
- * At the top-level, we would want to disassemble a `Person` value so we'd ask the - * `Bindable` for the `Person` entity to disassemble. Given a Person value: + *
+ * @Entity class Person { + * @Id Integer id; + * @Embedded Name name; + * int age; + * } + * + * @Embeddable class Name { + * String familiarName; + * String familyName; + * } + **
- * ```` + * At the top level, we would want to disassemble a {@code Person} value, so we'd + * ask the {@code Bindable} for the {@code Person} entity to disassemble. Given a + * {@code Person} value: + *
+ *
* Person( id=1, name=Name( 'Steve', 'Ebersole' ), 28 ) - * ```` + **
- * this disassemble would result in a multi-dimensional array: + * this disassemble would result in a multidimensional array: *
- * ```` + *
* [ ["Steve", "Ebersole"], 28 ] - * ```` + **
* Note that the identifier is not part of this disassembled state. Note also * how the embedded value results in a sub-array. + * * @see org.hibernate.engine.spi.EntityEntry *
- * As an example, consider the following domain model: - *
- * ```` */ Object disassemble(Object value, SharedSessionContractImplementor session); @@ -103,20 +105,18 @@ public interface Bindable extends JdbcMappingContainer { void addToCacheKey(MutableCacheKeyBuilder cacheKey, Object value, SharedSessionContractImplementor session); /** - * @asciidoc - * * Visit each constituent JDBC value over the result from {@link #disassemble}. - * + *
* Given the example in {@link #disassemble}, this results in the consumer being * called for each simple value. E.g.: - * - * ```` + *
+ *
* consumer.consume( "Steve" ); * consumer.consume( "Ebersole" ); * consumer.consume( 28 ); - * ```` - * - * Think of it as breaking the multi-dimensional array into a visitable flat array. + *+ *
+ * Think of it as breaking the multidimensional array into a visitable flat array.
* Additionally, it passes through the values {@code X} and {@code Y} to the consumer.
*/
default