com.google.flatbuffers.FlatBufferBuilder.<init>()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(10.4k)|赞(0)|评价(0)|浏览(151)

本文整理了Java中com.google.flatbuffers.FlatBufferBuilder.<init>()方法的一些代码示例,展示了FlatBufferBuilder.<init>()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。FlatBufferBuilder.<init>()方法的具体详情如下:
包路径:com.google.flatbuffers.FlatBufferBuilder
类名称:FlatBufferBuilder
方法名:<init>

FlatBufferBuilder.<init>介绍

[英]Start with a buffer of 1KiB, then grow as required.
[中]从1KB的缓冲区开始,然后根据需要增长。

代码示例

代码示例来源:origin: deeplearning4j/nd4j

FlatBufferBuilder bufferBuilder = new FlatBufferBuilder(1024);
val idCounter = new AtomicInteger(0);

代码示例来源:origin: davidmoten/rtree

private static <T, S extends Geometry> Node_ createNode(List<Entry<T, S>> entries,
    Func1<? super T, byte[]> serializer) {
  FlatBufferBuilder builder = new FlatBufferBuilder(0);
  builder.finish(FlatBuffersHelper.addEntries(entries, builder, serializer));
  return Node_.getRootAsNode_(builder.dataBuffer());
}

代码示例来源:origin: davidmoten/rtree

