jackson-module-scala icon indicating copy to clipboard operation
jackson-module-scala copied to clipboard

potentially implement annotation introspector findPrimaryCreator

Open pjfanning opened this issue 1 year ago • 1 comments

This method was added the AnotationIntrospector base class in jackson-databind 2.18 and returns null by default. From my testing, the declaredConstructors are what jackson-databind picks up via Java reflection and appears to be accurate.

  override def findPrimaryCreator(config: MapperConfig[_], valueClass: AnnotatedClass,
                                  declaredConstructors: java.util.List[PotentialCreator],
                                  declaredFactories: java.util.List[PotentialCreator]): PotentialCreator = ???

I'm reluctant to make changes to the Scala introspector. I have no open issues that I think this will help me fix and I'm worried that implementing something could change behaviour for some Scala class use cases.

My view is to examine its use if there are real world issues reported for jackson-module-scala.

Fyi @cowtowncoder

pjfanning avatar Jul 10 '24 12:07 pjfanning

@pjfanning That is fair: don't fix what ain't broken. I think Kotlin module has added more magic that could be removed than Scala module.

But this extension point is available, should there be need by Scala and other modules (including custom modules by developers outside Jackson team).

cowtowncoder avatar Jul 10 '24 19:07 cowtowncoder