Est-ce une assez bonne abstraction ou je peux faire mieux?
Question
Exigence: Exigence est traction (execute ()) un ensemble de sources de données. Les tractions sont sont Ordonné , peut être Groupé en petits sous-groupes.
Conception: Chaque tirage est extrait comme étape. Un sous-groupe est représenté comme un WaterFallStep parce que la traction de chacun de la source de données dans un groupe est conditionnel et suit cascade modèle à savoir si le 1er pull source de données dans le groupe réussit alors je sortir du groupe.
Questions
- Est-ce un assez bon abstraction ou je peux faire mieux?
- Comment représenter ce JPA 2? Je sais que nous pouvons utiliser descriminators pour cartographier l'héritage, mais ma principale préoccupation est le 1-à-plusieurs entre WaterFallStep-à-BasicStep
Merci.
La solution
Je pense que vous devriez utiliser un modèle composite ici. Je dirais que chaque étape doit gérer référence à une collection d'étapes. Si vous voulez yo peut déplacer cette collection à votre WaterfallStep, mais il devrait encore être une collection d'étapes, et non pas BasicSteps AbstractSteps.
En ce qui concerne JPA, vous devez utiliser l'annotation OneToMany. Il y a beaucoup d'exemples d'utilisation de cette annotation.
Bonne chance