Commit Graph

288 Commits

Author SHA1 Message Date
Peter-Josef Meisch
eec55e273e DATAES-607 - Client-security-configuration.
Original PR: #293
2019-07-13 10:33:23 +02:00
P.J.Meisch
45015cd7ee DATAES-605 - Polishing. 2019-07-10 22:55:43 +02:00
rasmusfaber
216fc89fd2 DATAES-605 - Make batch size for streamQuery configurable.
Original PR: #292
2019-07-10 22:42:14 +02:00
Oliver Drotbohm
e3003f3268 DATAES-601 - Fixed NoHTTP errors. 2019-06-27 15:54:04 +02:00
P.J.Meisch
03567d4281 DATAES-456 - Polishing. 2019-06-27 08:10:05 +02:00
Sylvain LAURENT
bf4948239e DATAES-456 - re-enable dynamic index name evaluation.
Original PR: #221
2019-06-27 07:55:21 +02:00
P.J.Meisch
57ba74e543 DATAES-593 - Polishing. 2019-06-24 20:37:57 +02:00
Martin Choraine
0d1c57a874 DATAES-593 - Add support for field collapse function.
Original PR: #290
2019-06-24 20:18:38 +02:00
P.J.Meisch
f1aa75a94f DATAES-595 - Polishing. 2019-06-21 22:51:15 +02:00
Azaza
40ea40a763 DATAES-595 - Support for setting preference parameter in query.
Original PR: #288
2019-06-21 22:41:40 +02:00
P.J.Meisch
6a3042c437 DATAES-594 - Polishing. 2019-06-20 12:11:19 +02:00
murali_ch
d22b12874d DATAES-594 Added support for index without refresh.
Original PR: #286
2019-06-20 11:57:42 +02:00
Mark Paluch
92433b79aa DATAES-579 - Reformat test sources.
Original pull request: #283.
2019-05-31 11:46:32 +02:00
Mark Paluch
198ad0e02b DATAES-579 - Polishing.
Use Lombok's Data where possible. Extract duplicate code into ResourceUtil and StreamQueries. Generalize multiGet to return List instead of LinkedList. Reorder methods.

Reduce properties usage by removing unused properties from test entities.

Remove final keyword usage in methods. Formatting.

Original pull request: #283.
2019-05-31 11:46:29 +02:00
P.J.Meisch
4c206f7de5 DATAES-579 - Test code cleanup.
Original pull request: #283.
2019-05-31 11:46:22 +02:00
Mark Paluch
7e56c3f9f9 DATAES-569 - Polishing.
Slightly tweak javadoc. Tweak StepVerifier usage. Add missing assertion. Fix generics.

Original pull request: #277.
2019-05-07 16:45:15 +02:00
Christoph Strobl
2e709a72b7 DATAES-569 - Add index operations to reactive client.
Original pull request: #277.
2019-05-07 16:45:08 +02:00
Mark Paluch
807cfe78bc DATAES-576 - Fix CustomMethodRepositoryRestTests.
Register custom template bean as workaround to delete the index before repository bootstrapping.
2019-05-06 21:59:36 +02:00
Mark Paluch
1f04e6453c DATAES-576 - Fix ElasticsearchTemplateTests.
We now delete documents with a type query instead of a term query. Also, added index cleanup to ReactiveElasticsearchTemplateTests.
2019-05-06 21:21:16 +02:00
Mark Paluch
b6fa4c8a74 DATAES-568 - Polishing.
Add package-info and nullability annotations to org.springframework.data.elasticsearch.core.mapping.
Extract method to avoid excessive nesting.

Add ticket references/convert old references to test methods. Move test models to inner classes. Use static imports for JSON Assert. Formatting.

