41
41
42
42
import java .io .IOException ;
43
43
import java .io .UncheckedIOException ;
44
- import java .util .Arrays ;
45
44
import java .util .Collections ;
46
45
import java .util .List ;
47
46
import java .util .Map ;
@@ -72,10 +71,6 @@ public static class Defaults {
72
71
73
72
}
74
73
75
- private static Builder builder (FieldMapper in ) {
76
- return ((MatchOnlyTextFieldMapper ) in ).builder ;
77
- }
78
-
79
74
public static class Builder extends FieldMapper .Builder {
80
75
81
76
private final Version indexCreatedVersion ;
@@ -91,37 +86,30 @@ public Builder(String name, IndexAnalyzers indexAnalyzers) {
91
86
public Builder (String name , Version indexCreatedVersion , IndexAnalyzers indexAnalyzers ) {
92
87
super (name );
93
88
this .indexCreatedVersion = indexCreatedVersion ;
94
- this .analyzers = new TextParams .Analyzers (indexAnalyzers , m -> builder (m ).analyzers );
95
- }
96
-
97
- public Builder addMultiField (FieldMapper .Builder builder ) {
98
- this .multiFieldsBuilder .add (builder );
99
- return this ;
89
+ this .analyzers = new TextParams .Analyzers (indexAnalyzers , m -> ((MatchOnlyTextFieldMapper ) m ).analyzers );
100
90
}
101
91
102
92
@ Override
103
93
protected List <Parameter <?>> getParameters () {
104
- return Arrays . asList (meta );
94
+ return org . elasticsearch . core . List . of (meta );
105
95
}
106
96
107
- private MatchOnlyTextFieldType buildFieldType (FieldType fieldType , ContentPath contentPath ) {
97
+ private MatchOnlyTextFieldType buildFieldType (ContentPath contentPath ) {
108
98
NamedAnalyzer searchAnalyzer = analyzers .getSearchAnalyzer ();
109
99
NamedAnalyzer searchQuoteAnalyzer = analyzers .getSearchQuoteAnalyzer ();
110
100
NamedAnalyzer indexAnalyzer = analyzers .getIndexAnalyzer ();
111
- TextSearchInfo tsi = new TextSearchInfo (fieldType , null , searchAnalyzer , searchQuoteAnalyzer );
112
- MatchOnlyTextFieldType ft = new MatchOnlyTextFieldType (buildFullName (contentPath ), tsi , indexAnalyzer , meta .getValue ());
113
- return ft ;
101
+ TextSearchInfo tsi = new TextSearchInfo (Defaults .FIELD_TYPE , null , searchAnalyzer , searchQuoteAnalyzer );
102
+ return new MatchOnlyTextFieldType (buildFullName (contentPath ), tsi , indexAnalyzer , meta .getValue ());
114
103
}
115
104
116
105
@ Override
117
106
public MatchOnlyTextFieldMapper build (ContentPath contentPath ) {
118
- MatchOnlyTextFieldType tft = buildFieldType (Defaults . FIELD_TYPE , contentPath );
107
+ MatchOnlyTextFieldType tft = buildFieldType (contentPath );
119
108
MultiFields multiFields = multiFieldsBuilder .build (this , contentPath );
120
109
return new MatchOnlyTextFieldMapper (
121
110
name ,
122
111
Defaults .FIELD_TYPE ,
123
112
tft ,
124
- analyzers .getIndexAnalyzer (),
125
113
multiFields ,
126
114
copyTo .build (),
127
115
this
@@ -142,19 +130,6 @@ public MatchOnlyTextFieldType(String name, TextSearchInfo tsi, Analyzer indexAna
142
130
this .textFieldType = new TextFieldType (name );
143
131
}
144
132
145
- public MatchOnlyTextFieldType (String name , boolean stored , Map <String , String > meta ) {
146
- super (
147
- name ,
148
- true ,
149
- stored ,
150
- false ,
151
- new TextSearchInfo (Defaults .FIELD_TYPE , null , Lucene .STANDARD_ANALYZER , Lucene .STANDARD_ANALYZER ),
152
- meta
153
- );
154
- this .indexAnalyzer = Lucene .STANDARD_ANALYZER ;
155
- this .textFieldType = new TextFieldType (name );
156
- }
157
-
158
133
public MatchOnlyTextFieldType (String name ) {
159
134
this (
160
135
name ,
@@ -292,28 +267,29 @@ public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName, S
292
267
293
268
}
294
269
295
- private final Builder builder ;
270
+ private final Version indexCreatedVersion ;
271
+ private final TextParams .Analyzers analyzers ;
296
272
private final FieldType fieldType ;
297
273
298
274
private MatchOnlyTextFieldMapper (
299
275
String simpleName ,
300
276
FieldType fieldType ,
301
277
MatchOnlyTextFieldType mappedFieldType ,
302
- NamedAnalyzer indexAnalyzer ,
303
278
MultiFields multiFields ,
304
279
CopyTo copyTo ,
305
280
Builder builder
306
281
) {
307
- super (simpleName , mappedFieldType , indexAnalyzer , multiFields , copyTo );
282
+ super (simpleName , mappedFieldType , builder . analyzers . getIndexAnalyzer () , multiFields , copyTo );
308
283
assert mappedFieldType .getTextSearchInfo ().isTokenized ();
309
284
assert mappedFieldType .hasDocValues () == false ;
310
285
this .fieldType = fieldType ;
311
- this .builder = builder ;
286
+ this .indexCreatedVersion = builder .indexCreatedVersion ;
287
+ this .analyzers = builder .analyzers ;
312
288
}
313
289
314
290
@ Override
315
291
public FieldMapper .Builder getMergeBuilder () {
316
- return new Builder (simpleName (), builder . indexCreatedVersion , builder . analyzers .indexAnalyzers ).init (this );
292
+ return new Builder (simpleName (), indexCreatedVersion , analyzers .indexAnalyzers ).init (this );
317
293
}
318
294
319
295
@ Override
0 commit comments