2424import  org .elasticsearch .search .rank .context .RankFeaturePhaseRankShardContext ;
2525import  org .elasticsearch .search .rank .feature .RankFeatureDoc ;
2626import  org .elasticsearch .search .rank .rerank .RerankingRankFeaturePhaseRankShardContext ;
27- import  org .elasticsearch .xcontent .ConstructingObjectParser ;
2827import  org .elasticsearch .xcontent .XContentBuilder ;
2928
3029import  java .io .IOException ;
30+ import  java .io .UnsupportedEncodingException ;
3131import  java .util .List ;
3232import  java .util .Objects ;
3333
34- import  static  org .elasticsearch .xcontent .ConstructingObjectParser .constructorArg ;
35- import  static  org .elasticsearch .xcontent .ConstructingObjectParser .optionalConstructorArg ;
36- import  static  org .elasticsearch .xpack .inference .rank .textsimilarity .TextSimilarityRankRetrieverBuilder .FIELD_FIELD ;
37- import  static  org .elasticsearch .xpack .inference .rank .textsimilarity .TextSimilarityRankRetrieverBuilder .INFERENCE_ID_FIELD ;
38- import  static  org .elasticsearch .xpack .inference .rank .textsimilarity .TextSimilarityRankRetrieverBuilder .INFERENCE_TEXT_FIELD ;
39- import  static  org .elasticsearch .xpack .inference .rank .textsimilarity .TextSimilarityRankRetrieverBuilder .LENIENT_FIELD ;
40- import  static  org .elasticsearch .xpack .inference .rank .textsimilarity .TextSimilarityRankRetrieverBuilder .MIN_SCORE_FIELD ;
41- 
4234/** 
4335 * A {@code RankBuilder} that enables ranking with text similarity model inference. Supports parameters for configuring the inference call. 
4436 */ 
@@ -52,26 +44,6 @@ public class TextSimilarityRankBuilder extends RankBuilder {
5244        License .OperationMode .ENTERPRISE 
5345    );
5446
55-     static  final  ConstructingObjectParser <TextSimilarityRankBuilder , Void > PARSER  = new  ConstructingObjectParser <>(NAME , args  -> {
56-         String  inferenceId  = (String ) args [0 ];
57-         String  inferenceText  = (String ) args [1 ];
58-         String  field  = (String ) args [2 ];
59-         Integer  rankWindowSize  = args [3 ] == null  ? DEFAULT_RANK_WINDOW_SIZE  : (Integer ) args [3 ];
60-         Float  minScore  = (Float ) args [4 ];
61-         boolean  lenient  = args [5 ] != null  && (Boolean ) args [5 ];
62- 
63-         return  new  TextSimilarityRankBuilder (field , inferenceId , inferenceText , rankWindowSize , minScore , lenient );
64-     });
65- 
66-     static  {
67-         PARSER .declareString (constructorArg (), INFERENCE_ID_FIELD );
68-         PARSER .declareString (constructorArg (), INFERENCE_TEXT_FIELD );
69-         PARSER .declareString (constructorArg (), FIELD_FIELD );
70-         PARSER .declareInt (optionalConstructorArg (), RANK_WINDOW_SIZE_FIELD );
71-         PARSER .declareFloat (optionalConstructorArg (), MIN_SCORE_FIELD );
72-         PARSER .declareBoolean (optionalConstructorArg (), LENIENT_FIELD );
73-     }
74- 
7547    private  final  String  inferenceId ;
7648    private  final  String  inferenceText ;
7749    private  final  String  field ;
@@ -132,16 +104,7 @@ public void doWriteTo(StreamOutput out) throws IOException {
132104
133105    @ Override 
134106    public  void  doXContent (XContentBuilder  builder , Params  params ) throws  IOException  {
135-         // rankWindowSize serialization is handled by the parent class RankBuilder 
136-         builder .field (INFERENCE_ID_FIELD .getPreferredName (), inferenceId );
137-         builder .field (INFERENCE_TEXT_FIELD .getPreferredName (), inferenceText );
138-         builder .field (FIELD_FIELD .getPreferredName (), field );
139-         if  (minScore  != null ) {
140-             builder .field (MIN_SCORE_FIELD .getPreferredName (), minScore );
141-         }
142-         if  (lenient ) {
143-             builder .field (LENIENT_FIELD .getPreferredName (), lenient );
144-         }
107+         throw  new  UnsupportedEncodingException ("This should not be XContent serialized" );
145108    }
146109
147110    @ Override 
0 commit comments