diff options
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/grouping/request/Infinite.java')
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/grouping/request/Infinite.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/grouping/request/Infinite.java b/container-search/src/main/java/com/yahoo/search/grouping/request/Infinite.java new file mode 100644 index 00000000000..dfee7d0e48a --- /dev/null +++ b/container-search/src/main/java/com/yahoo/search/grouping/request/Infinite.java @@ -0,0 +1,37 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.search.grouping.request; + +/** + * This class represents an Infinite value that may be used as a bucket + * size specifier. + * + * @author <a href="mailto:lulf@yahoo-inc.com">Ulf Lilleengen</a> + */ +@SuppressWarnings("rawtypes") +public class Infinite implements Comparable { + private final boolean negative; + + /** + * Create an Infinite object with positive or negative sign. + * @param negative the signedness. + */ + public Infinite(boolean negative) { + this.negative = negative; + } + + /** + * Override the toString method in order to be re-parseable. + */ + @Override + public String toString() { + return (negative ? "-inf" : "inf"); + } + + /** + * An infinity value is always less than or greater than. + */ + @Override + public int compareTo(Object rhs) { + return (negative ? -1 : 1); + } +} |