mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-17 10:25:15 +00:00
Remove usage of deprecated methods that do not accept a XContentType (elastic/x-pack-elasticsearch#549)
This commit removes the usages and definition of deprecated methods that do not accept the XContentType for the source. Additionally, usages of *Entity classes from the http client library have been changed to always specify the content type. Original commit: elastic/x-pack-elasticsearch@29d336a008
This commit is contained in:
parent
22022ea25f
commit
68324f5a50
@ -13,6 +13,7 @@ import org.elasticsearch.common.bytes.BytesReference;
|
||||
import org.elasticsearch.common.bytes.CompositeBytesReference;
|
||||
import org.elasticsearch.common.component.AbstractComponent;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.common.xcontent.XContentType;
|
||||
import org.elasticsearch.xpack.ml.job.persistence.JobResultsPersister;
|
||||
|
||||
import java.io.IOException;
|
||||
@ -80,7 +81,7 @@ public class StateProcessor extends AbstractComponent {
|
||||
try {
|
||||
logger.trace("[{}] ES API CALL: bulk index", jobId);
|
||||
BulkRequest bulkRequest = new BulkRequest();
|
||||
bulkRequest.add(bytes, null, null);
|
||||
bulkRequest.add(bytes, null, null, XContentType.JSON);
|
||||
client.bulk(bulkRequest).actionGet();
|
||||
} catch (Exception e) {
|
||||
logger.error(new ParameterizedMessage("[{}] Error persisting bulk state", jobId), e);
|
||||
|
@ -37,4 +37,9 @@ public class RestPostDataAction extends BaseRestHandler {
|
||||
|
||||
return channel -> client.execute(PostDataAction.INSTANCE, request, new RestStatusToXContentListener<>(channel));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean supportsContentStream() {
|
||||
return true;
|
||||
}
|
||||
}
|
@ -10,7 +10,6 @@ import org.elasticsearch.action.support.WriteRequestBuilder;
|
||||
import org.elasticsearch.client.ElasticsearchClient;
|
||||
import org.elasticsearch.common.Nullable;
|
||||
import org.elasticsearch.common.bytes.BytesReference;
|
||||
import org.elasticsearch.common.xcontent.XContentFactory;
|
||||
import org.elasticsearch.common.xcontent.XContentType;
|
||||
import org.elasticsearch.xpack.security.authz.RoleDescriptor;
|
||||
|
||||
@ -31,15 +30,6 @@ public class PutRoleRequestBuilder extends ActionRequestBuilder<PutRoleRequest,
|
||||
super(client, action, new PutRoleRequest());
|
||||
}
|
||||
|
||||
/**
|
||||
* Populate the put role request from the source and the role's name
|
||||
* @deprecated use {@link #source(String, BytesReference, XContentType)} to avoid content type auto-detection
|
||||
*/
|
||||
@Deprecated
|
||||
public PutRoleRequestBuilder source(String name, BytesReference source) throws IOException {
|
||||
return source(name, source, XContentFactory.xContentType(source));
|
||||
}
|
||||
|
||||
/**
|
||||
* Populate the put role request from the source and the role's name
|
||||
*/
|
||||
|
@ -12,7 +12,6 @@ import org.elasticsearch.client.ElasticsearchClient;
|
||||
import org.elasticsearch.common.ValidationException;
|
||||
import org.elasticsearch.common.bytes.BytesReference;
|
||||
import org.elasticsearch.common.xcontent.NamedXContentRegistry;
|
||||
import org.elasticsearch.common.xcontent.XContentFactory;
|
||||
import org.elasticsearch.common.xcontent.XContentParser;
|
||||
import org.elasticsearch.common.xcontent.XContentType;
|
||||
import org.elasticsearch.xpack.security.authc.support.Hasher;
|
||||
@ -60,15 +59,6 @@ public class ChangePasswordRequestBuilder
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Populate the change password request from the source
|
||||
* @deprecated use {@link #source(BytesReference, XContentType)} to avoid content type auto-detection
|
||||
*/
|
||||
@Deprecated
|
||||
public ChangePasswordRequestBuilder source(BytesReference source) throws IOException {
|
||||
return source(source, XContentFactory.xContentType(source));
|
||||
}
|
||||
|
||||
/**
|
||||
* Populate the change password request from the source in the provided content type
|
||||
*/
|
||||
|
@ -14,7 +14,6 @@ import org.elasticsearch.common.Strings;
|
||||
import org.elasticsearch.common.ValidationException;
|
||||
import org.elasticsearch.common.bytes.BytesReference;
|
||||
import org.elasticsearch.common.xcontent.NamedXContentRegistry;
|
||||
import org.elasticsearch.common.xcontent.XContentFactory;
|
||||
import org.elasticsearch.common.xcontent.XContentParser;
|
||||
import org.elasticsearch.common.xcontent.XContentParser.Token;
|
||||
import org.elasticsearch.common.xcontent.XContentType;
|
||||
@ -92,15 +91,6 @@ public class PutUserRequestBuilder extends ActionRequestBuilder<PutUserRequest,
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Populate the put user request using the given source and username
|
||||
* @deprecated use {@link #source(String, BytesReference, XContentType)} to avoid content type auto-detection
|
||||
*/
|
||||
@Deprecated
|
||||
public PutUserRequestBuilder source(String username, BytesReference source) throws IOException {
|
||||
return source(username, source, XContentFactory.xContentType(source));
|
||||
}
|
||||
|
||||
/**
|
||||
* Populate the put user request using the given source and username
|
||||
*/
|
||||
|
@ -141,16 +141,6 @@ public class ExecuteWatchRequest extends MasterNodeReadRequest<ExecuteWatchReque
|
||||
return xContentType;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param watchSource instead of using an existing watch use this non persisted watch
|
||||
* @deprecated use {@link #setWatchSource(BytesReference, XContentType)}
|
||||
*/
|
||||
@Deprecated
|
||||
public void setWatchSource(BytesReference watchSource) {
|
||||
this.watchSource = watchSource;
|
||||
this.xContentType = XContentFactory.xContentType(watchSource);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param watchSource instead of using an existing watch use this non persisted watch
|
||||
*/
|
||||
|
@ -78,16 +78,6 @@ public class ExecuteWatchRequestBuilder extends MasterNodeOperationRequestBuilde
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param watchSource instead of using an existing watch use this non persisted watch
|
||||
* @deprecated use {@link #setWatchSource(BytesReference, XContentType)}
|
||||
*/
|
||||
@Deprecated
|
||||
public ExecuteWatchRequestBuilder setWatchSource(BytesReference watchSource) {
|
||||
request.setWatchSource(watchSource);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param watchSource instead of using an existing watch use this non persisted watch
|
||||
*/
|
||||
|
@ -41,11 +41,6 @@ public class PutWatchRequest extends MasterNodeRequest<PutWatchRequest> {
|
||||
this(id, source.buildAsBytes(XContentType.JSON), XContentType.JSON);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
public PutWatchRequest(String id, BytesReference source) {
|
||||
this(id, source, source != null ? XContentFactory.xContentType(source) : null);
|
||||
}
|
||||
|
||||
public PutWatchRequest(String id, BytesReference source, XContentType xContentType) {
|
||||
this.id = id;
|
||||
this.source = source;
|
||||
@ -81,16 +76,6 @@ public class PutWatchRequest extends MasterNodeRequest<PutWatchRequest> {
|
||||
setSource(source.buildAsBytes(XContentType.JSON), XContentType.JSON);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the source of the watch
|
||||
* @deprecated use {@link #setSource(BytesReference, XContentType)}
|
||||
*/
|
||||
@Deprecated
|
||||
public void setSource(BytesReference source) {
|
||||
this.source = source;
|
||||
this.xContentType = XContentFactory.xContentType(source);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the source of the watch
|
||||
*/
|
||||
|
@ -8,6 +8,7 @@ package org.elasticsearch.xpack.watcher.transport.actions.put;
|
||||
import org.elasticsearch.action.support.master.MasterNodeOperationRequestBuilder;
|
||||
import org.elasticsearch.client.ElasticsearchClient;
|
||||
import org.elasticsearch.common.bytes.BytesReference;
|
||||
import org.elasticsearch.common.xcontent.XContentType;
|
||||
import org.elasticsearch.xpack.watcher.client.WatchSourceBuilder;
|
||||
|
||||
public class PutWatchRequestBuilder extends MasterNodeOperationRequestBuilder<PutWatchRequest, PutWatchResponse, PutWatchRequestBuilder> {
|
||||
@ -31,9 +32,10 @@ public class PutWatchRequestBuilder extends MasterNodeOperationRequestBuilder<Pu
|
||||
|
||||
/**
|
||||
* @param source the source of the watch to be created
|
||||
* @param xContentType the content type of the source
|
||||
*/
|
||||
public PutWatchRequestBuilder setSource(BytesReference source) {
|
||||
request.setSource(source);
|
||||
public PutWatchRequestBuilder setSource(BytesReference source, XContentType xContentType) {
|
||||
request.setSource(source, xContentType);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@ -5,6 +5,7 @@
|
||||
*/
|
||||
package org.elasticsearch.xpack.ml.integration;
|
||||
|
||||
import org.apache.http.entity.ContentType;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.elasticsearch.client.Response;
|
||||
import org.elasticsearch.client.ResponseException;
|
||||
@ -52,7 +53,8 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "airline-data-empty", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "airline-data-empty", Collections.emptyMap(),
|
||||
new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
|
||||
// Create index with source = enabled, doc_values = enabled, stored = false
|
||||
mappings = "{"
|
||||
@ -66,12 +68,14 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "airline-data", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "airline-data", Collections.emptyMap(), new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
|
||||
client().performRequest("put", "airline-data/response/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data/response/2", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
|
||||
// Create index with source = enabled, doc_values = disabled (except time), stored = false
|
||||
mappings = "{"
|
||||
@ -85,12 +89,15 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "airline-data-disabled-doc-values", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "airline-data-disabled-doc-values", Collections.emptyMap(),
|
||||
new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
|
||||
client().performRequest("put", "airline-data-disabled-doc-values/response/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-disabled-doc-values/response/2", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
|
||||
// Create index with source = disabled, doc_values = enabled (except time), stored = true
|
||||
mappings = "{"
|
||||
@ -105,12 +112,15 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "airline-data-disabled-source", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "airline-data-disabled-source", Collections.emptyMap(),
|
||||
new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
|
||||
client().performRequest("put", "airline-data-disabled-source/response/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-disabled-source/response/2", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
|
||||
// Create index with nested documents
|
||||
mappings = "{"
|
||||
@ -122,12 +132,14 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "nested-data", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "nested-data", Collections.emptyMap(), new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
|
||||
client().performRequest("put", "nested-data/response/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"time\":\"2016-06-01T00:00:00Z\", \"responsetime\":{\"millis\":135.22}}"));
|
||||
new StringEntity("{\"time\":\"2016-06-01T00:00:00Z\", \"responsetime\":{\"millis\":135.22}}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "nested-data/response/2", Collections.emptyMap(),
|
||||
new StringEntity("{\"time\":\"2016-06-01T01:59:00Z\",\"responsetime\":{\"millis\":222.0}}"));
|
||||
new StringEntity("{\"time\":\"2016-06-01T01:59:00Z\",\"responsetime\":{\"millis\":222.0}}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
|
||||
// Create index with multiple docs per time interval for aggregation testing
|
||||
mappings = "{"
|
||||
@ -141,24 +153,33 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "airline-data-aggs", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "airline-data-aggs", Collections.emptyMap(),
|
||||
new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
|
||||
client().performRequest("put", "airline-data-aggs/response/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":100.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":100.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/2", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:01:00Z\",\"airline\":\"AAA\",\"responsetime\":200.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:01:00Z\",\"airline\":\"AAA\",\"responsetime\":200.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/3", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"BBB\",\"responsetime\":1000.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:00:00Z\",\"airline\":\"BBB\",\"responsetime\":1000.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/4", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:01:00Z\",\"airline\":\"BBB\",\"responsetime\":2000.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T00:01:00Z\",\"airline\":\"BBB\",\"responsetime\":2000.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/5", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:00:00Z\",\"airline\":\"AAA\",\"responsetime\":300.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:00:00Z\",\"airline\":\"AAA\",\"responsetime\":300.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/6", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:01:00Z\",\"airline\":\"AAA\",\"responsetime\":400.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:01:00Z\",\"airline\":\"AAA\",\"responsetime\":400.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/7", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:00:00Z\",\"airline\":\"BBB\",\"responsetime\":3000.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:00:00Z\",\"airline\":\"BBB\",\"responsetime\":3000.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data-aggs/response/8", Collections.emptyMap(),
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:01:00Z\",\"airline\":\"BBB\",\"responsetime\":4000.0}"));
|
||||
new StringEntity("{\"time stamp\":\"2016-06-01T01:01:00Z\",\"airline\":\"BBB\",\"responsetime\":4000.0}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
|
||||
// Ensure all data is searchable
|
||||
client().performRequest("post", "_refresh");
|
||||
@ -210,7 +231,7 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ "\"data_description\" : {\"time_field\":\"time stamp\"}"
|
||||
+ "}";
|
||||
client().performRequest("put", MachineLearning.BASE_PATH + "anomaly_detectors/" + jobId, Collections.emptyMap(),
|
||||
new StringEntity(job));
|
||||
new StringEntity(job, ContentType.APPLICATION_JSON));
|
||||
|
||||
String datafeedId = "datafeed-" + jobId;
|
||||
String aggregations = "{\"time stamp\":{\"histogram\":{\"field\":\"time stamp\",\"interval\":3600000},"
|
||||
@ -235,7 +256,7 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ "\"data_description\" : {\"time_field\":\"time stamp\"}"
|
||||
+ "}";
|
||||
client().performRequest("put", MachineLearning.BASE_PATH + "anomaly_detectors/" + jobId, Collections.emptyMap(),
|
||||
new StringEntity(job));
|
||||
new StringEntity(job, ContentType.APPLICATION_JSON));
|
||||
|
||||
String datafeedId = "datafeed-" + jobId;
|
||||
String aggregations = "{\"time stamp\":{\"date_histogram\":{\"field\":\"time stamp\",\"interval\":\"1h\"},"
|
||||
@ -398,9 +419,8 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ " },\n" + " \"data_description\" : {\n" + " \"format\":\"JSON\",\n"
|
||||
+ " \"time_field\":\"time stamp\",\n" + " \"time_format\":\"yyyy-MM-dd'T'HH:mm:ssX\"\n" + " }\n"
|
||||
+ "}";
|
||||
|
||||
return client().performRequest("put", MachineLearning.BASE_PATH + "anomaly_detectors/" + id,
|
||||
Collections.emptyMap(), new StringEntity(job));
|
||||
Collections.emptyMap(), new StringEntity(job, ContentType.APPLICATION_JSON));
|
||||
}
|
||||
|
||||
private static String responseEntityToString(Response response) throws Exception {
|
||||
@ -419,7 +439,7 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ "[{\"function\":\"mean\",\"field_name\":\"responsetime.millis\"}]}, \"data_description\" : {\"time_field\":\"time\"}"
|
||||
+ "}";
|
||||
client().performRequest("put", MachineLearning.BASE_PATH + "anomaly_detectors/" + jobId, Collections.emptyMap(),
|
||||
new StringEntity(job));
|
||||
new StringEntity(job, ContentType.APPLICATION_JSON));
|
||||
|
||||
String datafeedId = jobId + "-datafeed";
|
||||
new DatafeedBuilder(datafeedId, jobId, "nested-data", "response").setSource(source).build();
|
||||
@ -478,7 +498,7 @@ public class DatafeedJobIT extends ESRestTestCase {
|
||||
+ (aggregations == null ? "" : ",\"aggs\":" + aggregations)
|
||||
+ "}";
|
||||
return client().performRequest("put", MachineLearning.BASE_PATH + "datafeeds/" + datafeedId, Collections.emptyMap(),
|
||||
new StringEntity(datafeedConfig));
|
||||
new StringEntity(datafeedConfig, ContentType.APPLICATION_JSON));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,6 +5,7 @@
|
||||
*/
|
||||
package org.elasticsearch.xpack.ml.integration;
|
||||
|
||||
import org.apache.http.entity.ContentType;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.elasticsearch.client.Response;
|
||||
import org.elasticsearch.client.ResponseException;
|
||||
@ -139,7 +140,7 @@ public class MlJobIT extends ESRestTestCase {
|
||||
+ " \"time_format\":\"yyyy-MM-dd HH:mm:ssX\"\n" + " }\n" + "}";
|
||||
|
||||
return client().performRequest("put", MachineLearning.BASE_PATH + "anomaly_detectors/" + jobId,
|
||||
Collections.emptyMap(), new StringEntity(job));
|
||||
Collections.emptyMap(), new StringEntity(job, ContentType.APPLICATION_JSON));
|
||||
}
|
||||
|
||||
public void testGetBucketResults() throws Exception {
|
||||
@ -216,13 +217,15 @@ public class MlJobIT extends ESRestTestCase {
|
||||
String jobConfig = String.format(Locale.ROOT, jobTemplate, "index-1");
|
||||
|
||||
Response response = client().performRequest("put", MachineLearning.BASE_PATH
|
||||
+ "anomaly_detectors/repeated-id" , Collections.emptyMap(), new StringEntity(jobConfig));
|
||||
+ "anomaly_detectors/repeated-id" , Collections.emptyMap(),
|
||||
new StringEntity(jobConfig, ContentType.APPLICATION_JSON));
|
||||
assertEquals(200, response.getStatusLine().getStatusCode());
|
||||
|
||||
final String jobConfig2 = String.format(Locale.ROOT, jobTemplate, "index-2");
|
||||
ResponseException e = expectThrows(ResponseException.class,
|
||||
() ->client().performRequest("put", MachineLearning.BASE_PATH
|
||||
+ "anomaly_detectors/repeated-id" , Collections.emptyMap(), new StringEntity(jobConfig2)));
|
||||
+ "anomaly_detectors/repeated-id" , Collections.emptyMap(),
|
||||
new StringEntity(jobConfig2, ContentType.APPLICATION_JSON)));
|
||||
|
||||
assertThat(e.getResponse().getStatusLine().getStatusCode(), equalTo(400));
|
||||
assertThat(e.getMessage(), containsString("The job cannot be created with the Id 'repeated-id'. The Id is already used."));
|
||||
@ -240,12 +243,12 @@ public class MlJobIT extends ESRestTestCase {
|
||||
String jobConfig = String.format(Locale.ROOT, jobTemplate, indexName);
|
||||
|
||||
Response response = client().performRequest("put", MachineLearning.BASE_PATH
|
||||
+ "anomaly_detectors/" + jobId1, Collections.emptyMap(), new StringEntity(jobConfig));
|
||||
+ "anomaly_detectors/" + jobId1, Collections.emptyMap(), new StringEntity(jobConfig, ContentType.APPLICATION_JSON));
|
||||
assertEquals(200, response.getStatusLine().getStatusCode());
|
||||
|
||||
String jobId2 = "aliased-job-2";
|
||||
response = client().performRequest("put", MachineLearning.BASE_PATH
|
||||
+ "anomaly_detectors/" + jobId2, Collections.emptyMap(), new StringEntity(jobConfig));
|
||||
+ "anomaly_detectors/" + jobId2, Collections.emptyMap(), new StringEntity(jobConfig, ContentType.APPLICATION_JSON));
|
||||
assertEquals(200, response.getStatusLine().getStatusCode());
|
||||
|
||||
response = client().performRequest("get", "_aliases");
|
||||
@ -307,7 +310,7 @@ public class MlJobIT extends ESRestTestCase {
|
||||
String jobConfig = String.format(Locale.ROOT, jobTemplate, byFieldName1);
|
||||
|
||||
Response response = client().performRequest("put", MachineLearning.BASE_PATH
|
||||
+ "anomaly_detectors/" + jobId1, Collections.emptyMap(), new StringEntity(jobConfig));
|
||||
+ "anomaly_detectors/" + jobId1, Collections.emptyMap(), new StringEntity(jobConfig, ContentType.APPLICATION_JSON));
|
||||
assertEquals(200, response.getStatusLine().getStatusCode());
|
||||
|
||||
// Check the index mapping contains the first by_field_name
|
||||
@ -319,7 +322,7 @@ public class MlJobIT extends ESRestTestCase {
|
||||
|
||||
jobConfig = String.format(Locale.ROOT, jobTemplate, byFieldName2);
|
||||
response = client().performRequest("put", MachineLearning.BASE_PATH
|
||||
+ "anomaly_detectors/" + jobId2, Collections.emptyMap(), new StringEntity(jobConfig));
|
||||
+ "anomaly_detectors/" + jobId2, Collections.emptyMap(), new StringEntity(jobConfig, ContentType.APPLICATION_JSON));
|
||||
assertEquals(200, response.getStatusLine().getStatusCode());
|
||||
|
||||
// Check the index mapping now contains both fields
|
||||
@ -406,11 +409,11 @@ public class MlJobIT extends ESRestTestCase {
|
||||
"{\"job_id\":\"%s\", \"timestamp\": \"%s\", \"bucket_span\":%d, \"sequence_num\": %d, \"result_type\":\"record\"}",
|
||||
jobId, 123, 1, 1);
|
||||
client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId) + "/result/" + 123,
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult));
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult, ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId) + "-001/result/" + 123,
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult));
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult, ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId) + "-002/result/" + 123,
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult));
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult, ContentType.APPLICATION_JSON));
|
||||
|
||||
|
||||
client().performRequest("post", "_refresh");
|
||||
@ -461,7 +464,7 @@ public class MlJobIT extends ESRestTestCase {
|
||||
private Response addBucketResult(String jobId, String timestamp, long bucketSpan) throws Exception {
|
||||
try {
|
||||
client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId),
|
||||
Collections.emptyMap(), new StringEntity(RESULT_MAPPING));
|
||||
Collections.emptyMap(), new StringEntity(RESULT_MAPPING, ContentType.APPLICATION_JSON));
|
||||
} catch (ResponseException e) {
|
||||
// it is ok: the index already exists
|
||||
assertThat(e.getMessage(), containsString("resource_already_exists_exception"));
|
||||
@ -474,13 +477,13 @@ public class MlJobIT extends ESRestTestCase {
|
||||
String id = String.format(Locale.ROOT,
|
||||
"%s_%s_%s", jobId, timestamp, bucketSpan);
|
||||
return client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId) + "/result/" + id,
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(bucketResult));
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(bucketResult, ContentType.APPLICATION_JSON));
|
||||
}
|
||||
|
||||
private Response addRecordResult(String jobId, String timestamp, long bucketSpan, int sequenceNum) throws Exception {
|
||||
try {
|
||||
client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId), Collections.emptyMap(),
|
||||
new StringEntity(RESULT_MAPPING));
|
||||
new StringEntity(RESULT_MAPPING, ContentType.APPLICATION_JSON));
|
||||
} catch (ResponseException e) {
|
||||
// it is ok: the index already exists
|
||||
assertThat(e.getMessage(), containsString("resource_already_exists_exception"));
|
||||
@ -492,7 +495,7 @@ public class MlJobIT extends ESRestTestCase {
|
||||
"{\"job_id\":\"%s\", \"timestamp\": \"%s\", \"bucket_span\":%d, \"sequence_num\": %d, \"result_type\":\"record\"}",
|
||||
jobId, timestamp, bucketSpan, sequenceNum);
|
||||
return client().performRequest("put", AnomalyDetectorsIndex.jobResultsIndexName(jobId) + "/result/" + timestamp,
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult));
|
||||
Collections.singletonMap("refresh", "true"), new StringEntity(recordResult, ContentType.APPLICATION_JSON));
|
||||
}
|
||||
|
||||
private static String responseEntityToString(Response response) throws Exception {
|
||||
|
@ -569,7 +569,7 @@ public class HttpExporterResourceTests extends AbstractPublishableHttpResourceTe
|
||||
|
||||
when(response.getStatusLine()).thenReturn(statusLine);
|
||||
when(statusLine.getStatusCode()).thenReturn(RestStatus.OK.getStatus());
|
||||
when(response.getEntity()).thenReturn(new StringEntity("{}"));
|
||||
when(response.getEntity()).thenReturn(new StringEntity("{}", ContentType.APPLICATION_JSON));
|
||||
|
||||
when(client.performRequest(eq("GET"),
|
||||
startsWith("/.marvel-es-1-*"),
|
||||
|
@ -60,9 +60,9 @@ public class LocalExporterTemplateTests extends MonitoringIntegTestCase {
|
||||
|
||||
request.settings(Settings.builder().put("index.mapper.dynamic", false).build());
|
||||
// notably absent are: kibana, logstash, and beats
|
||||
request.mapping("cluster_info", "{\"enabled\": false}");
|
||||
request.mapping("node", "{\"enabled\": false}");
|
||||
request.mapping("fake", "{\"enabled\": false}");
|
||||
request.mapping("cluster_info", "{\"enabled\": false}", XContentType.JSON);
|
||||
request.mapping("node", "{\"enabled\": false}", XContentType.JSON);
|
||||
request.mapping("fake", "{\"enabled\": false}", XContentType.JSON);
|
||||
|
||||
client().admin().indices().create(request).actionGet();
|
||||
|
||||
|
@ -162,7 +162,7 @@ public class BasicWatcherTests extends AbstractWatcherIntegrationTestCase {
|
||||
watchSource.endObject();
|
||||
try {
|
||||
watcherClient.preparePutWatch("_name")
|
||||
.setSource(watchSource.bytes())
|
||||
.setSource(watchSource.bytes(), watchSource.contentType())
|
||||
.get();
|
||||
fail();
|
||||
} catch (ElasticsearchParseException e) {
|
||||
|
@ -69,19 +69,19 @@ public class WatchRequestValidationTests extends ESTestCase {
|
||||
}
|
||||
|
||||
public void testPutWatchInvalidWatchId() {
|
||||
ActionRequestValidationException e = new PutWatchRequest("id with whitespaces", BytesArray.EMPTY).validate();
|
||||
ActionRequestValidationException e = new PutWatchRequest("id with whitespaces", BytesArray.EMPTY, XContentType.JSON).validate();
|
||||
assertThat(e, is(notNullValue()));
|
||||
assertThat(e.validationErrors(), hasItem("watch id contains whitespace"));
|
||||
}
|
||||
|
||||
public void testPutWatchNullId() {
|
||||
ActionRequestValidationException e = new PutWatchRequest(null, BytesArray.EMPTY).validate();
|
||||
ActionRequestValidationException e = new PutWatchRequest(null, BytesArray.EMPTY, XContentType.JSON).validate();
|
||||
assertThat(e, is(notNullValue()));
|
||||
assertThat(e.validationErrors(), hasItem("watch id is missing"));
|
||||
}
|
||||
|
||||
public void testPutWatchSourceNull() {
|
||||
ActionRequestValidationException e = new PutWatchRequest("foo", (BytesReference) null).validate();
|
||||
ActionRequestValidationException e = new PutWatchRequest("foo", (BytesReference) null, XContentType.JSON).validate();
|
||||
assertThat(e, is(notNullValue()));
|
||||
assertThat(e.validationErrors(), hasItem("watch source is missing"));
|
||||
}
|
||||
|
@ -5,6 +5,7 @@
|
||||
*/
|
||||
package org.elasticsearch.xpack.ml.integration;
|
||||
|
||||
import org.apache.http.entity.ContentType;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.apache.lucene.util.LuceneTestCase;
|
||||
import org.elasticsearch.client.Response;
|
||||
@ -47,7 +48,8 @@ public class MlBasicMultiNodeIT extends ESRestTestCase {
|
||||
"{\"airline\":\"AAL\",\"responsetime\":\"132.2046\",\"sourcetype\":\"farequote\",\"time\":\"1403481600\"}\n" +
|
||||
"{\"airline\":\"JZA\",\"responsetime\":\"990.4628\",\"sourcetype\":\"farequote\",\"time\":\"1403481700\"}";
|
||||
response = client().performRequest("post", MachineLearning.BASE_PATH + "anomaly_detectors/" + jobId + "/_data",
|
||||
Collections.emptyMap(), new StringEntity(postData));
|
||||
Collections.emptyMap(),
|
||||
new StringEntity(postData, randomFrom(ContentType.APPLICATION_JSON, ContentType.create("application/x-ndjson"))));
|
||||
assertEquals(202, response.getStatusLine().getStatusCode());
|
||||
Map<String, Object> responseBody = responseEntityToMap(response);
|
||||
assertEquals(2, responseBody.get("processed_record_count"));
|
||||
@ -100,11 +102,13 @@ public class MlBasicMultiNodeIT extends ESRestTestCase {
|
||||
+ " }"
|
||||
+ " }"
|
||||
+ "}";
|
||||
client().performRequest("put", "airline-data", Collections.emptyMap(), new StringEntity(mappings));
|
||||
client().performRequest("put", "airline-data", Collections.emptyMap(), new StringEntity(mappings, ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data/response/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"time\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}"));
|
||||
new StringEntity("{\"time\":\"2016-06-01T00:00:00Z\",\"airline\":\"AAA\",\"responsetime\":135.22}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
client().performRequest("put", "airline-data/response/2", Collections.emptyMap(),
|
||||
new StringEntity("{\"time\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}"));
|
||||
new StringEntity("{\"time\":\"2016-06-01T01:59:00Z\",\"airline\":\"AAA\",\"responsetime\":541.76}",
|
||||
ContentType.APPLICATION_JSON));
|
||||
|
||||
// Ensure all data is searchable
|
||||
client().performRequest("post", "_refresh");
|
||||
@ -162,7 +166,7 @@ public class MlBasicMultiNodeIT extends ESRestTestCase {
|
||||
xContentBuilder.field("_source", true);
|
||||
xContentBuilder.endObject();
|
||||
return client().performRequest("put", MachineLearning.BASE_PATH + "datafeeds/" + datafeedId,
|
||||
Collections.emptyMap(), new StringEntity(xContentBuilder.string()));
|
||||
Collections.emptyMap(), new StringEntity(xContentBuilder.string(), ContentType.APPLICATION_JSON));
|
||||
}
|
||||
|
||||
private Response createFarequoteJob(String jobId) throws Exception {
|
||||
@ -190,7 +194,7 @@ public class MlBasicMultiNodeIT extends ESRestTestCase {
|
||||
xContentBuilder.endObject();
|
||||
|
||||
return client().performRequest("put", MachineLearning.BASE_PATH + "anomaly_detectors/" + jobId,
|
||||
Collections.emptyMap(), new StringEntity(xContentBuilder.string()));
|
||||
Collections.emptyMap(), new StringEntity(xContentBuilder.string(), ContentType.APPLICATION_JSON));
|
||||
}
|
||||
|
||||
private static Map<String, Object> responseEntityToMap(Response response) throws IOException {
|
||||
|
@ -5,6 +5,7 @@
|
||||
*/
|
||||
package org.elasticsearch.xpack.ml.integration;
|
||||
|
||||
import org.apache.http.entity.ContentType;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.elasticsearch.client.ResponseException;
|
||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
||||
@ -47,7 +48,8 @@ public class MlPluginDisabledIT extends ESRestTestCase {
|
||||
xContentBuilder.endObject();
|
||||
|
||||
ResponseException exception = expectThrows(ResponseException.class, () -> client().performRequest("put",
|
||||
MachineLearning.BASE_PATH + "anomaly_detectors/foo", Collections.emptyMap(), new StringEntity(xContentBuilder.string())));
|
||||
MachineLearning.BASE_PATH + "anomaly_detectors/foo", Collections.emptyMap(),
|
||||
new StringEntity(xContentBuilder.string(), ContentType.APPLICATION_JSON)));
|
||||
assertThat(exception.getMessage(), containsString("No handler found for uri [/_xpack/ml/anomaly_detectors/foo] and method [PUT]"));
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ package org.elasticsearch.xpack.ml.transforms;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import org.apache.http.entity.ContentType;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.apache.http.util.EntityUtils;
|
||||
import org.elasticsearch.client.Response;
|
||||
@ -188,13 +189,13 @@ public class PainlessDomainSplitIT extends ESRestTestCase {
|
||||
|
||||
private void createIndex(String name, Settings settings) throws IOException {
|
||||
assertOK(client().performRequest("PUT", name, Collections.emptyMap(),
|
||||
new StringEntity("{ \"settings\": " + Strings.toString(settings) + " }")));
|
||||
new StringEntity("{ \"settings\": " + Strings.toString(settings) + " }", ContentType.APPLICATION_JSON)));
|
||||
}
|
||||
|
||||
private void createIndex(String name, Settings settings, String mapping) throws IOException {
|
||||
assertOK(client().performRequest("PUT", name, Collections.emptyMap(),
|
||||
new StringEntity("{ \"settings\": " + Strings.toString(settings)
|
||||
+ ", \"mappings\" : {" + mapping + "} }")));
|
||||
+ ", \"mappings\" : {" + mapping + "} }", ContentType.APPLICATION_JSON)));
|
||||
}
|
||||
|
||||
public void testIsolated() throws Exception {
|
||||
@ -205,7 +206,7 @@ public class PainlessDomainSplitIT extends ESRestTestCase {
|
||||
|
||||
createIndex("painless", settings.build());
|
||||
client().performRequest("PUT", "painless/test/1", Collections.emptyMap(),
|
||||
new StringEntity("{\"test\": \"test\"}"));
|
||||
new StringEntity("{\"test\": \"test\"}", ContentType.APPLICATION_JSON));
|
||||
client().performRequest("POST", "painless/_refresh");
|
||||
|
||||
Pattern pattern = Pattern.compile("domain_split\":\\[(.*?),(.*?)\\]");
|
||||
@ -230,7 +231,7 @@ public class PainlessDomainSplitIT extends ESRestTestCase {
|
||||
" }\n" +
|
||||
" }\n" +
|
||||
" }\n" +
|
||||
"}");
|
||||
"}", ContentType.APPLICATION_JSON);
|
||||
|
||||
Response response = client().performRequest("GET", "painless/test/_search", Collections.emptyMap(), body);
|
||||
String responseBody = EntityUtils.toString(response.getEntity());
|
||||
@ -275,7 +276,7 @@ public class PainlessDomainSplitIT extends ESRestTestCase {
|
||||
" }";
|
||||
|
||||
client().performRequest("PUT", MachineLearning.BASE_PATH + "anomaly_detectors/painless", Collections.emptyMap(),
|
||||
new StringEntity(job));
|
||||
new StringEntity(job, ContentType.APPLICATION_JSON));
|
||||
client().performRequest("POST", MachineLearning.BASE_PATH + "anomaly_detectors/painless/_open");
|
||||
|
||||
// Create index to hold data
|
||||
@ -304,14 +305,14 @@ public class PainlessDomainSplitIT extends ESRestTestCase {
|
||||
client().performRequest("PUT", "painless/test/" + time.toDateTimeISO() + "_" + j,
|
||||
Collections.emptyMap(),
|
||||
new StringEntity("{\"domain\": \"" + "bar.bar.com\", \"time\": \"" + time.toDateTimeISO()
|
||||
+ "\"}"));
|
||||
+ "\"}", ContentType.APPLICATION_JSON));
|
||||
}
|
||||
} else {
|
||||
// Non-anomalous values will be what's seen when the anomaly is reported
|
||||
client().performRequest("PUT", "painless/test/" + time.toDateTimeISO(),
|
||||
Collections.emptyMap(),
|
||||
new StringEntity("{\"domain\": \"" + test.hostName + "\", \"time\": \"" + time.toDateTimeISO()
|
||||
+ "\"}"));
|
||||
+ "\"}", ContentType.APPLICATION_JSON));
|
||||
}
|
||||
}
|
||||
|
||||
@ -330,10 +331,9 @@ public class PainlessDomainSplitIT extends ESRestTestCase {
|
||||
" }";
|
||||
|
||||
client().performRequest("PUT", MachineLearning.BASE_PATH + "datafeeds/painless", Collections.emptyMap(),
|
||||
new StringEntity(body));
|
||||
new StringEntity(body, ContentType.APPLICATION_JSON));
|
||||
client().performRequest("POST", MachineLearning.BASE_PATH + "datafeeds/painless/_start");
|
||||
|
||||
|
||||
boolean passed = awaitBusy(() -> {
|
||||
try {
|
||||
client().performRequest("POST", "/_refresh");
|
||||
|
Loading…
x
Reference in New Issue
Block a user