diff options
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/query/InItem.java')
-rw-r--r-- | container-search/src/main/java/com/yahoo/prelude/query/InItem.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/query/InItem.java b/container-search/src/main/java/com/yahoo/prelude/query/InItem.java new file mode 100644 index 00000000000..27213000e3a --- /dev/null +++ b/container-search/src/main/java/com/yahoo/prelude/query/InItem.java @@ -0,0 +1,46 @@ +// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.prelude.query; + +import java.util.Objects; + +import static java.util.Objects.requireNonNullElse; + +/* + * Abstract class representing an IN operator. + * + * @author toregge + */ +public abstract class InItem extends Item { + private String indexName; + public InItem(String indexName) { + this.indexName = requireNonNullElse(indexName, ""); + } + + @Override + public void setIndexName(String index) { + this.indexName = requireNonNullElse(index, ""); + } + public String getIndexName() { + return indexName; + } + + @Override + public String getName() { + return getItemType().name(); + } + + @Override + public boolean equals(Object o) { + if (o == this) return true; + if ( ! super.equals(o)) return false; + var other = (InItem)o; + if ( ! Objects.equals(this.indexName, other.indexName)) return false; + return true; + } + + @Override + public int hashCode() { + return Objects.hash(super.hashCode(), indexName); + } + +}; |