@@ -33,7 +33,7 @@ static Class<? extends CompositeUserType<?>> resolveTimeZoneStorageCompositeUser
33
33
ClassDetails returnedClass ,
34
34
MetadataBuildingContext context ) {
35
35
if ( useColumnForTimeZoneStorage ( attributeMember , context ) ) {
36
- String returnedClassName = returnedClass .getName ();
36
+ final String returnedClassName = returnedClass .getName ();
37
37
if ( OFFSET_DATETIME_CLASS .equals ( returnedClassName ) ) {
38
38
return OffsetDateTimeCompositeUserType .class ;
39
39
}
@@ -49,24 +49,20 @@ else if ( OFFSET_TIME_CLASS.equals( returnedClassName ) ) {
49
49
50
50
private static boolean isTemporalWithTimeZoneClass (String returnedClassName ) {
51
51
return OFFSET_DATETIME_CLASS .equals ( returnedClassName )
52
- || ZONED_DATETIME_CLASS .equals ( returnedClassName )
53
- || isOffsetTimeClass ( returnedClassName );
52
+ || ZONED_DATETIME_CLASS .equals ( returnedClassName )
53
+ || isOffsetTimeClass ( returnedClassName );
54
54
}
55
55
56
56
public static boolean isOffsetTimeClass (AnnotationTarget element ) {
57
- if ( element instanceof MemberDetails memberDetails ) {
58
- return isOffsetTimeClass ( memberDetails );
59
- }
60
- return false ;
57
+ return element instanceof MemberDetails memberDetails
58
+ && isOffsetTimeClass ( memberDetails );
61
59
}
62
60
63
61
public static boolean isOffsetTimeClass (MemberDetails element ) {
64
62
final TypeDetails type = element .getType ();
65
- if ( type == null ) {
66
- return false ;
67
- }
63
+ return type != null
64
+ && isOffsetTimeClass ( type .determineRawClass ().getClassName () );
68
65
69
- return isOffsetTimeClass ( type .determineRawClass ().getClassName () );
70
66
}
71
67
72
68
private static boolean isOffsetTimeClass (String returnedClassName ) {
@@ -76,14 +72,10 @@ private static boolean isOffsetTimeClass(String returnedClassName) {
76
72
static boolean useColumnForTimeZoneStorage (AnnotationTarget element , MetadataBuildingContext context ) {
77
73
final TimeZoneStorage timeZoneStorage = element .getDirectAnnotationUsage ( TimeZoneStorage .class );
78
74
if ( timeZoneStorage == null ) {
79
- if ( element instanceof MemberDetails attributeMember ) {
80
- return isTemporalWithTimeZoneClass ( attributeMember .getType ().getName () )
81
- //no @TimeZoneStorage annotation, so we need to use the default storage strategy
82
- && context .getBuildingOptions ().getDefaultTimeZoneStorage () == COLUMN ;
83
- }
84
- else {
85
- return false ;
86
- }
75
+ return element instanceof MemberDetails attributeMember
76
+ && isTemporalWithTimeZoneClass ( attributeMember .getType ().getName () )
77
+ //no @TimeZoneStorage annotation, so we need to use the default storage strategy
78
+ && context .getBuildingOptions ().getDefaultTimeZoneStorage () == COLUMN ;
87
79
}
88
80
else {
89
81
return switch ( timeZoneStorage .value () ) {
0 commit comments