forked from hibernate/hibernate-search
/
Elasticsearch5WorkFactory.java
44 lines (36 loc) · 1.47 KB
/
Elasticsearch5WorkFactory.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/*
* Hibernate Search, full-text search for your domain model
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
*/
package org.hibernate.search.elasticsearch.work.impl.factory;
import org.hibernate.search.elasticsearch.client.impl.URLEncodedString;
import org.hibernate.search.elasticsearch.gson.impl.GsonProvider;
import org.hibernate.search.elasticsearch.work.impl.ES5DeleteByQueryWork;
import org.hibernate.search.elasticsearch.work.impl.ES5FlushWork;
import org.hibernate.search.elasticsearch.work.impl.ES5OptimizeWork;
import org.hibernate.search.elasticsearch.work.impl.builder.DeleteByQueryWorkBuilder;
import org.hibernate.search.elasticsearch.work.impl.builder.FlushWorkBuilder;
import org.hibernate.search.elasticsearch.work.impl.builder.OptimizeWorkBuilder;
import com.google.gson.JsonObject;
/**
* @author Yoann Rodiere
*/
public class Elasticsearch5WorkFactory extends Elasticsearch2WorkFactory {
public Elasticsearch5WorkFactory(GsonProvider gsonProvider) {
super( gsonProvider );
}
@Override
public FlushWorkBuilder flush() {
return new ES5FlushWork.Builder( this );
}
@Override
public OptimizeWorkBuilder optimize() {
return new ES5OptimizeWork.Builder();
}
@Override
public DeleteByQueryWorkBuilder deleteByQuery(URLEncodedString indexName, JsonObject payload) {
return new ES5DeleteByQueryWork.Builder( indexName, payload, this );
}
}