@@ -174,14 +174,16 @@ public class AnnotationMetaEntity extends AnnotationMeta {
174174 public AnnotationMetaEntity (
175175 TypeElement element , Context context , boolean managed ,
176176 boolean jakartaDataStaticMetamodel ,
177- @ Nullable AnnotationMeta parent ) {
177+ @ Nullable AnnotationMeta parent ,
178+ @ Nullable TypeElement primaryEntity ) {
178179 this .element = element ;
179180 this .context = context ;
180181 this .managed = managed ;
181182 this .members = new LinkedHashMap <>();
182183 this .quarkusInjection = context .isQuarkusInjection ();
183184 this .importContext = parent != null ? parent : new ImportContextImpl ( getPackageName ( context , element ) );
184185 jakartaDataStaticModel = jakartaDataStaticMetamodel ;
186+ this .primaryEntity = primaryEntity ;
185187 importContext .importType (
186188 getGeneratedClassFullyQualifiedName ( element , getPackageName ( context , element ),
187189 jakartaDataStaticModel ) );
@@ -190,17 +192,23 @@ public AnnotationMetaEntity(
190192 }
191193 }
192194
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 );
195202 }
196203
197204 public static AnnotationMetaEntity create (
198205 TypeElement element , Context context ,
199206 boolean lazilyInitialised , boolean managed ,
200207 boolean jakartaData ,
201- @ Nullable AnnotationMetaEntity parent ) {
208+ @ Nullable AnnotationMetaEntity parent ,
209+ @ Nullable TypeElement primaryEntity ) {
202210 final AnnotationMetaEntity annotationMetaEntity =
203- new AnnotationMetaEntity ( element , context , managed , jakartaData , parent );
211+ new AnnotationMetaEntity ( element , context , managed , jakartaData , parent , primaryEntity );
204212 if ( parent != null ) {
205213 parent .addInnerClass ( annotationMetaEntity );
206214 }
@@ -417,8 +425,10 @@ else if ( method.getEnclosingElement().getKind().isInterface()
417425 }
418426 }
419427
420- primaryEntity = primaryEntity ( lifecycleMethods );
421428 final boolean hibernateRepo = isExplicitlyHibernateRepository ();
429+ if ( primaryEntity == null ) {
430+ primaryEntity = primaryEntity ( lifecycleMethods );
431+ }
422432 if ( !checkEntity ( primaryEntity , hibernateRepo )
423433 || !checkEntities ( lifecycleMethods , hibernateRepo ) ) {
424434 // NOTE EARLY EXIT with initialized = false
0 commit comments