@Override
public void write(RTree<T, S> tree, OutputStream os) throws IOException {
  FlatBufferBuilder builder = new FlatBufferBuilder();
  final Rectangle mbb;
  if (tree.root().isPresent()) {

代码示例来源:origin: locationtech/geogig

public byte[] encode(@NonNull RevObject o) {
  FlatBufferBuilder fbb = new FlatBufferBuilder();
  encode(o, fbb);
  ByteBuffer dataBuffer = fbb.dataBuffer();
  byte[] array = new byte[dataBuffer.remaining()];
  dataBuffer.get(array);
  return array;
}

代码示例来源:origin: org.apache.arrow/arrow-vector

public byte[] toByteArray() {
 FlatBufferBuilder builder = new FlatBufferBuilder();
 int schemaOffset = this.getSchema(builder);
 builder.finish(schemaOffset);
 ByteBuffer bb = builder.dataBuffer();
 byte[] bytes = new byte[bb.remaining()];
 bb.get(bytes);
 return bytes;
}

代码示例来源:origin: stackoverflow.com

FlatBufferBuilder fbb = new FlatBufferBuilder();
int str = fbb.createString("MyMonster");
Monster.startMonster(fbb);
Monster.addName(fbb, str);
int mon = Monster.endMonster(fbb); 
fbb.finish(mon);   
byte[] data = fbb.sizedByteArray();

代码示例来源:origin: dremio/dremio-oss

public byte[] serialize() {
 FlatBufferBuilder builder = new FlatBufferBuilder();
 builder.finish(serialize(builder));
 return builder.sizedByteArray();
}

代码示例来源:origin: dremio/dremio-oss

public byte[] serialize() {
 FlatBufferBuilder builder = new FlatBufferBuilder();
 builder.finish(serialize(builder));
 return builder.sizedByteArray();
}

代码示例来源:origin: stackoverflow.com

FlatBufferBuilder fbb = new FlatBufferBuilder();
int messagePosition = fbb.createString("something bad happened");
int serviceExceptionPosition = ServiceException.createServiceException(fbb, messagePosition);
fbb.finish(serviceExceptionPosition);
byte[] outputBytes = fbb.sizedByteArray();

代码示例来源:origin: org.apache.arrow/arrow-vector

public static ByteBuffer serialize(FBSerializable writer) {
  FlatBufferBuilder builder = new FlatBufferBuilder();
  int root = writer.writeTo(builder);
  builder.finish(root);
  return builder.dataBuffer();
 }
}

代码示例来源:origin: flipkart-incubator/kafka-filtering

public byte[] encode(byte[] serializedWithoutWrap, Map<String, String> tags) {
  FlatBufferBuilder fbb = new FlatBufferBuilder(1024);
  int[] tagsArr = new int[tags.size()];
  int i = 0;
  for (Map.Entry<String, String> entry : tags.entrySet()) {
    tagsArr[i] = _encodeEntry(entry, fbb);
    i++;
  }
  int tagsRef = FB_FilterWrap.createTagsVector(fbb, tagsArr);
  int dataRef = FB_FilterWrap.createDataVector(fbb, serializedWithoutWrap);
  int filterWrapRef = FB_FilterWrap.createFB_FilterWrap(fbb, tagsRef, dataRef);
  FB_FilterWrap.finishFB_FilterWrapBuffer(fbb, filterWrapRef);
  int buffer_start = fbb.dataBuffer().position();
  int buffer_length = fbb.offset();
  byte[] full_buffer = fbb.dataBuffer().array();
  return Arrays.copyOfRange(full_buffer, buffer_start, buffer_start + buffer_length);
}

代码示例来源:origin: com.github.davidmoten/rtree

private static <T, S extends Geometry> Node_ createNode(List<Entry<T, S>> entries,
    Func1<? super T, byte[]> serializer) {
  FlatBufferBuilder builder = new FlatBufferBuilder(0);
  builder.finish(FlatBuffersHelper.addEntries(entries, builder, serializer));
  return Node_.getRootAsNode_(builder.dataBuffer());
}

代码示例来源:origin: org.apache.arrow/arrow-vector

/**
 * Serialize a schema object.
 *
 * @param out    where to write the schema
 * @param schema the object to serialize to out
 * @return the number of bytes written
 * @throws IOException if something went wrong
 */
public static long serialize(WriteChannel out, Schema schema) throws IOException {
 long start = out.getCurrentPosition();
 assert start % 8 == 0;
 FlatBufferBuilder builder = new FlatBufferBuilder();
 int schemaOffset = schema.getSchema(builder);
 ByteBuffer serializedMessage = serializeMessage(builder, MessageHeader.Schema, schemaOffset, 0);
 int messageLength = serializedMessage.remaining();
 int bytesWritten = writeMessageBuffer(out, messageLength, serializedMessage);
 assert bytesWritten % 8 == 0;
 return bytesWritten;
}

代码示例来源:origin: dremio/dremio-oss

public FragmentWritableBatch(
  final QueryId queryId,
  final int sendMajorFragmentId,
  final int sendMinorFragmentId,
  final int receiveMajorFragmentId,
  ArrowRecordBatch recordBatch,
  final int... receiveMinorFragmentId){
 this.buffers = recordBatch.getBuffers().toArray(new ByteBuf[0]);
 this.recordCount = recordBatch.getLength();
 FlatBufferBuilder fbbuilder = new FlatBufferBuilder();
 fbbuilder.finish(recordBatch.writeTo(fbbuilder));
 ByteBuffer arrowRecordBatch = fbbuilder.dataBuffer();
 final FragmentRecordBatch.Builder builder = FragmentRecordBatch.newBuilder()
   .setArrowRecordBatch(ByteString.copyFrom(arrowRecordBatch))
   .setQueryId(queryId)
   .setReceivingMajorFragmentId(receiveMajorFragmentId)
   .setSendingMajorFragmentId(sendMajorFragmentId)
   .setSendingMinorFragmentId(sendMinorFragmentId);
 for(final int i : receiveMinorFragmentId){
  builder.addReceivingMinorFragmentId(i);
 }
 this.header = builder.build();
}

代码示例来源:origin: org.apache.arrow/arrow-vector

assert bodyLength % 8 == 0;
FlatBufferBuilder builder = new FlatBufferBuilder();
int batchOffset = batch.writeTo(builder);

代码示例来源:origin: WeBankFinTech/FATE

public static Operand createOperand(Bytes key, byte[] value) {
    FlatBufferBuilder fbb = new FlatBufferBuilder();
    int kVec = fbb.createByteVector(key.get());
    int vVec;
    if (value != null) {
      vVec = fbb.createByteVector(value);
    } else {
      vVec = fbb.createByteVector(new byte[0]);
    }
    Operand.startOperand(fbb);
    Operand.addKey(fbb, kVec);
    Operand.addValue(fbb, vVec);
    fbb.finish(Operand.endOperand(fbb));
    return Operand.getRootAsOperand(fbb.dataBuffer());
  }
}

代码示例来源:origin: nemtech/nem2-sdk-java

