Skip to content

Commit 35969b6

Browse files
committed
nontrivial refactorings to ToOneBinder
1 parent 114de2b commit 35969b6

File tree

5 files changed

+168
-157
lines changed

5 files changed

+168
-157
lines changed

hibernate-core/src/main/java/org/hibernate/boot/model/internal/AnyBinder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ static void bindAny(
4444
EntityBinder entityBinder,
4545
boolean isIdentifierMapper,
4646
MetadataBuildingContext context,
47-
MemberDetails property,
4847
AnnotatedJoinColumns joinColumns) {
48+
final MemberDetails property = inferredData.getAttributeMember();
4949

5050
//check validity
5151
if ( property.hasDirectAnnotationUsage( Columns.class ) ) {

hibernate-core/src/main/java/org/hibernate/boot/model/internal/CollectionBinder.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -214,17 +214,17 @@ public static void bindCollection(
214214
boolean isIdentifierMapper,
215215
MetadataBuildingContext context,
216216
Map<ClassDetails, InheritanceState> inheritanceStatePerClass,
217-
MemberDetails property,
218217
AnnotatedJoinColumns joinColumns) {
219218
final ModelsContext modelsContext = context.getBootstrapContext().getModelsContext();
219+
final MemberDetails property = inferredData.getAttributeMember();
220220

221221
final OneToMany oneToManyAnn = property.getAnnotationUsage( OneToMany.class, modelsContext );
222222
final ManyToMany manyToManyAnn = property.getAnnotationUsage( ManyToMany.class, modelsContext );
223223
final ElementCollection elementCollectionAnn = property.getAnnotationUsage( ElementCollection.class, modelsContext );
224224
checkAnnotations( propertyHolder, inferredData, property, oneToManyAnn, manyToManyAnn, elementCollectionAnn );
225225

226226
final CollectionBinder collectionBinder = getCollectionBinder( property, hasMapKeyAnnotation( property ), context );
227-
collectionBinder.setIndexColumn( getIndexColumn( propertyHolder, inferredData, entityBinder, context, property ) );
227+
collectionBinder.setIndexColumn( getIndexColumn( propertyHolder, inferredData, entityBinder, context ) );
228228
collectionBinder.setMapKey( property.getAnnotationUsage( MapKey.class, modelsContext ) );
229229
collectionBinder.setPropertyName( inferredData.getPropertyName() );
230230
collectionBinder.setJpaOrderBy( property.getAnnotationUsage( OrderBy.class, modelsContext ) );
@@ -423,8 +423,8 @@ private static IndexColumn getIndexColumn(
423423
PropertyHolder propertyHolder,
424424
PropertyData inferredData,
425425
EntityBinder entityBinder,
426-
MetadataBuildingContext context,
427-
MemberDetails property) {
426+
MetadataBuildingContext context) {
427+
final MemberDetails property = inferredData.getAttributeMember();
428428
return IndexColumn.fromAnnotations(
429429
property.getDirectAnnotationUsage( OrderColumn.class ),
430430
property.getDirectAnnotationUsage( ListIndexBase.class ),

hibernate-core/src/main/java/org/hibernate/boot/model/internal/OneToOneSecondPass.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ private ManyToOne createManyToOne(OneToOne oneToOne, Join mappedByJoin) {
232232

233233
private Property targetProperty(OneToOne oneToOne, PersistentClass targetEntity) {
234234
try {
235-
Property targetProperty = findPropertyByName( targetEntity, mappedBy );
235+
final Property targetProperty = findPropertyByName( targetEntity, mappedBy );
236236
if ( targetProperty != null ) {
237237
return targetProperty;
238238
}
@@ -272,13 +272,14 @@ private void bindOwned(
272272
* the owning side.
273273
*/
274274
private Join buildJoinFromMappedBySide(PersistentClass persistentClass, Property otherSideProperty, Join originalJoin) {
275-
Join join = new Join();
275+
final Join join = new Join();
276276
join.setPersistentClass( persistentClass );
277277

278278
//no check constraints available on joins
279279
join.setTable( originalJoin.getTable() );
280280
join.setInverse( true );
281-
DependantValue key = new DependantValue( buildingContext, join.getTable(), persistentClass.getIdentifier() );
281+
final DependantValue key =
282+
new DependantValue( buildingContext, join.getTable(), persistentClass.getIdentifier() );
282283

283284
if ( notFoundAction != null ) {
284285
join.disableForeignKeyCreation();

hibernate-core/src/main/java/org/hibernate/boot/model/internal/PropertyBinder.java

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -725,8 +725,7 @@ public static void processElementAnnotations(
725725
isComponentEmbedded,
726726
inSecondPass,
727727
context,
728-
inheritanceStatePerClass,
729-
property
728+
inheritanceStatePerClass
730729
);
731730
}
732731
}
@@ -756,8 +755,9 @@ private static void buildProperty(
756755
boolean isComponentEmbedded,
757756
boolean inSecondPass,
758757
MetadataBuildingContext context,
759-
Map<ClassDetails, InheritanceState> inheritanceStatePerClass,
760-
MemberDetails property) {
758+
Map<ClassDetails, InheritanceState> inheritanceStatePerClass) {
759+
760+
final MemberDetails property = inferredData.getAttributeMember();
761761

762762
if ( isPropertyOfRegularEmbeddable( propertyHolder, isComponentEmbedded )
763763
&& property.hasDirectAnnotationUsage(Id.class)) {
@@ -777,7 +777,6 @@ private static void buildProperty(
777777
isIdentifierMapper,
778778
context,
779779
inheritanceStatePerClass,
780-
property,
781780
attributeTypeDetails
782781
);
783782

@@ -798,7 +797,6 @@ private static void buildProperty(
798797
isIdentifierMapper,
799798
isComponentEmbedded,
800799
inSecondPass,
801-
property,
802800
attributeTypeDetails.determineRawClass(),
803801
columnsBuilder
804802
);
@@ -812,8 +810,8 @@ private static PropertyBinder propertyBinder(
812810
boolean isIdentifierMapper,
813811
MetadataBuildingContext context,
814812
Map<ClassDetails, InheritanceState> inheritanceStatePerClass,
815-
MemberDetails property,
816813
TypeDetails attributeTypeDetails) {
814+
final MemberDetails property = inferredData.getAttributeMember();
817815
final PropertyBinder propertyBinder = new PropertyBinder();
818816
propertyBinder.setName( inferredData.getPropertyName() );
819817
propertyBinder.setReturnedClassName( inferredData.getTypeName() );
@@ -847,9 +845,9 @@ private AnnotatedColumns bindProperty(
847845
boolean isIdentifierMapper,
848846
boolean isComponentEmbedded,
849847
boolean inSecondPass,
850-
MemberDetails property,
851848
ClassDetails returnedClass,
852849
ColumnsBuilder columnsBuilder) {
850+
final MemberDetails property = inferredData.getAttributeMember();
853851
if ( isVersion( property ) ) {
854852
bindVersionProperty(
855853
propertyHolder,
@@ -865,7 +863,6 @@ else if ( isManyToOne( property ) ) {
865863
isIdentifierMapper,
866864
inSecondPass,
867865
buildingContext,
868-
property,
869866
columnsBuilder.getJoinColumns(),
870867
this
871868
);
@@ -877,7 +874,6 @@ else if ( isOneToOne( property ) ) {
877874
isIdentifierMapper,
878875
inSecondPass,
879876
buildingContext,
880-
property,
881877
columnsBuilder.getJoinColumns(),
882878
this
883879
);
@@ -890,7 +886,6 @@ else if ( isAny( property ) ) {
890886
entityBinder,
891887
isIdentifierMapper,
892888
buildingContext,
893-
property,
894889
columnsBuilder.getJoinColumns()
895890
);
896891
}
@@ -903,7 +898,6 @@ else if ( isCollection( property ) ) {
903898
isIdentifierMapper,
904899
buildingContext,
905900
inheritanceStatePerClass,
906-
property,
907901
columnsBuilder.getJoinColumns()
908902
);
909903
}
@@ -917,7 +911,6 @@ else if ( !isId() || !entityBinder.isIgnoreIdAnnotations() ) {
917911
entityBinder,
918912
isIdentifierMapper,
919913
isComponentEmbedded,
920-
property,
921914
columnsBuilder,
922915
columnsBuilder.getColumns(),
923916
returnedClass
@@ -1002,10 +995,10 @@ private AnnotatedColumns bindBasicOrComposite(
1002995
EntityBinder entityBinder,
1003996
boolean isIdentifierMapper,
1004997
boolean isComponentEmbedded,
1005-
MemberDetails property,
1006998
ColumnsBuilder columnsBuilder,
1007999
AnnotatedColumns columns,
10081000
ClassDetails returnedClass) {
1001+
final MemberDetails property = inferredData.getAttributeMember();
10091002

10101003
// overrides from @MapsId or @IdClass if needed
10111004
final PropertyData overridingProperty =
@@ -1030,7 +1023,6 @@ private AnnotatedColumns bindBasicOrComposite(
10301023
isComposite,
10311024
isIdentifierMapper,
10321025
isComponentEmbedded,
1033-
property,
10341026
columns,
10351027
returnedClass,
10361028
actualColumns,
@@ -1075,7 +1067,6 @@ private PropertyBinder propertyBinder(
10751067
boolean isComposite,
10761068
boolean isIdentifierMapper,
10771069
boolean isComponentEmbedded,
1078-
MemberDetails property,
10791070
AnnotatedColumns columns,
10801071
ClassDetails returnedClass,
10811072
AnnotatedColumns actualColumns,
@@ -1084,6 +1075,7 @@ private PropertyBinder propertyBinder(
10841075
final Class<? extends CompositeUserType<?>> compositeUserType =
10851076
resolveCompositeUserType( inferredData, buildingContext );
10861077

1078+
final MemberDetails property = inferredData.getAttributeMember();
10871079
if ( isComposite || compositeUserType != null ) {
10881080
if ( property.isArray() && property.getElementType() != null
10891081
&& isEmbedded( property, property.getElementType() ) ) {

0 commit comments

Comments
 (0)