public class Columns extends java.lang.Object implements java.lang.Iterable<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 |
|---|---|
ColumnDefinition[] |
columns |
int |
complexIdx |
static Columns |
NONE |
static Columns.Serializer |
serializer |
| Modifier and Type | Method and Description |
|---|---|
int |
columnCount()
The total number of columns in this object.
|
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,
int from)
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 |
contains(Columns 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.Set<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.
|
boolean |
hasCounters()
Whether or not there is some counter columns within those 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.
|
java.util.Iterator<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,
int from)
The index of the provided simple column in this object (if it contains
the provided column).
|
java.lang.String |
toString() |
Columns |
without(ColumnDefinition column)
Returns the equivalent of those columns but with the provided column removed.
|
public static final Columns.Serializer serializer
public static final Columns NONE
public final ColumnDefinition[] columns
public final int complexIdx
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.Set<ColumnDefinition> s)
Columns object holing the same columns than the provided set.param - s the set from which to create the new Columns.Columns containing the columns from s.public boolean isEmpty()
public int simpleColumnCount()
public int complexColumnCount()
public int columnCount()
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().ith 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().ith complex column in this object.public int simpleIdx(ColumnDefinition c, int from)
c - the simple column for which to return the index of.from - the index to start the search from.c if it is contains in this
object (starting from index from), -1 otherwise.public int complexIdx(ColumnDefinition c, int from)
c - the complex column for which to return the index of.from - the index to start the search from.c if it is contains in this
object (starting from index from), -1 otherwise.public boolean contains(ColumnDefinition c)
c - the column to check presence of.c is contained by this object.public boolean hasCounters()
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 contains(Columns other)
Columns object.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 java.util.Iterator<ColumnDefinition> iterator()
iterator in interface java.lang.Iterable<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 class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.ObjectCopyright © 2015 The Apache Software Foundation