byte[] generateBytes() {
  FlatBufferBuilder builder = new FlatBufferBuilder();
  BigInteger deadlineBigInt = BigInteger.valueOf(getDeadline().getInstant());
  int[] fee = new int[]{0, 0};
  int version = (int) Long.parseLong(Integer.toHexString(getNetworkType().getValue()) + "0" + Integer.toHexString(getVersion()), 16);
  byte[] transactionsBytes = new byte[0];
  for (Transaction innerTransaction : innerTransactions) {
    byte[] transactionBytes = innerTransaction.toAggregateTransactionBytes();
    transactionsBytes = ArrayUtils.addAll(transactionsBytes, transactionBytes);
  }
  // Create Vectors
  int signatureVector = AggregateTransactionBuffer.createSignatureVector(builder, new byte[64]);
  int signerVector = AggregateTransactionBuffer.createSignerVector(builder, new byte[32]);
  int deadlineVector = AggregateTransactionBuffer.createDeadlineVector(builder, UInt64.fromBigInteger(deadlineBigInt));
  int feeVector = AggregateTransactionBuffer.createFeeVector(builder, fee);
  int transactionsVector = AggregateTransactionBuffer.createTransactionsVector(builder, transactionsBytes);
  AggregateTransactionBuffer.startAggregateTransactionBuffer(builder);
  AggregateTransactionBuffer.addSize(builder, 120 + 4 + transactionsBytes.length);
  AggregateTransactionBuffer.addSignature(builder, signatureVector);
  AggregateTransactionBuffer.addSigner(builder, signerVector);
  AggregateTransactionBuffer.addVersion(builder, version);
  AggregateTransactionBuffer.addType(builder, getType().getValue());
  AggregateTransactionBuffer.addFee(builder, feeVector);
  AggregateTransactionBuffer.addDeadline(builder, deadlineVector);
  AggregateTransactionBuffer.addTransactionsSize(builder, transactionsBytes.length);
  AggregateTransactionBuffer.addTransactions(builder, transactionsVector);
  int codedTransaction = AggregateTransactionBuffer.endAggregateTransactionBuffer(builder);
  builder.finish(codedTransaction);
  return schema.serialize(builder.sizedByteArray());
}

代码示例来源:origin: nemtech/nem2-sdk-java

@Override
byte[] generateBytes() {
  FlatBufferBuilder builder = new FlatBufferBuilder();
  BigInteger deadlineBigInt = BigInteger.valueOf(getDeadline().getInstant());
  int[] fee = new int[]{0, 0};

代码示例来源:origin: dremio/dremio-oss

/**
 * Converting old Arrow Schema to new one based on Arrow version used
 * in Dremio as of 2.1.0
 * @param oldSchema
 * @return
 */
@VisibleForTesting
byte[] convertFromOldSchema(OldSchema oldSchema) {
 FlatBufferBuilder builder = new FlatBufferBuilder();
 int[] fieldOffsets = new int[oldSchema.fieldsLength()];
 for (int i = 0; i < oldSchema.fieldsLength(); i++) {
  fieldOffsets[i] = convertFromOldField(oldSchema.fields(i), builder);
 }
 int fieldsOffset = org.apache.arrow.flatbuf.Schema.createFieldsVector(builder, fieldOffsets);
 int[] metadataOffsets = new int[oldSchema.customMetadataLength()];
 for (int i = 0; i < metadataOffsets.length; i++) {
  int keyOffset = builder.createString(oldSchema.customMetadata(i).key());
  int valueOffset = builder.createString(oldSchema.customMetadata(i).value());
  KeyValue.startKeyValue(builder);
  KeyValue.addKey(builder, keyOffset);
  KeyValue.addValue(builder, valueOffset);
  metadataOffsets[i] = KeyValue.endKeyValue(builder);
 }
 int metadataOffset = org.apache.arrow.flatbuf.Field.createCustomMetadataVector(builder, metadataOffsets);
 org.apache.arrow.flatbuf.Schema.startSchema(builder);
 org.apache.arrow.flatbuf.Schema.addFields(builder, fieldsOffset);
 org.apache.arrow.flatbuf.Schema.addCustomMetadata(builder, metadataOffset);
 builder.finish(org.apache.arrow.flatbuf.Schema.endSchema(builder));
 return builder.sizedByteArray();
}

代码示例来源:origin: dremio/dremio-oss

@Test
public void testDataSetSchema() throws Exception {
 try(
     final KVStoreProvider kvstore = new LocalKVStoreProvider(DremioTest.CLASSPATH_SCAN_RESULT, null, true, false);
 ) {
  kvstore.start();
  final NamespaceService ns = new NamespaceServiceImpl(kvstore);
  Field field1 = new Field("a", true, new Int(32, true), null);
  Field child1 = new Field("c", true, Utf8.INSTANCE, null);
  Field field2 = new Field("b", true, Struct.INSTANCE, ImmutableList.of(child1));
  Schema schema = new Schema(ImmutableList.of(field1, field2));
  FlatBufferBuilder builder = new FlatBufferBuilder();
  schema.getSchema(builder);
  builder.finish(schema.getSchema(builder));
  addSource(ns, "s");
  addPhysicalDS(ns, "s.foo", builder.sizedByteArray());
  ByteBuffer bb = ByteBuffer.wrap(DatasetHelper.getSchemaBytes(ns.getDataset(new NamespaceKey(PathUtils.parseFullPath("s.foo")))).toByteArray());
  Schema returnedSchema = Schema.convertSchema(org.apache.arrow.flatbuf.Schema.getRootAsSchema(bb));
  assertEquals(schema, returnedSchema);
 }
}

相关文章

微信公众号

最新文章

更多