@@ -120,18 +120,18 @@ void register(
120120 BuildProducer <ReflectiveMethodBuildItem > reflectiveMethod ,
121121 BuildProducer <AdditionalBeanBuildItem > additionalBeans ) {
122122 reflectiveClass .produce (
123- new ReflectiveClassBuildItem (true , false ,
124- "com.fasterxml.jackson.databind.ser.std.SqlDateSerializer" ,
123+ ReflectiveClassBuildItem .builder ("com.fasterxml.jackson.databind.ser.std.SqlDateSerializer" ,
125124 "com.fasterxml.jackson.databind.ser.std.SqlTimeSerializer" ,
126125 "com.fasterxml.jackson.databind.deser.std.DateDeserializers$SqlDateDeserializer" ,
127126 "com.fasterxml.jackson.databind.deser.std.DateDeserializers$TimestampDeserializer" ,
128- "com.fasterxml.jackson.annotation.SimpleObjectIdResolver" ));
127+ "com.fasterxml.jackson.annotation.SimpleObjectIdResolver" ). methods ( true ). build () );
129128
130129 if (curateOutcomeBuildItem .getApplicationModel ().getDependencies ().stream ().anyMatch (
131130 x -> x .getGroupId ().equals ("com.fasterxml.jackson.module" )
132131 && x .getArtifactId ().equals ("jackson-module-jaxb-annotations" ))) {
133132 reflectiveClass .produce (
134- new ReflectiveClassBuildItem (true , false , "com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector" ));
133+ ReflectiveClassBuildItem .builder ("com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector" )
134+ .methods (true ).build ());
135135 }
136136
137137 IndexView index = combinedIndexBuildItem .getIndex ();
@@ -163,18 +163,18 @@ void register(
163163 AnnotationValue usingValue = deserializeInstance .value ("using" );
164164 if (usingValue != null ) {
165165 // the Deserializers are constructed internally by Jackson using a no-args constructor
166- reflectiveClass .produce (new ReflectiveClassBuildItem ( false , false , usingValue .asClass ().name ().toString ()));
166+ reflectiveClass .produce (ReflectiveClassBuildItem . builder ( usingValue .asClass ().name ().toString ()). build ( ));
167167 }
168168 AnnotationValue keyUsingValue = deserializeInstance .value ("keyUsing" );
169169 if (keyUsingValue != null ) {
170170 // the Deserializers are constructed internally by Jackson using a no-args constructor
171- reflectiveClass .produce (new ReflectiveClassBuildItem ( false , false , keyUsingValue .asClass ().name ().toString ()));
171+ reflectiveClass .produce (ReflectiveClassBuildItem . builder ( keyUsingValue .asClass ().name ().toString ()). build ( ));
172172 }
173173 AnnotationValue contentUsingValue = deserializeInstance .value ("contentUsing" );
174174 if (contentUsingValue != null ) {
175175 // the Deserializers are constructed internally by Jackson using a no-args constructor
176176 reflectiveClass
177- .produce (new ReflectiveClassBuildItem ( false , false , contentUsingValue .asClass ().name ().toString ()));
177+ .produce (ReflectiveClassBuildItem . builder ( contentUsingValue .asClass ().name ().toString ()). build ( ));
178178 }
179179 }
180180
@@ -183,32 +183,31 @@ void register(
183183 AnnotationValue usingValue = serializeInstance .value ("using" );
184184 if (usingValue != null ) {
185185 // the Serializers are constructed internally by Jackson using a no-args constructor
186- reflectiveClass .produce (new ReflectiveClassBuildItem ( false , false , usingValue .asClass ().name ().toString ()));
186+ reflectiveClass .produce (ReflectiveClassBuildItem . builder ( usingValue .asClass ().name ().toString ()). build ( ));
187187 }
188188 AnnotationValue keyUsingValue = serializeInstance .value ("keyUsing" );
189189 if (keyUsingValue != null ) {
190190 // the Deserializers are constructed internally by Jackson using a no-args constructor
191- reflectiveClass .produce (new ReflectiveClassBuildItem ( false , false , keyUsingValue .asClass ().name ().toString ()));
191+ reflectiveClass .produce (ReflectiveClassBuildItem . builder ( keyUsingValue .asClass ().name ().toString ()). build ( ));
192192 }
193193 AnnotationValue contentUsingValue = serializeInstance .value ("contentUsing" );
194194 if (contentUsingValue != null ) {
195195 // the Deserializers are constructed internally by Jackson using a no-args constructor
196196 reflectiveClass
197- .produce (new ReflectiveClassBuildItem ( false , false , contentUsingValue .asClass ().name ().toString ()));
197+ .produce (ReflectiveClassBuildItem . builder ( contentUsingValue .asClass ().name ().toString ()). build ( ));
198198 }
199199 AnnotationValue nullsUsingValue = serializeInstance .value ("nullsUsing" );
200200 if (nullsUsingValue != null ) {
201201 // the Deserializers are constructed internally by Jackson using a no-args constructor
202202 reflectiveClass
203- .produce (new ReflectiveClassBuildItem ( false , false , nullsUsingValue .asClass ().name ().toString ()));
203+ .produce (ReflectiveClassBuildItem . builder ( nullsUsingValue .asClass ().name ().toString ()). build ( ));
204204 }
205205 }
206206
207207 for (AnnotationInstance creatorInstance : index .getAnnotations (JSON_AUTO_DETECT )) {
208208 if (creatorInstance .target ().kind () == CLASS ) {
209- reflectiveClass
210- .produce (
211- new ReflectiveClassBuildItem (true , true , creatorInstance .target ().asClass ().name ().toString ()));
209+ reflectiveClass .produce (ReflectiveClassBuildItem .builder (creatorInstance .target ().asClass ().name ().toString ())
210+ .methods (true ).fields (true ).build ());
212211 }
213212 }
214213
@@ -221,7 +220,9 @@ void register(
221220 AnnotationValue value = resolverInstance .value ("value" );
222221 if (value != null ) {
223222 // Add the type-id-resolver class
224- reflectiveClass .produce (new ReflectiveClassBuildItem (true , true , value .asClass ().name ().toString ()));
223+ reflectiveClass
224+ .produce (ReflectiveClassBuildItem .builder (value .asClass ().name ().toString ()).methods (true ).fields (true )
225+ .build ());
225226 if (resolverInstance .target ().kind () == CLASS ) {
226227 // Add the whole hierarchy of the annotated class
227228 addReflectiveHierarchyClass (resolverInstance .target ().asClass ().name (), reflectiveHierarchyClass );
@@ -240,7 +241,8 @@ void register(
240241 for (AnnotationInstance jsonNamingInstance : index .getAnnotations (JSON_NAMING )) {
241242 AnnotationValue strategyValue = jsonNamingInstance .value ("value" );
242243 if (strategyValue != null ) {
243- reflectiveClass .produce (new ReflectiveClassBuildItem (true , true , strategyValue .asClass ().name ().toString ()));
244+ reflectiveClass .produce (ReflectiveClassBuildItem .builder (strategyValue .asClass ().name ().toString ())
245+ .methods (true ).fields (true ).build ());
244246 }
245247 }
246248
@@ -249,13 +251,16 @@ void register(
249251 AnnotationValue generatorValue = jsonIdentityInfoInstance .value ("generator" );
250252 AnnotationValue resolverValue = jsonIdentityInfoInstance .value ("resolver" );
251253 if (generatorValue != null ) {
252- reflectiveClass .produce (new ReflectiveClassBuildItem (true , true , generatorValue .asClass ().name ().toString ()));
254+ reflectiveClass .produce (ReflectiveClassBuildItem .builder (generatorValue .asClass ().name ().toString ())
255+ .methods (true ).fields (true ).build ());
253256 }
254257 if (resolverValue != null ) {
255- reflectiveClass .produce (new ReflectiveClassBuildItem (true , true , resolverValue .asClass ().name ().toString ()));
258+ reflectiveClass .produce (ReflectiveClassBuildItem .builder (resolverValue .asClass ().name ().toString ())
259+ .methods (true ).fields (true ).build ());
256260 } else {
257261 // Registering since SimpleObjectIdResolver is the default value of @JsonIdentityInfo.resolver
258- reflectiveClass .produce (new ReflectiveClassBuildItem (true , true , SimpleObjectIdResolver .class ));
262+ reflectiveClass .produce (
263+ ReflectiveClassBuildItem .builder (SimpleObjectIdResolver .class ).methods (true ).fields (true ).build ());
259264 }
260265 }
261266
@@ -389,7 +394,7 @@ public void supportMixins(MixinsRecorder recorder,
389394 }
390395 ClassInfo mixinClassInfo = instance .target ().asClass ();
391396 String mixinClassName = mixinClassInfo .name ().toString ();
392- reflectiveClass .produce (new ReflectiveClassBuildItem ( true , true , mixinClassName ));
397+ reflectiveClass .produce (ReflectiveClassBuildItem . builder ( mixinClassName ). methods ( true ). fields ( true ). build ( ));
393398 try {
394399 Type [] targetTypes = instance .value ().asClassArray ();
395400 if ((targetTypes == null ) || targetTypes .length == 0 ) {
@@ -398,7 +403,8 @@ public void supportMixins(MixinsRecorder recorder,
398403 Class <?> mixinClass = Thread .currentThread ().getContextClassLoader ().loadClass (mixinClassName );
399404 for (Type targetType : targetTypes ) {
400405 String targetClassName = targetType .name ().toString ();
401- reflectiveClass .produce (new ReflectiveClassBuildItem (true , true , targetClassName ));
406+ reflectiveClass
407+ .produce (ReflectiveClassBuildItem .builder (targetClassName ).methods (true ).fields (true ).build ());
402408 mixinsMap .put (Thread .currentThread ().getContextClassLoader ().loadClass (targetClassName ),
403409 mixinClass );
404410 }
0 commit comments