Extracted ClusterNodes value object to capture the parsing logic and actually properly test it. Added unit tests to verify the proper rejection and the two cases outlined in the ticket.
Related tickets: DATAES-283.
Changes made for Spring Data Commons result in final fields being rejected for manipulation unless there's a wither method available on the object at hand. Unfortunately adapting Spring Data Elasticsearch to support that doesn't work easily as it requires breaking changes to ElasticsearchTemplate as most of the methods assume parameters being handed to be mutable, see the implementation of SimpleElasticsearchRepository.save(…) for instance.
We now mitigate the problem, by enforcing the BeanWrapperPropertyAccessor being used and treating all properties as mutable.
Related tickets: DATACMNS-1322.
Replace all StringUtils and ArrayUtils usages with Springframework's StringUtils and ObjectUtils. Left the commons-lang as test-scope dependency as I believe it brings some values in the tests.
Original pull request: #211.
SimpleElasticsearchPersistentProperty now already checks for the correct type of score properties. Added unit tests for that. Also added unit tests for SimpleElasticsearchPersistentEntity rejecting more than one score property being present.
Additional non-null assertions on components that are required so that we can remove superfluous null checks.
A bit o formatting, Javadoc, missing @since tags and license headers.
Original pull request: #207.
* drop superfluous class FieldIndex
* change FieldType text and keyword starting with capital letters
Original commit: 089d7746be2f2fc4a395bd5c814f664729121f21
We now export composable repositories through our CDI extension. Repositories can now be customized either by a single custom implementation (as it was before) and by providing fragment interfaces along their fragment implementation.
This change aligns CDI support with the existing RepositoryFactory support we provide within a Spring application context.