本文整理汇总了Java中org.apache.cassandra.io.util.DataOutputPlus.writeInt方法的典型用法代码示例。如果您正苦于以下问题:Java DataOutputPlus.writeInt方法的具体用法?Java DataOutputPlus.writeInt怎么用?Java DataOutputPlus.writeInt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.cassandra.io.util.DataOutputPlus
的用法示例。
在下文中一共展示了DataOutputPlus.writeInt方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
void serialize(DataOutputPlus out) throws IOException
{
CRC32 crc = new CRC32();
out.writeInt(version);
updateChecksumInt(crc, version);
out.writeLong(timestamp);
updateChecksumLong(crc, timestamp);
out.writeLong(hostId.getMostSignificantBits());
updateChecksumLong(crc, hostId.getMostSignificantBits());
out.writeLong(hostId.getLeastSignificantBits());
updateChecksumLong(crc, hostId.getLeastSignificantBits());
byte[] paramsBytes = JSONValue.toJSONString(parameters).getBytes(StandardCharsets.UTF_8);
out.writeInt(paramsBytes.length);
updateChecksumInt(crc, paramsBytes.length);
out.writeInt((int) crc.getValue());
out.write(paramsBytes);
crc.update(paramsBytes, 0, paramsBytes.length);
out.writeInt((int) crc.getValue());
}
示例2: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(Leaf leaf, DataOutputPlus out, int version) throws IOException
{
if (leaf.hash == null)
{
if (version < MessagingService.VERSION_30)
out.writeInt(-1);
else
out.writeByte(-1);
}
else
{
if (version < MessagingService.VERSION_30)
out.writeInt(leaf.hash.length);
else
out.writeByte(leaf.hash.length);
out.write(leaf.hash);
}
}
示例3: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(RangeTombstoneList tombstones, DataOutputPlus out, int version) throws IOException
{
if (tombstones == null)
{
out.writeInt(0);
return;
}
out.writeInt(tombstones.size);
for (int i = 0; i < tombstones.size; i++)
{
type.serializer().serialize(tombstones.starts[i], out);
type.serializer().serialize(tombstones.ends[i], out);
out.writeInt(tombstones.delTimes[i]);
out.writeLong(tombstones.markedAts[i]);
}
}
示例4: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(EstimatedHistogram eh, DataOutputPlus out) throws IOException
{
long[] offsets = eh.getBucketOffsets();
long[] buckets = eh.getBuckets(false);
out.writeInt(buckets.length);
for (int i = 0; i < buckets.length; i++)
{
out.writeLong(offsets[i == 0 ? 0 : i - 1]);
out.writeLong(buckets[i]);
}
}
示例5: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(IntervalTree<C, D, I> it, DataOutputPlus out, int version) throws IOException
{
out.writeInt(it.count);
for (Interval<C, D> interval : it)
{
pointSerializer.serialize(interval.min, out);
pointSerializer.serialize(interval.max, out);
dataSerializer.serialize(interval.data, out);
}
}
示例6: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(StreamingHistogram histogram, DataOutputPlus out) throws IOException
{
out.writeInt(histogram.maxBinSize);
Map<Number, long[]> entries = histogram.getAsMap();
out.writeInt(entries.size());
for (Map.Entry<Number, long[]> entry : entries.entrySet())
{
out.writeDouble(entry.getKey().doubleValue());
out.writeLong(entry.getValue()[0]);
}
}
示例7: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(AbstractBounds<T> range, DataOutputPlus out, int version) throws IOException
{
/*
* The first int tells us if it's a range or bounds (depending on the value) _and_ if it's tokens or keys (depending on the
* sign). We use negative kind for keys so as to preserve the serialization of token from older version.
*/
if (version < MessagingService.VERSION_30)
out.writeInt(kindInt(range));
else
out.writeByte(kindFlags(range));
serializer.serialize(range.left, out, version);
serializer.serialize(range.right, out, version);
}
示例8: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(DataOutputPlus out, CFMetaData metadata) throws IOException
{
out.writeInt(size);
if (size == 0)
return;
if (metadata.isCompound())
serializeCompound(out, metadata.isDense());
else
serializeSimple(out);
}
示例9: serializeCompound
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
private void serializeCompound(DataOutputPlus out, boolean isDense) throws IOException
{
List<AbstractType<?>> types = new ArrayList<>(comparator.clusteringComparator.subtypes());
if (!isDense)
types.add(UTF8Type.instance);
CompositeType type = CompositeType.getInstance(types);
for (int i = 0; i < size; i++)
{
LegacyBound start = starts[i];
LegacyBound end = ends[i];
CompositeType.Builder startBuilder = type.builder();
CompositeType.Builder endBuilder = type.builder();
for (int j = 0; j < start.bound.clustering().size(); j++)
{
startBuilder.add(start.bound.get(j));
endBuilder.add(end.bound.get(j));
}
if (start.collectionName != null)
startBuilder.add(start.collectionName.name.bytes);
if (end.collectionName != null)
endBuilder.add(end.collectionName.name.bytes);
ByteBufferUtil.writeWithShortLength(startBuilder.build(), out);
ByteBufferUtil.writeWithShortLength(endBuilder.buildAsEndOfRange(), out);
out.writeInt(delTimes[i]);
out.writeLong(markedAts[i]);
}
}
示例10: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(CompressionParams parameters, DataOutputPlus out, int version) throws IOException
{
out.writeUTF(parameters.sstableCompressor.getClass().getSimpleName());
out.writeInt(parameters.otherOptions.size());
for (Map.Entry<String, String> entry : parameters.otherOptions.entrySet())
{
out.writeUTF(entry.getKey());
out.writeUTF(entry.getValue());
}
out.writeInt(parameters.chunkLength());
}
示例11: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(Version version, CompactionMetadata component, DataOutputPlus out) throws IOException
{
if (version.hasCompactionAncestors())
{ // write empty ancestor marker
out.writeInt(0);
}
ByteBufferUtil.writeWithLength(component.cardinalityEstimator.getBytes(), out);
}
示例12: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(Inner inner, DataOutputPlus out, int version) throws IOException
{
if (inner.hash == null)
out.writeInt(-1);
else
{
out.writeInt(inner.hash.length);
out.write(inner.hash);
}
Token.serializer.serialize(inner.token, out);
Hashable.serializer.serialize(inner.lchild, out, version);
Hashable.serializer.serialize(inner.rchild, out, version);
}
示例13: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(IndexSummary t, DataOutputPlus out, boolean withSamplingLevel) throws IOException
{
out.writeInt(t.minIndexInterval);
out.writeInt(t.offsetCount);
out.writeLong(t.getOffHeapSize());
if (withSamplingLevel)
{
out.writeInt(t.samplingLevel);
out.writeInt(t.sizeAtFullSampling);
}
// our on-disk representation treats the offsets and the summary data as one contiguous structure,
// in which the offsets are based from the start of the structure. i.e., if the offsets occupy
// X bytes, the value of the first offset will be X. In memory we split the two regions up, so that
// the summary values are indexed from zero, so we apply a correction to the offsets when de/serializing.
// In this case adding X to each of the offsets.
int baseOffset = t.offsetCount * 4;
for (int i = 0 ; i < t.offsetCount ; i++)
{
int offset = t.offsets.getInt(i * 4) + baseOffset;
// our serialization format for this file uses native byte order, so if this is different to the
// default Java serialization order (BIG_ENDIAN) we have to reverse our bytes
if (ByteOrder.nativeOrder() != ByteOrder.BIG_ENDIAN)
offset = Integer.reverseBytes(offset);
out.writeInt(offset);
}
out.write(t.entries, 0, t.entriesLength);
}
示例14: serializeSliceCommand
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
private void serializeSliceCommand(SinglePartitionReadCommand command, DataOutputPlus out) throws IOException
{
CFMetaData metadata = command.metadata();
ClusteringIndexSliceFilter filter = (ClusteringIndexSliceFilter)command.clusteringIndexFilter();
Slices slices = filter.requestedSlices();
boolean makeStaticSlice = !command.columnFilter().fetchedColumns().statics.isEmpty() && !slices.selects(Clustering.STATIC_CLUSTERING);
serializeSlices(out, slices, filter.isReversed(), makeStaticSlice, metadata);
out.writeBoolean(filter.isReversed());
boolean selectsStatics = !command.columnFilter().fetchedColumns().statics.isEmpty() || slices.selects(Clustering.STATIC_CLUSTERING);
DataLimits limits = command.limits();
if (limits.isDistinct())
out.writeInt(1); // the limit is always 1 for DISTINCT queries
else
out.writeInt(updateLimitForQuery(command.limits().count(), filter.requestedSlices()));
int compositesToGroup;
if (limits.kind() == DataLimits.Kind.THRIFT_LIMIT || metadata.isDense())
compositesToGroup = -1;
else if (limits.isDistinct() && !selectsStatics)
compositesToGroup = -2; // for DISTINCT queries (CASSANDRA-8490)
else
compositesToGroup = metadata.clusteringColumns().size();
out.writeInt(compositesToGroup);
}
示例15: serialize
import org.apache.cassandra.io.util.DataOutputPlus; //导入方法依赖的package包/类
public void serialize(GossipDigestAck2 ack2, DataOutputPlus out, int version) throws IOException
{
out.writeInt(ack2.epStateMap.size());
for (Map.Entry<InetAddress, EndpointState> entry : ack2.epStateMap.entrySet())
{
InetAddress ep = entry.getKey();
CompactEndpointSerializationHelper.serialize(ep, out);
EndpointState.serializer.serialize(entry.getValue(), out, version);
}
}