Skip to content

Commit f1a709c

Browse files
chengyang14Christoph Büscher
authored and
Christoph Büscher
committed
Remove unsed fields in RestAnalyzeAction (#66215)
Moves ParseFields from `RestAnalyzeAction` to `AnalyzeAction` where they are actually used for parsing the request body.
1 parent d2bd9db commit f1a709c

File tree

4 files changed

+30
-28
lines changed

4 files changed

+30
-28
lines changed

client/rest-high-level/src/main/java/org/elasticsearch/client/ml/job/config/CategorizationAnalyzerConfig.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
*/
1919
package org.elasticsearch.client.ml.job.config;
2020

21+
import org.elasticsearch.action.admin.indices.analyze.AnalyzeAction;
2122
import org.elasticsearch.common.ParseField;
2223
import org.elasticsearch.common.settings.Settings;
2324
import org.elasticsearch.common.xcontent.ToXContentFragment;
@@ -59,9 +60,9 @@
5960
public class CategorizationAnalyzerConfig implements ToXContentFragment {
6061

6162
public static final ParseField CATEGORIZATION_ANALYZER = new ParseField("categorization_analyzer");
62-
private static final ParseField TOKENIZER = RestAnalyzeAction.Fields.TOKENIZER;
63-
private static final ParseField TOKEN_FILTERS = RestAnalyzeAction.Fields.TOKEN_FILTERS;
64-
private static final ParseField CHAR_FILTERS = RestAnalyzeAction.Fields.CHAR_FILTERS;
63+
private static final ParseField TOKENIZER = AnalyzeAction.Fields.TOKENIZER;
64+
private static final ParseField TOKEN_FILTERS = AnalyzeAction.Fields.TOKEN_FILTERS;
65+
private static final ParseField CHAR_FILTERS = AnalyzeAction.Fields.CHAR_FILTERS;
6566

6667
/**
6768
* This method is only used in the unit tests - in production code this config is always parsed as a fragment.

server/src/main/java/org/elasticsearch/action/admin/indices/analyze/AnalyzeAction.java

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,18 @@ private AnalyzeAction() {
5555
super(NAME, AnalyzeAction.Response::new);
5656
}
5757

58+
public static class Fields {
59+
public static final ParseField ANALYZER = new ParseField("analyzer");
60+
public static final ParseField TEXT = new ParseField("text");
61+
public static final ParseField FIELD = new ParseField("field");
62+
public static final ParseField TOKENIZER = new ParseField("tokenizer");
63+
public static final ParseField TOKEN_FILTERS = new ParseField("filter");
64+
public static final ParseField CHAR_FILTERS = new ParseField("char_filter");
65+
public static final ParseField EXPLAIN = new ParseField("explain");
66+
public static final ParseField ATTRIBUTES = new ParseField("attributes");
67+
public static final ParseField NORMALIZER = new ParseField("normalizer");
68+
}
69+
5870
/**
5971
* A request to analyze a text associated with a specific index. Allow to provide
6072
* the actual analyzer name to perform the analysis with.
@@ -265,19 +277,20 @@ public static Request fromXContent(XContentParser parser, String index) throws I
265277
}
266278

267279
private static final ObjectParser<Request, Void> PARSER = new ObjectParser<>("analyze_request");
280+
268281
static {
269-
PARSER.declareStringArray(Request::text, new ParseField("text"));
270-
PARSER.declareString(Request::analyzer, new ParseField("analyzer"));
282+
PARSER.declareStringArray(Request::text, Fields.TEXT);
283+
PARSER.declareString(Request::analyzer, Fields.ANALYZER);
271284
PARSER.declareField(Request::tokenizer, (p, c) -> NameOrDefinition.fromXContent(p),
272-
new ParseField("tokenizer"), ObjectParser.ValueType.OBJECT_OR_STRING);
285+
Fields.TOKENIZER, ObjectParser.ValueType.OBJECT_OR_STRING);
273286
PARSER.declareObjectArray(Request::setTokenFilters, (p, c) -> NameOrDefinition.fromXContent(p),
274-
new ParseField("filter"));
287+
Fields.TOKEN_FILTERS);
275288
PARSER.declareObjectArray(Request::setCharFilters, (p, c) -> NameOrDefinition.fromXContent(p),
276-
new ParseField("char_filter"));
277-
PARSER.declareString(Request::field, new ParseField("field"));
278-
PARSER.declareBoolean(Request::explain, new ParseField("explain"));
279-
PARSER.declareStringArray(Request::attributes, new ParseField("attributes"));
280-
PARSER.declareString(Request::normalizer, new ParseField("normalizer"));
289+
Fields.CHAR_FILTERS);
290+
PARSER.declareString(Request::field, Fields.FIELD);
291+
PARSER.declareBoolean(Request::explain, Fields.EXPLAIN);
292+
PARSER.declareStringArray(Request::attributes, Fields.ATTRIBUTES);
293+
PARSER.declareString(Request::normalizer, Fields.NORMALIZER);
281294
}
282295

283296
}

server/src/main/java/org/elasticsearch/rest/action/admin/indices/RestAnalyzeAction.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import org.elasticsearch.action.admin.indices.analyze.AnalyzeAction;
2222
import org.elasticsearch.client.node.NodeClient;
23-
import org.elasticsearch.common.ParseField;
2423
import org.elasticsearch.common.xcontent.XContentParser;
2524
import org.elasticsearch.rest.BaseRestHandler;
2625
import org.elasticsearch.rest.RestRequest;
@@ -36,18 +35,6 @@
3635

3736
public class RestAnalyzeAction extends BaseRestHandler {
3837

39-
public static class Fields {
40-
public static final ParseField ANALYZER = new ParseField("analyzer");
41-
public static final ParseField TEXT = new ParseField("text");
42-
public static final ParseField FIELD = new ParseField("field");
43-
public static final ParseField TOKENIZER = new ParseField("tokenizer");
44-
public static final ParseField TOKEN_FILTERS = new ParseField("filter");
45-
public static final ParseField CHAR_FILTERS = new ParseField("char_filter");
46-
public static final ParseField EXPLAIN = new ParseField("explain");
47-
public static final ParseField ATTRIBUTES = new ParseField("attributes");
48-
public static final ParseField NORMALIZER = new ParseField("normalizer");
49-
}
50-
5138
@Override
5239
public List<Route> routes() {
5340
return unmodifiableList(asList(

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/job/config/CategorizationAnalyzerConfig.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
*/
66
package org.elasticsearch.xpack.core.ml.job.config;
77

8+
import org.elasticsearch.action.admin.indices.analyze.AnalyzeAction;
89
import org.elasticsearch.common.ParseField;
910
import org.elasticsearch.common.Strings;
1011
import org.elasticsearch.common.io.stream.StreamInput;
@@ -54,9 +55,9 @@
5455
public class CategorizationAnalyzerConfig implements ToXContentFragment, Writeable {
5556

5657
public static final ParseField CATEGORIZATION_ANALYZER = new ParseField("categorization_analyzer");
57-
public static final ParseField TOKENIZER = RestAnalyzeAction.Fields.TOKENIZER;
58-
public static final ParseField TOKEN_FILTERS = RestAnalyzeAction.Fields.TOKEN_FILTERS;
59-
public static final ParseField CHAR_FILTERS = RestAnalyzeAction.Fields.CHAR_FILTERS;
58+
public static final ParseField TOKENIZER = AnalyzeAction.Fields.TOKENIZER;
59+
public static final ParseField TOKEN_FILTERS = AnalyzeAction.Fields.TOKEN_FILTERS;
60+
public static final ParseField CHAR_FILTERS = AnalyzeAction.Fields.CHAR_FILTERS;
6061

6162
/**
6263
* This method is only used in the unit tests - in production code this config is always parsed as a fragment.

0 commit comments

Comments
 (0)