public class Columns extends java.util.AbstractCollection<ColumnDefinition> implements java.util.Collection<ColumnDefinition>
Note that in practice, it will either store only static columns, or only regular ones. When
we need both type of columns, we use a PartitionColumns
object.
Modifier and Type | Class and Description |
---|---|
static class |
Columns.Serializer |
Modifier and Type | Field and Description |
---|---|
static Columns |
NONE |
static Columns.Serializer |
serializer |
Modifier and Type | Method and Description |
---|---|
int |
complexColumnCount()
The number of complex columns (non-frozen collections, udts, ...) in this object.
|
java.util.Iterator<ColumnDefinition> |
complexColumns()
Iterator over the complex columns of this object.
|
int |
complexIdx(ColumnDefinition c)
The index of the provided complex column in this object (if it contains
the provided column).
|
boolean |
contains(ColumnDefinition c)
Whether the provided column is contained by this object.
|
boolean |
containsAll(java.util.Collection<?> other)
Whether this object is a superset of the provided other
Columns object . |
void |
digest(java.security.MessageDigest digest) |
boolean |
equals(java.lang.Object other) |
static Columns |
from(java.util.Collection<ColumnDefinition> s)
Returns a new
Columns object holing the same columns than the provided set. |
ColumnDefinition |
getComplex(int i)
Returns the ith complex column of this object.
|
ColumnDefinition |
getSimple(int i)
Returns the ith simple column of this object.
|
boolean |
hasComplex()
Whether this objects contains complex columns.
|
int |
hashCode() |
boolean |
hasSimple()
Whether this objects contains simple columns.
|
java.util.function.Predicate<ColumnDefinition> |
inOrderInclusionTester()
Returns a predicate to test whether columns are included in this
Columns object,
assuming that tes tested columns are passed to the predicate in sorted order. |
boolean |
isEmpty()
Whether this columns is empty.
|
BTreeSearchIterator<ColumnDefinition,ColumnDefinition> |
iterator()
Iterator over all the columns of this object.
|
Columns |
mergeTo(Columns other)
Returns the result of merging this
Columns object with the
provided one. |
static Columns |
of(ColumnDefinition c)
Creates a
Columns holding only the one column provided. |
java.util.Iterator<ColumnDefinition> |
selectOrderIterator()
An iterator that returns the columns of this object in "select" order (that
is in global alphabetical order, where the "normal" iterator returns simple
columns first and the complex second).
|
int |
simpleColumnCount()
The number of simple columns in this object.
|
java.util.Iterator<ColumnDefinition> |
simpleColumns()
Iterator over the simple columns of this object.
|
int |
simpleIdx(ColumnDefinition c)
The index of the provided simple column in this object (if it contains
the provided column).
|
int |
size()
The total number of columns in this object.
|
java.lang.String |
toString() |
Columns |
without(ColumnDefinition column)
Returns the equivalent of those columns but with the provided column removed.
|
add, addAll, clear, contains, remove, removeAll, retainAll, toArray, toArray
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
public static final Columns.Serializer serializer
public static final Columns NONE
public static Columns of(ColumnDefinition c)
Columns
holding only the one column provided.c
- the column for which to create a Columns
object.Columns
containing only c
.public static Columns from(java.util.Collection<ColumnDefinition> s)
Columns
object holing the same columns than the provided set.s
- the set from which to create the new Columns
.Columns
containing the columns from s
.public boolean isEmpty()
isEmpty
in interface java.util.Collection<ColumnDefinition>
isEmpty
in class java.util.AbstractCollection<ColumnDefinition>
public int simpleColumnCount()
public int complexColumnCount()
public int size()
size
in interface java.util.Collection<ColumnDefinition>
size
in class java.util.AbstractCollection<ColumnDefinition>
public boolean hasSimple()
public boolean hasComplex()
public ColumnDefinition getSimple(int i)
i
- the index for the simple column to fectch. This must
satisfy 0 <= i < simpleColumnCount()
.i
th simple column in this object.public ColumnDefinition getComplex(int i)
i
- the index for the complex column to fectch. This must
satisfy 0 <= i < complexColumnCount()
.i
th complex column in this object.public int simpleIdx(ColumnDefinition c)
c
- the simple column for which to return the index of.c
if it is contains in this
objectpublic int complexIdx(ColumnDefinition c)
c
- the complex column for which to return the index of.c
if it is contains in this
objectpublic boolean contains(ColumnDefinition c)
c
- the column to check presence of.c
is contained by this object.public Columns mergeTo(Columns other)
Columns
object with the
provided one.other
- the other Columns
to merge this object with.this
and
other
. The returned object may be one of the operand and that
operand is a subset of the other operand.public boolean containsAll(java.util.Collection<?> other)
Columns object
.containsAll
in interface java.util.Collection<ColumnDefinition>
containsAll
in class java.util.AbstractCollection<ColumnDefinition>
other
- the other object to test for inclusion in this object.other
are contained by this object.public java.util.Iterator<ColumnDefinition> simpleColumns()
public java.util.Iterator<ColumnDefinition> complexColumns()
public BTreeSearchIterator<ColumnDefinition,ColumnDefinition> iterator()
iterator
in interface java.lang.Iterable<ColumnDefinition>
iterator
in interface java.util.Collection<ColumnDefinition>
iterator
in class java.util.AbstractCollection<ColumnDefinition>
public java.util.Iterator<ColumnDefinition> selectOrderIterator()
public Columns without(ColumnDefinition column)
column
- the column to remove.this
expect
for column
.public java.util.function.Predicate<ColumnDefinition> inOrderInclusionTester()
Columns
object,
assuming that tes tested columns are passed to the predicate in sorted order.public void digest(java.security.MessageDigest digest)
public boolean equals(java.lang.Object other)
equals
in interface java.util.Collection<ColumnDefinition>
equals
in class java.lang.Object
public int hashCode()
hashCode
in interface java.util.Collection<ColumnDefinition>
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.util.AbstractCollection<ColumnDefinition>
Copyright © 2021 The Apache Software Foundation