Skip to content

Commit 69a9d04

Browse files
committed
HHH-19362 JsonHelper improvements to handle more mapping types
- Add the `expandProperties` flag that indicates when serializing entier object trees - Handle entity values, including tracking circular relationships - Handle plural attribute values
1 parent d7c6c6a commit 69a9d04

File tree

5 files changed

+302
-86
lines changed

5 files changed

+302
-86
lines changed

hibernate-core/src/main/java/org/hibernate/dialect/type/AbstractPostgreSQLStructJdbcType.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
import org.hibernate.type.descriptor.jdbc.StructuredJdbcType;
4444
import org.hibernate.type.spi.TypeConfiguration;
4545

46-
import static org.hibernate.type.descriptor.jdbc.StructHelper.getEmbeddedPart;
46+
import static org.hibernate.type.descriptor.jdbc.StructHelper.getSubPart;
4747
import static org.hibernate.type.descriptor.jdbc.StructHelper.instantiate;
4848
import static org.hibernate.type.descriptor.DateTimeUtils.appendAsDate;
4949
import static org.hibernate.type.descriptor.DateTimeUtils.appendAsLocalTime;
@@ -999,7 +999,7 @@ private SelectableMapping getJdbcValueSelectable(int jdbcValueSelectableIndex) {
999999
final int size = numberOfAttributeMappings + ( embeddableMappingType.isPolymorphic() ? 1 : 0 );
10001000
int count = 0;
10011001
for ( int i = 0; i < size; i++ ) {
1002-
final ValuedModelPart modelPart = getEmbeddedPart( embeddableMappingType, orderMapping[i] );
1002+
final ValuedModelPart modelPart = getSubPart( embeddableMappingType, orderMapping[i] );
10031003
if ( modelPart.getMappedType() instanceof EmbeddableMappingType embeddableMappingType ) {
10041004
final SelectableMapping aggregateMapping = embeddableMappingType.getAggregateMapping();
10051005
if ( aggregateMapping == null ) {
@@ -1378,7 +1378,7 @@ private StructAttributeValues getAttributeValues(
13781378
attributeIndex = orderMapping[i];
13791379
}
13801380
jdbcIndex += injectAttributeValue(
1381-
getEmbeddedPart( embeddableMappingType, attributeIndex ),
1381+
getSubPart( embeddableMappingType, attributeIndex ),
13821382
attributeValues,
13831383
attributeIndex,
13841384
rawJdbcValues,

0 commit comments

Comments
 (0)