Original pull request: #281.
2019-05-06 20:00:24 +02:00
P.J. Meisch
66b77ecb75 DATAES-568 - MappingBuilder must use the @Field annotation's name attribute.
Original pull request: #281.
2019-05-06 15:59:01 +02:00
xhaggi
e5c514e385 DATAES-570 - Use Delete By Query API for delete by query operations.
Original pull request: #280
2019-04-29 11:37:57 +02:00
Dmitriy Yakovlev
be34ff8703 DATAES-459 - Return ScrolledPage instead of Page while using startScroll and continueScroll methods.
Original pull request: #274
2019-04-26 14:47:58 +02:00
xhaggi
9abe0f28c5 DATAES-572 - Indices created in ElasticsearchTemplateTests are retained after tests.
Original pull request: #279
2019-04-26 10:22:25 +02:00
Christoph Strobl
b60c9af35c DATAES-565 - Alter test setup to assure a clean start.
Make sure required resources are cleaned before running tests. Some leftovers from other tests may still be lingering around and we need to get rid of those.
2019-04-25 13:25:52 +02:00
Dmitriy Yakovlev
eb15c114b8 DATAES-457 - ElasticsearchTemplate.prepareScroll() does not add sorting.
Original pull request: #273
2019-04-24 15:39:19 +02:00
P.J.Meisch
e7857e874f DATAES-562 - Custom name attribute for @Field mapping in ElasticsearchEntityMapper.
Original pull request: #270
2019-04-24 15:19:55 +02:00
Mark Paluch
17d9022181 DATAES-563 - Polishing.
Merge test methods. Add author name. Formatting, javadoc.

Original pull request: #271.
2019-04-23 16:05:39 +02:00
P.J. Meisch
deefeb462e DATAES-563 - Add elasticsearchTemplate bean alias to AbstractElasticsearchConfiguration.
We now register ElasticsearchOperations through AbstractElasticsearchConfiguration with an additional bean alias to retain compatibility with existing code and to not require additional configuration when using @EnableElasticsearchRepositories.

EnableElasticsearchRepositories defaults to a bean named elasticsearchTemplate while AbstractElasticsearchConfiguration exposed the template bean named elasticsearchOperations.

Original pull request: #271.
2019-04-23 16:02:37 +02:00
Dmitriy Yakovlev
f0ae72141f DATAES-565 - prepareScroll doesn't respect SourceFilter from the Query.
Original pull request: #272
2019-04-18 12:46:31 +02:00
Christoph Strobl
3ea7dea5cb DATAES-552 - Polishing.
Update lookup to replace all matches & add some tests.

Original Pull Request: #267
2019-04-10 10:20:12 +02:00
Taylor
b93bd07a3a DATAES-552 - @Query annotation fail when passing over 10 parameters
Updated the replacePlaceholders methods to use replaceFirst to prevent duplication substitutions.

Original Pull Request: #267
2019-04-10 10:19:25 +02:00
Christoph Strobl
16bf8450f0 DATAES-547 - Polishing.
Add test and directly use SearchHit to pass on the index name.
Fix minor flaw in Exception translation for non existing indices along the way.

Original Pull Request: #257
2019-04-09 15:40:49 +02:00
Spring Operator
9818ed0af9 DATAES-549 - URL Cleanup.
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 317 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).

Original Pull Request: #266
2019-03-22 08:20:19 +01:00
Oliver Drotbohm
13d369de20 DATAES-545 - Move off deprecations in Spring Data Commons.
Related ticket: DATACMNS-1496.
2019-03-13 19:20:40 +01:00
Petr Kukrál
11ba4c55ad DATAES-535 - Add mapping annotation @DynamicTemplates.
Original pull request: #238
2019-03-13 14:16:12 +01:00
Robert Gründler
092690d1b9 DATAES-536 - Add support for context suggester
Original pull request: #241
2019-03-13 10:27:11 +01:00
Mark Paluch
c3e7056d7b DATAES-530 - Polishing.
Fix generics in ElasticsearchEntityMapper. Extract methods. Move enum conversion handling to simple type handling for symmetric implementation. Swap comparison of nullable types to avoid potential null dereference.

Rename ElasticsearchDefaultTypeMapper to DefaultElasticsearchTypeMapper. Move MapTypeAliasAccessor to DefaultElasticsearchTypeMapper.

Introduce SearchResultMapperAdapter to avoid empty method implementations in anonymous classes. Javadoc, reference docs, formatting.

Original Pull Request: #237
2019-03-06 10:03:02 +01:00
Christoph Strobl
a64af54e26 DATAES-530 - Add converter based EntityMapper.
ElasticsearchEntityMapper provides an alternative to the Jackson based EntityMapper implementation.

Original Pull Request: #237
2019-03-06 10:02:13 +01:00
Mark Paluch
1dc113d57b DATAES-537 - Upgrade to Elasticsearch 6.6.1.
Adapt tests to use new IndicesOptions defaults.

