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 ColumnDefinition |
FIRST_COMPLEX |
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 final ColumnDefinition FIRST_COMPLEX
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 © 2018 The Apache Software Foundation