We should have a dedicated module, that contains DTOs only. So it is possible for applications to only use the DTOs with another client implementation.
The client implementation might be restructured into multiple packages. A core Package containing all the Client related classes. And for each RestCall implementation a separate package.
This makes it possible for applications to only load the dependencies really needed. If an application does not rely on spring it is hard to not pull in any spring dependencies with the current module structure.
We might end up with something like this:
- pnet-data-api-java
- pnet-data-api-java-client-core
- pnet-data-api-java-client-spring5
- pnet-data-api-java-client-spring4
We should have a dedicated module, that contains DTOs only. So it is possible for applications to only use the DTOs with another client implementation.
The client implementation might be restructured into multiple packages. A core Package containing all the Client related classes. And for each RestCall implementation a separate package.
This makes it possible for applications to only load the dependencies really needed. If an application does not rely on spring it is hard to not pull in any spring dependencies with the current module structure.
We might end up with something like this: