Add spring boot starters and some restructuring #15
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I moved the existing code into a submodule. Most of the "changed" files are only moved with no actual changes.
Not sure if you want to officially support/maintain this, but I created starters for spring boot that take care of reading the configuration properties and creating the Recombee instance. Most people using Recombee for a Spring Boot Project will do the same steps of reading the configuration and creating a Recombee Bean most of the time. By providing the starter developers can skip these steps and instead only need to add the properties to their configurations and can start using the RecombeeClient immediately. Based on https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.developing-auto-configuration, especially https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.developing-auto-configuration.custom-starter .
The changes are an optional add-on. Existing user can keep using the client as before without needing to change their pom or code.
For this I also did some restructuring to make using the project easier. I separated it into multiple commits, so feel free to cherry-pick the parts that you are interested in, if you don't want to pull all changes.
f2adf4d adds a simple gitignore so you can simply
git add .
instead of having to select the files to commit manually.0cd82ac moves the existing client to a submodule to allow adding further submodules for different specialized features, in the case of the full merge requests for the spring boot starters. The parent module is suffixed with
-parent
, allowing theapi-client
submodule to keep its original artifactId.98fb2e9 moves the release steps to a maven profile instead of always executing them. This makes it easier to install snapshots etc. into the local maven repository (see https://central.sonatype.org/publish/publish-maven/#using-a-profile )
8965508 adds the autoconfiguration and starter for Spring Boot 2. While Spring Boot 2 already reached eol, there still are quite a few applications around using the old version. Also includes the documentation, so if you only include the starter for Spring Boot 3, you might still want to take the README from this commit.
c882beb changes to junit's scope to test. You are currently including it as a compile dependency. It also refactors/improves the tests for the starter.
e3e6e0c adds the autoconfiguration and starter for Spring Boot 3.