本文整理汇总了Java中org.apache.cassandra.utils.btree.BTree.Builder方法的典型用法代码示例。如果您正苦于以下问题:Java BTree.Builder方法的具体用法?Java BTree.Builder怎么用?Java BTree.Builder使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.cassandra.utils.btree.BTree
的用法示例。
在下文中一共展示了BTree.Builder方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: build
import org.apache.cassandra.utils.btree.BTree; //导入方法依赖的package包/类
protected static Holder build(UnfilteredRowIterator iterator, int initialRowCapacity, boolean ordered)
{
CFMetaData metadata = iterator.metadata();
PartitionColumns columns = iterator.columns();
boolean reversed = iterator.isReverseOrder();
BTree.Builder<Row> builder = BTree.builder(metadata.comparator, initialRowCapacity);
builder.auto(!ordered);
MutableDeletionInfo.Builder deletionBuilder = MutableDeletionInfo.builder(iterator.partitionLevelDeletion(), metadata.comparator, reversed);
while (iterator.hasNext())
{
Unfiltered unfiltered = iterator.next();
if (unfiltered.kind() == Unfiltered.Kind.ROW)
builder.add((Row)unfiltered);
else
deletionBuilder.add((RangeTombstoneMarker)unfiltered);
}
if (reversed)
builder.reverse();
return new Holder(columns, builder.build(), deletionBuilder.build(), iterator.staticRow(), iterator.stats());
}
示例2: deserialize
import org.apache.cassandra.utils.btree.BTree; //导入方法依赖的package包/类
public Columns deserialize(DataInputPlus in, CFMetaData metadata) throws IOException
{
int length = (int)in.readUnsignedVInt();
BTree.Builder<ColumnDefinition> builder = BTree.builder(Comparator.naturalOrder());
builder.auto(false);
for (int i = 0; i < length; i++)
{
ByteBuffer name = ByteBufferUtil.readWithVIntLength(in);
ColumnDefinition column = metadata.getColumnDefinition(name);
if (column == null)
{
// If we don't find the definition, it could be we have data for a dropped column, and we shouldn't
// fail deserialization because of that. So we grab a "fake" ColumnDefinition that ensure proper
// deserialization. The column will be ignore later on anyway.
column = metadata.getDroppedColumnDefinition(name);
if (column == null)
throw new RuntimeException("Unknown column " + UTF8Type.instance.getString(name) + " during deserialization");
}
builder.add(column);
}
return new Columns(builder.build());
}
示例3: build
import org.apache.cassandra.utils.btree.BTree; //导入方法依赖的package包/类
protected static Holder build(UnfilteredRowIterator iterator, int initialRowCapacity)
{
CFMetaData metadata = iterator.metadata();
PartitionColumns columns = iterator.columns();
boolean reversed = iterator.isReverseOrder();
BTree.Builder<Row> builder = BTree.builder(metadata.comparator, initialRowCapacity);
builder.auto(false);
MutableDeletionInfo.Builder deletionBuilder = MutableDeletionInfo.builder(iterator.partitionLevelDeletion(), metadata.comparator, reversed);
while (iterator.hasNext())
{
Unfiltered unfiltered = iterator.next();
if (unfiltered.kind() == Unfiltered.Kind.ROW)
builder.add((Row)unfiltered);
else
deletionBuilder.add((RangeTombstoneMarker)unfiltered);
}
if (reversed)
builder.reverse();
return new Holder(columns, builder.build(), deletionBuilder.build(), iterator.staticRow(), iterator.stats());
}
示例4: deserializeSubset
import org.apache.cassandra.utils.btree.BTree; //导入方法依赖的package包/类
public Columns deserializeSubset(Columns superset, DataInputPlus in) throws IOException
{
long encoded = in.readUnsignedVInt();
if (encoded == 0L)
{
return superset;
}
else if (superset.size() >= 64)
{
return deserializeLargeSubset(in, superset, (int) encoded);
}
else
{
BTree.Builder<ColumnDefinition> builder = BTree.builder(Comparator.naturalOrder());
int firstComplexIdx = 0;
for (ColumnDefinition column : superset)
{
if ((encoded & 1) == 0)
{
builder.add(column);
if (column.isSimple())
++firstComplexIdx;
}
encoded >>>= 1;
}
return new Columns(builder.build(), firstComplexIdx);
}
}
示例5: getCells
import org.apache.cassandra.utils.btree.BTree; //导入方法依赖的package包/类
private BTree.Builder<Cell> getCells()
{
if (cells_ == null)
{
cells_ = BTree.builder(ColumnData.comparator);
cells_.auto(false);
}
return cells_;
}
示例6: builder
import org.apache.cassandra.utils.btree.BTree; //导入方法依赖的package包/类
private BTree.Builder<Row> builder(int initialCapacity)
{
return BTree.<Row>builder(metadata.comparator, initialCapacity)
.setQuickResolver((a, b) ->
Rows.merge(a, b, createdAtInSec));
}