@@ -174,14 +174,16 @@ public class AnnotationMetaEntity extends AnnotationMeta {
174
174
public AnnotationMetaEntity (
175
175
TypeElement element , Context context , boolean managed ,
176
176
boolean jakartaDataStaticMetamodel ,
177
- @ Nullable AnnotationMeta parent ) {
177
+ @ Nullable AnnotationMeta parent ,
178
+ @ Nullable TypeElement primaryEntity ) {
178
179
this .element = element ;
179
180
this .context = context ;
180
181
this .managed = managed ;
181
182
this .members = new LinkedHashMap <>();
182
183
this .quarkusInjection = context .isQuarkusInjection ();
183
184
this .importContext = parent != null ? parent : new ImportContextImpl ( getPackageName ( context , element ) );
184
185
jakartaDataStaticModel = jakartaDataStaticMetamodel ;
186
+ this .primaryEntity = primaryEntity ;
185
187
importContext .importType (
186
188
getGeneratedClassFullyQualifiedName ( element , getPackageName ( context , element ),
187
189
jakartaDataStaticModel ) );
@@ -190,17 +192,23 @@ public AnnotationMetaEntity(
190
192
}
191
193
}
192
194
193
- public static AnnotationMetaEntity create (TypeElement element , Context context , @ Nullable AnnotationMetaEntity parent ) {
194
- return create ( element ,context , false , false , false , parent );
195
+ public static AnnotationMetaEntity create (TypeElement element , Context context , @ Nullable AnnotationMetaEntity parent ,
196
+ @ Nullable TypeElement primaryEntity ) {
197
+ return create ( element ,context , false , false , false , parent , primaryEntity );
198
+ }
199
+
200
+ public static AnnotationMetaEntity create (TypeElement element , Context context ) {
201
+ return create ( element ,context , false , false , false , null , null );
195
202
}
196
203
197
204
public static AnnotationMetaEntity create (
198
205
TypeElement element , Context context ,
199
206
boolean lazilyInitialised , boolean managed ,
200
207
boolean jakartaData ,
201
- @ Nullable AnnotationMetaEntity parent ) {
208
+ @ Nullable AnnotationMetaEntity parent ,
209
+ @ Nullable TypeElement primaryEntity ) {
202
210
final AnnotationMetaEntity annotationMetaEntity =
203
- new AnnotationMetaEntity ( element , context , managed , jakartaData , parent );
211
+ new AnnotationMetaEntity ( element , context , managed , jakartaData , parent , primaryEntity );
204
212
if ( parent != null ) {
205
213
parent .addInnerClass ( annotationMetaEntity );
206
214
}
@@ -417,8 +425,10 @@ else if ( method.getEnclosingElement().getKind().isInterface()
417
425
}
418
426
}
419
427
420
- primaryEntity = primaryEntity ( lifecycleMethods );
421
428
final boolean hibernateRepo = isExplicitlyHibernateRepository ();
429
+ if ( primaryEntity == null ) {
430
+ primaryEntity = primaryEntity ( lifecycleMethods );
431
+ }
422
432
if ( !checkEntity ( primaryEntity , hibernateRepo )
423
433
|| !checkEntities ( lifecycleMethods , hibernateRepo ) ) {
424
434
// NOTE EARLY EXIT with initialized = false
0 commit comments