diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-04-18 11:47:36 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-04-18 11:47:36 +0200 |
commit | ddee8ec7eb9c4a3c7374bf6bb42da23034ae4479 (patch) | |
tree | 0d04abf28f2fe78d0bf66a446b250283cd13b2e7 /container-search/src/main/java/com/yahoo/prelude | |
parent | f871ed1ecec477f016168293cddb59edf4b2b1a7 (diff) |
Consolidate rendering of raw data by using the same representation as in normal hits by using RawBase64.
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude')
-rw-r--r-- | container-search/src/main/java/com/yahoo/prelude/hitfield/RawBase64.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/hitfield/RawBase64.java b/container-search/src/main/java/com/yahoo/prelude/hitfield/RawBase64.java index ada0797ab02..71964054e0d 100644 --- a/container-search/src/main/java/com/yahoo/prelude/hitfield/RawBase64.java +++ b/container-search/src/main/java/com/yahoo/prelude/hitfield/RawBase64.java @@ -3,8 +3,10 @@ package com.yahoo.prelude.hitfield; import java.util.Arrays; import java.util.Base64; +import java.util.Objects; /** + * Wraps a byte [] and renders it as base64 encoded string * @author baldersheim */ public class RawBase64 implements Comparable<RawBase64> { @@ -14,10 +16,13 @@ public class RawBase64 implements Comparable<RawBase64> { this(content, false); } public RawBase64(byte[] content, boolean withoutPadding) { + Objects.requireNonNull(content); this.content = content; this.withoutPadding = withoutPadding; } + public byte [] value() { return content; } + @Override public int compareTo(RawBase64 rhs) { return Arrays.compareUnsigned(content, rhs.content); @@ -29,4 +34,17 @@ public class RawBase64 implements Comparable<RawBase64> { ? Base64.getEncoder().withoutPadding().encodeToString(content) : Base64.getEncoder().encodeToString(content); } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + RawBase64 rawBase64 = (RawBase64) o; + return Arrays.equals(content, rawBase64.content); + } + + @Override + public int hashCode() { + return Arrays.hashCode(content); + } } |