Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Avoid list copy by casting array
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel Widdis <[email protected]>
dbwiddis committed Jul 21, 2024

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
1 parent 8d11fa2 commit 0a14c28
Showing 1 changed file with 5 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -23,7 +23,6 @@
import org.opensearch.search.pipeline.SearchResponseProcessor;

import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Objects;

@@ -115,9 +114,10 @@ public SearchResponse processResponse(SearchRequest request, SearchResponse resp
if (val == null || !String.class.isAssignableFrom(val.getClass())) {
throw new IllegalArgumentException("field [" + splitField + "] is not a string, cannot split");
}
String[] strings = ((String) val).split(separator, preserveTrailing ? -1 : 0);
List<Object> splitList = List.copyOf(Arrays.asList(strings));
hit.setDocumentField(targetField, new DocumentField(targetField, splitList));
hit.setDocumentField(
targetField,
new DocumentField(targetField, Arrays.asList(((String) val).split(separator, preserveTrailing ? -1 : 0)))
);
}
if (hit.hasSource()) {
BytesReference sourceRef = hit.getSourceRef();
@@ -131,9 +131,7 @@ public SearchResponse processResponse(SearchRequest request, SearchResponse resp
if (sourceAsMap.containsKey(splitField)) {
Object val = sourceAsMap.get(splitField);
if (val instanceof String) {
String[] strings = ((String) val).split(separator, preserveTrailing ? -1 : 0);
List<Object> splitList = List.copyOf(Arrays.asList(strings));
sourceAsMap.put(targetField, splitList);
sourceAsMap.put(targetField, Arrays.asList(((String) val).split(separator, preserveTrailing ? -1 : 0)));
}
XContentBuilder builder = XContentBuilder.builder(typeAndSourceMap.v1().xContent());
builder.map(sourceAsMap);

0 comments on commit 0a14c28

Please sign in to comment.