summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search/result/Hit.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/result/Hit.java')
-rw-r--r--container-search/src/main/java/com/yahoo/search/result/Hit.java120
1 files changed, 61 insertions, 59 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/result/Hit.java b/container-search/src/main/java/com/yahoo/search/result/Hit.java
index 0bfbecfd9ab..3cc7378de5c 100644
--- a/container-search/src/main/java/com/yahoo/search/result/Hit.java
+++ b/container-search/src/main/java/com/yahoo/search/result/Hit.java
@@ -58,7 +58,7 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi
/** The relevance of this hit */
private Relevance relevance;
- /** Says whether this hit is cached or not */
+ /** Says whether this hit is cached */
private boolean cached = false;
/**
@@ -95,59 +95,11 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi
private boolean auxiliary=false;
/**
- * The hit field used to store rank features. TODO: Remove
+ * The hit field used to store rank features. TODO: Remove on Vespa 7
*/
public static final String RANKFEATURES_FIELD = "rankfeatures";
public static final String SDDOCNAME_FIELD = "sddocname";
- private Map<String,Object> getFieldMap() {
- return getFieldMap(16);
- }
- private Map<String,Object> getFieldMap(int minSize) {
- if (fields == null) {
- // Compensate for loadfactor and then some, rounded up....
- fields = new LinkedHashMap<>(2*minSize);
- }
- return fields;
- }
-
- private Map<String,Object> getUnmodifiableFieldMap() {
- if (unmodifiableFieldMap == null) {
- if (fields == null) {
- return Collections.emptyMap();
- } else {
- unmodifiableFieldMap = Collections.unmodifiableMap(fields);
- }
- }
- return unmodifiableFieldMap;
- }
-
- public static String stripCharacter(char strip, String toStripFrom) {
- StringBuilder builder = null;
-
- int lastBadChar = 0;
- for (int i = 0; i < toStripFrom.length(); i++) {
- if (toStripFrom.charAt(i) == strip) {
- if (builder == null) {
- builder = new StringBuilder(toStripFrom.length());
- }
-
- builder.append(toStripFrom, lastBadChar, i);
- lastBadChar = i + 1;
- }
- }
-
- if (builder == null) {
- return toStripFrom;
- } else {
- if (lastBadChar < toStripFrom.length()) {
- builder.append(toStripFrom, lastBadChar, toStripFrom.length());
- }
-
- return builder.toString();
- }
- }
-
/** Creates an (invalid) empty hit. Id and relevance must be set before handoff */
protected Hit() {}
@@ -461,8 +413,8 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi
/**
* Fields
- * @return An iterator for traversing the fields
- * @since 5.1.3
+ *
+ * @return an iterator for traversing the fields of this hit
*/
public final Iterator<Map.Entry<String,Object>> fieldIterator() { return getFieldMap().entrySet().iterator(); }
@@ -470,21 +422,23 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi
public Object getField(String value) { return fields != null ? fields.get(value) : null; }
/**
- * Generate a HitField from a field if the field exists. Does the
- * same as getField() in earlier versions.
- *
- * @since 3.0
+ * Generate a HitField from a field if the field exists.
+ *
+ * @deprecated do not use
*/
+ // TODO: Remove on Vespa 7
+ @Deprecated
public HitField buildHitField(String key) {
return buildHitField(key, false);
}
/**
- * Generate a HitField from a field if the field exists. Does the
- * same as getField() in earlier versions.
+ * Generate a HitField from a field if the field exists.
*
- * @since 3.0
+ * @deprecated do not use
*/
+ // TODO: Remove on Vespa 7
+ @Deprecated
public HitField buildHitField(String key, boolean forceNoPreTokenize) {
return buildHitField(key, forceNoPreTokenize, false);
}
@@ -798,4 +752,52 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi
return filled;
}
+ private Map<String,Object> getFieldMap() {
+ return getFieldMap(16);
+ }
+ private Map<String,Object> getFieldMap(int minSize) {
+ if (fields == null) {
+ // Compensate for loadfactor and then some, rounded up....
+ fields = new LinkedHashMap<>(2*minSize);
+ }
+ return fields;
+ }
+
+ private Map<String,Object> getUnmodifiableFieldMap() {
+ if (unmodifiableFieldMap == null) {
+ if (fields == null) {
+ return Collections.emptyMap();
+ } else {
+ unmodifiableFieldMap = Collections.unmodifiableMap(fields);
+ }
+ }
+ return unmodifiableFieldMap;
+ }
+
+ public static String stripCharacter(char strip, String toStripFrom) {
+ StringBuilder builder = null;
+
+ int lastBadChar = 0;
+ for (int i = 0; i < toStripFrom.length(); i++) {
+ if (toStripFrom.charAt(i) == strip) {
+ if (builder == null) {
+ builder = new StringBuilder(toStripFrom.length());
+ }
+
+ builder.append(toStripFrom, lastBadChar, i);
+ lastBadChar = i + 1;
+ }
+ }
+
+ if (builder == null) {
+ return toStripFrom;
+ } else {
+ if (lastBadChar < toStripFrom.length()) {
+ builder.append(toStripFrom, lastBadChar, toStripFrom.length());
+ }
+
+ return builder.toString();
+ }
+ }
+
}