Original Pull Request: #243
2019-03-06 09:29:37 +01:00
Peter Nowak
e0831fa234 DATAES-525 - Fixed issue in scrolling not applying the search query.
The root cause of the deletion problem was the doScroll which did not apply the given query and therefor returned all entries from the index.
The doScroll implementation has been fixed to apply the query and multiple unit tests have been added to ensure that the delete methods delete the desired documents only and leave the rest untouched.
Also added unit tests for the scrolling to test it against real queries (not only matchAll).

Original pull request: #240
2019-02-21 08:27:30 +01:00
Ivan Greene
c77b543fb8 DATAES-523 - Allow specifying version type.
Allow specifying the version type for documents.

Original pull request: #236
2019-02-21 08:24:29 +01:00
Peter Nowak
a89a44b08f DATAES-531 - Fixed getMapping from ElasticsearchRestTemplate.
The getMapping methods in the ElasticsearchRestTemplate now behave like the methods in the ElasticsearchTemplate and return the mapping for the specified index and type.

Original pull request: #239
2019-01-24 17:24:38 +01:00
Christoph Strobl
69dc36c6c3 DATAES-519 - Add reactive repository support.
Reactive Elasticsearch repository support builds on the core repository support utilizing
operations provided via ReactiveElasticsearchOperations executed by a ReactiveElasticsearchClient.

Spring Data Elasticsearchs reactive repository support uses Project Reactor as its reactive
composition library of choice.

There are 3 main interfaces to be used:

* ReactiveRepository
* ReactiveCrudRepository
* ReactiveSortingRepository

For Java configuration, use the @EnableReactiveElasticsearchRepositories annotation.
The following listing shows how to use Java configuration for a repository:

@Configuration
@EnableReactiveElasticsearchRepositories
public class Config extends AbstractReactiveElasticsearchConfiguration {

  @Override
  public ReactiveElasticsearchClient reactiveElasticsearchClient() {
    return ReactiveRestClients.create(ClientConfiguration.localhost());
  }
}

Using a repository that extends ReactiveSortingRepository makes all CRUD operations available
as well as methods for sorted access to the entities. Working with the repository instance is a matter of dependency
injecting it into a client.

The repository itself allows defining additional methods backed by the inferred proxy.

public interface ReactivePersonRepository extends ReactiveSortingRepository<Person, String> {

  Flux<Person> findByFirstname(String firstname);

  Flux<Person> findByFirstname(Publisher<String> firstname);

  Flux<Person> findByFirstnameOrderByLastname(String firstname);

  Flux<Person> findByFirstname(String firstname, Sort sort);

  Flux<Person> findByFirstname(String firstname, Pageable page);

  Mono<Person> findByFirstnameAndLastname(String firstname, String lastname);

  Mono<Person> findFirstByLastname(String lastname);

  @Query("{ \"bool\" : { \"must\" : { \"term\" : { \"lastname\" : \"?0\" } } } }")
  Flux<Person> findByLastname(String lastname);

  Mono<Long> countByFirstname(String firstname)

  Mono<Boolean> existsByFirstname(String firstname)

  Mono<Long> deleteByFirstname(String firstname)
}

Original Pull Request: #235
2019-01-23 13:54:44 +01:00
Mark Paluch
f3fb779923 DATAES-524 - Update copyright years to 2019. 2019-01-02 12:36:07 +01:00
zzt
e264bd7f84 DATAES-487 - Support for multi search API. 2018-12-21 15:26:14 +00:00
Christoph Strobl
a1c139445f DATAES-518 - Use scroll for unpaged find operations in ReactiveElasticsearchTemplate.
We now use scroll instead of a max page size for unpaged queries.

Original pull request: #233.
2018-12-14 09:43:25 +01:00
Christoph Strobl
a2fad72e86 DATAES-515 - Revert override of Elasticsearch's JarHell for tests.
This reverts commit 25b02f29a7 as the upgrade to Elasticsearch 6.5 made the changes obsolete.
2018-12-11 08:28:03 +01:00
Christoph Strobl
a3a46b2e11 DATAES-510 - Add tests for resource clean up.
Original Pull Request: #231
2018-12-11 07:17:10 +01:00
Christoph Strobl
da9de6bc49 DATAES-510 - Add reactive scroll support.
The ReactiveElasticsearchClient now support scrolling through large result sets issuing subsequent _search/scroll requests while emitting data on the outbound channel. Resources bound via their scrollId get freed on completion of the flux.

Original Pull Request: #231
2018-12-11 07:17:10 +01:00