com.fasterxml.jackson.core.JsonGenerator#writeBinary ( )源码实例Demo

下面列出了com.fasterxml.jackson.core.JsonGenerator#writeBinary ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: jackson-jr   文件: JrsEmbeddedObject.java
@Override
protected void write(JsonGenerator g, JacksonJrsTreeCodec codec) throws IOException {
    if (_value == null) {
        g.writeNull();
    } else if (_value instanceof byte[]) {
        g.writeBinary((byte[]) _value);
    } else {
        g.writeObject(_value);
    }
}
 
@Override
protected void doSerialize(ArrowRecordBatch arrowRecordBatch, JsonGenerator jgen, SerializerProvider provider)
        throws IOException
{
    try {
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        MessageSerializer.serialize(new WriteChannel(Channels.newChannel(out)), arrowRecordBatch);
        jgen.writeBinary(out.toByteArray());
    }
    finally {
        arrowRecordBatch.close();
    }
}
 
源代码3 项目: aws-athena-query-federation   文件: SchemaSerDe.java
@Override
protected void doSerialize(Schema schema, JsonGenerator jgen, SerializerProvider provider)
        throws IOException
{
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    MessageSerializer.serialize(new WriteChannel(Channels.newChannel(out)), schema);
    jgen.writeBinary(out.toByteArray());
}
 
源代码4 项目: presto-kudu   文件: RangeBoundValueSerializer.java
private void writeValue(Object obj, JsonGenerator gen) throws IOException {
    if (obj == null) {
        throw new IllegalStateException("Unexpected null value");
    } else if (obj instanceof String) {
        gen.writeString((String) obj);
    } else if (Number.class.isAssignableFrom(obj.getClass())) {
        if (obj instanceof Long) {
            gen.writeNumber((Long) obj);
        } else if (obj instanceof Integer) {
            gen.writeNumber((Integer) obj);
        } else if (obj instanceof Short) {
            gen.writeNumber((Short) obj);
        } else if (obj instanceof Double) {
            gen.writeNumber((Double) obj);
        } else if (obj instanceof Float) {
            gen.writeNumber((Float) obj);
        } else if (obj instanceof BigInteger) {
            gen.writeNumber((BigInteger) obj);
        } else if (obj instanceof BigDecimal) {
            gen.writeNumber((BigDecimal) obj);
        } else {
            throw new IllegalStateException("Unknown number value: " + obj);
        }
    } else if (obj instanceof Boolean) {
        gen.writeBoolean((Boolean) obj);
    } else if (obj instanceof byte[]) {
        gen.writeBinary((byte[]) obj);
    }
}
 
源代码5 项目: lams   文件: ByteArraySerializer.java
@Override
public void serialize(byte[] value, JsonGenerator g, SerializerProvider provider)
    throws IOException
{
    g.writeBinary(provider.getConfig().getBase64Variant(),
            value, 0, value.length);
}
 
源代码6 项目: webauthn4j   文件: X509CertificateSerializer.java
/**
 * {@inheritDoc}
 */
@Override
public void serialize(X509Certificate value, JsonGenerator gen, SerializerProvider provider) throws IOException {
    try {
        gen.writeBinary(value.getEncoded());
    } catch (CertificateEncodingException e) {
        throw new UnexpectedCheckedException(e);
    }
}
 
private static SimpleModule getWriteBlobAsBase64Module() {
  JsonSerializer<Blob> dateSerializer = new JsonSerializer<Blob>() {
    @Override
    public void serialize(Blob value, JsonGenerator jgen, SerializerProvider provider)
        throws IOException {
      byte[] bytes = value.getBytes();
      jgen.writeBinary(bytes, 0, bytes.length);
    }
  };
  SimpleModule writeBlobAsBase64Module = new SimpleModule("writeBlobAsBase64Module",
      new Version(1, 0, 0, null, null, null));
  writeBlobAsBase64Module.addSerializer(Blob.class, dateSerializer);
  return writeBlobAsBase64Module;
}
 
