The study holds query and library entries that could be replaced respectively with complex query and fetcher instances. This poses the question: should the study remain a pure DTO object, or should it contain direct object instances?
- Keep study as DTO and use transformers
- Replace entries with instances
Chosen option: “Keep study as DTO and use transformers”, because comes out best (see below).
- Good, because no need for custom serialization
- Good, because deactivated fetchers can be documented (important for traceable Searching (SLRs))
- Bad, because Entries for databases and queries needed
- Good, because no need for database and query entries
- Bad, because custom de-/serializers for fetchers and complex queries needed
- Bad, because harder to maintain than using “vanilla” Jackson de-/serialization