Mon problème est que j'ai affaire à 2 hiérarchies d'objets générées par jaxb. Les objets ont le même nom et 99,9% la même structure, mais ils sont dans des emballages différents:Existe-t-il un moyen de réutiliser le code si mes objets ont une hiérarchie différente?
xy.z.fpml.transparency.IdentifiedCurrency
xy.z.fpml.recordkeeping.IdentifiedCurrency
Comme vous pouvez l'imaginer, je ne peux pas modifier les objets et ils ont rien en commun que je peux créer un lien vers, non superclasse ou interface, etc
IntelliJ dit que c'est du code en double mais j'ai les mains liées. Est-il possible de faire une sorte de méthode générique qui acceptera les deux types d'objets? Peut-être une réflexion? (Je ne peux pas ...)
Si vous pouvez donner à JAXB un schéma personnalisé, vous pouvez créer un troisième schéma avec les parties communes et refixer les deux autres schémas pour inclure le troisième. Cela devrait forcer le code généré pour chacun des deux premiers schémas à inclure une référence à un objet du type composé commun. –
Attendez, ce code est généré. Pourquoi est-ce que tu t'en préoccupes? Est-ce juste parce qu'intellij vous dit de vous en soucier? –
Je travaille sur une application existante. J'ai trouvé mon moi ayant 2 paquets séparés avec 99% le même code (transparence et tenue de dossiers). Chaque paquet utilise l'une des hiérarchies d'objets générés par jaxb. Au début, j'ai dit OK, je vais juste extraire dans une super-classe. Alors je ne peux pas, les classes utilisées comme arguments viennent de jaxb, ont le même nom mais sont dans des paquets différents et j'ai environ 10 classes qui sont 'dupliquées' et doivent être maintenues ... donc je veux les unir si je peux –