源代码8 项目: lams   文件: UUIDSerializer.java
@Override
public void serialize(UUID value, JsonGenerator gen, SerializerProvider provider)
    throws IOException
{
    // First: perhaps we could serialize it as raw binary data?
    if (gen.canWriteBinaryNatively()) {
        /* 07-Dec-2013, tatu: One nasty case; that of TokenBuffer. While it can
         *   technically retain binary data, we do not want to do use binary
         *   with it, as that results in UUIDs getting converted to Base64 for
         *   most conversions.
         */
        if (!(gen instanceof TokenBuffer)) {
            gen.writeBinary(_asBytes(value));
            return;
        }
    }
    
    // UUID.toString() works ok functionally, but we can make it go much faster
    // (by 4x with micro-benchmark)

    final char[] ch = new char[36];
    final long msb = value.getMostSignificantBits();
    _appendInt((int) (msb >> 32), ch, 0);
    ch[8] = '-';
    int i = (int) msb;
    _appendShort(i >>> 16, ch, 9);
    ch[13] = '-';
    _appendShort(i, ch, 14);
    ch[18] = '-';

    final long lsb = value.getLeastSignificantBits();
    _appendShort((int) (lsb >>> 48), ch, 19);
    ch[23] = '-';
    _appendShort((int) (lsb >>> 32), ch, 24);
    _appendInt((int) lsb, ch, 28);

    gen.writeString(ch, 0, 36);
}
 
@Override
public void serialize(Byte[] value, JsonGenerator jgen, SerializerProvider provider) throws IOException {
    byte[] bytes = new byte[value.length];
    for (int i = 0; i < value.length; i++) {
        bytes[i] = value[i];
    }
    jgen.writeBinary(bytes);
}
 
源代码10 项目: dynamodb-transactions   文件: Request.java
@Override
public void serialize(ByteBuffer value, JsonGenerator jgen,
        SerializerProvider provider) throws IOException,
        JsonProcessingException {
    // value is never null, according to JsonSerializer contract
    jgen.writeBinary(value.array());
}
 
源代码11 项目: dropbox-sdk-java   文件: StoneSerializers.java
@Override
public void serialize(byte [] value, JsonGenerator g) throws IOException, JsonGenerationException {
    g.writeBinary(value);
}
 
源代码12 项目: dremio-oss   文件: CompleteType.java
@Override
public void serialize(CompleteType value, JsonGenerator gen, SerializerProvider serializers)
    throws IOException, JsonProcessingException {
  gen.writeBinary(value.serialize());
}
 
源代码13 项目: WeEvent   文件: FileChunksMeta.java
@Override
public void serialize(BitSet value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
    gen.writeBinary(value.toByteArray());
}
 
源代码14 项目: SkaETL   文件: DoubleHistogramSerializer.java
@Override
public void serialize(DoubleHistogram doubleHistogram, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
    ByteBuffer allocate = ByteBuffer.allocate(doubleHistogram.getNeededByteBufferCapacity());
    doubleHistogram.encodeIntoByteBuffer(allocate);
    jsonGenerator.writeBinary(allocate.array());
}
 
源代码15 项目: dremio-oss   文件: ProtoSerializers.java
@Override
public void serialize(X value, JsonGenerator gen, SerializerProvider provider) throws IOException {
  gen.writeBinary(ProtostuffIOUtil.toByteArray(value, schema, LinkedBuffer.allocate()));
  // JsonIOUtil.writeTo(gen, value, schema, false);
}
 
源代码16 项目: webauthn4j   文件: JWSSerializer.java
@Override
public void serialize(JWS<? extends Serializable> value, JsonGenerator gen, SerializerProvider provider) throws IOException {
    gen.writeBinary(value.getBytes());
}
 
源代码17 项目: webauthn4j   文件: AAGUIDSerializer.java
@Override
public void serialize(AAGUID value, JsonGenerator gen, SerializerProvider provider) throws IOException {
    gen.writeBinary(value.getBytes());
}
 
源代码18 项目: webauthn4j   文件: TPMSAttestSerializer.java
@Override
public void serialize(TPMSAttest value, JsonGenerator gen, SerializerProvider provider) throws IOException {
    gen.writeBinary(value.getBytes());
}
 
源代码19 项目: dremio-oss   文件: PhysicalPlanReader.java
@Override
public void serialize(ByteString value, JsonGenerator gen, SerializerProvider provider) throws IOException {
  gen.writeBinary(value.toByteArray());
}
 
源代码20 项目: log4j2-elasticsearch   文件: ByteBufSerializer.java
@Override
public void serialize(ByteBuf byteBuf, JsonGenerator gen, SerializerProvider serializers) throws IOException {

    byteBuf.resetReaderIndex();

    ByteBufInputStream inputStream = new ByteBufInputStream(byteBuf);
    gen.writeBinary(inputStream, byteBuf.writerIndex());

}