Example usage for org.apache.thrift TDeserializer TDeserializer

List of usage examples for org.apache.thrift TDeserializer TDeserializer

Introduction

In this page you can find the example usage for org.apache.thrift TDeserializer TDeserializer.

Prototype

public TDeserializer(TProtocolFactory protocolFactory) 

Source Link

Document

Create a new TDeserializer.

Usage

From source file:adept.mappers.thrift.MappingTests.java

License:Apache License

private void SerializationTests(final adept.common.HltContentContainer hltAdept)
        throws TException, IOException {
    final XMLSerializer xmlSerializer = new XMLSerializer(SerializationType.XML);
    final TSerializer thriftSerializer = new TSerializer(new TBinaryProtocol.Factory());
    final TDeserializer tdeserializer = new TDeserializer(new TBinaryProtocol.Factory());
    final ThriftAdeptMapper mapper = ThriftAdeptMapper.getInstance();

    // thrift round tripping through serialization
    final thrift.adept.common.HltContentContainer hltThrift = mapper.convert(hltAdept);
    final byte[] thriftBytes = thriftSerializer.serialize(hltThrift);
    final File thriftFile = File.createTempFile("thriftBytes", "thrift");
    thriftFile.deleteOnExit();/*from w  ww  . j  a v  a 2  s  .  co m*/
    Files.asByteSink(thriftFile).write(thriftBytes);
    final thrift.adept.common.HltContentContainer serializationTrippedThrift = new thrift.adept.common.HltContentContainer();
    tdeserializer.deserialize(serializationTrippedThrift, Files.asByteSource(thriftFile).read());

    // adept fun times
    final String adeptString = xmlSerializer.serializeAsString(hltAdept);
    final File adeptFile = File.createTempFile("adeptString", "xml");
    adeptFile.deleteOnExit();
    Files.asCharSink(adeptFile, Charsets.UTF_8).write(adeptString);
    final adept.common.HltContentContainer serializedTrippedAdept = (adept.common.HltContentContainer) xmlSerializer
            .deserializeString(Files.asCharSource(adeptFile, Charsets.UTF_8).read(),
                    adept.common.HltContentContainer.class);

    assertTrue(areTheSameByLimitedThriftScope(hltAdept, hltThrift));
    // check that to/from serialization does the right thing
    assertTrue(areTheSameByLimitedThriftScope(serializedTrippedAdept, hltThrift));
    assertTrue(areTheSameByLimitedThriftScope(hltAdept, serializationTrippedThrift));
    assertTrue(areTheSameByLimitedThriftScope(serializedTrippedAdept, serializationTrippedThrift));
}

From source file:andromache.config.CassandraConfigHelper.java

License:Apache License

private static KeyRange keyRangeFromString(String st) {
    assert st != null;
    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    KeyRange keyRange = new KeyRange();
    try {//from www  . j a  v a2  s .  c  o m
        deserializer.deserialize(keyRange, Hex.hexToBytes(st));
    } catch (TException e) {
        throw new RuntimeException(e);
    }
    return keyRange;
}

From source file:andromache.config.CassandraConfigHelper.java

License:Apache License

private static SlicePredicate predicateFromString(String st) {
    assert st != null;
    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    SlicePredicate predicate = new SlicePredicate();
    try {/*from w  ww.  jav  a 2  s . com*/
        deserializer.deserialize(predicate, Hex.hexToBytes(st));
    } catch (TException e) {
        throw new RuntimeException(e);
    }
    return predicate;
}

From source file:ch.usi.da.dlog.message.Command.java

License:Open Source License

public static Command fromByteArray(byte[] b) {
    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    Cmd c = new Cmd();
    try {//ww w .  j a  va  2s .c  o  m
        deserializer.deserialize(c, b);
        if (c.type == null) {
            return null;
        }
    } catch (TException e) {
        return null;
    }
    return toCommand(c);
}

From source file:ch.usi.da.dlog.message.Message.java

License:Open Source License

public static Message fromByteArray(byte[] b) {
    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    ch.usi.da.dlog.thrift.gen.Message m = new ch.usi.da.dlog.thrift.gen.Message();
    try {//from   w w w  . j  av  a  2  s .  co  m
        deserializer.deserialize(m, b);
        if (m.to == null) {
            return null;
        }
    } catch (TException e) {
        return null;
    }
    List<Command> cmds = new ArrayList<Command>();
    for (Cmd c : m.getCommands()) {
        cmds.add(Command.toCommand(c));
    }
    return new Message(m.getId(), m.getFrom(), m.getTo(), cmds);
}

From source file:ch.usi.da.smr.message.Message.java

License:Open Source License

public static Message fromByteArray(byte[] b) {
    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    ch.usi.da.smr.thrift.gen.Message m = new ch.usi.da.smr.thrift.gen.Message();
    try {//from   w ww.j  a va  2  s. c o m
        deserializer.deserialize(m, b);
        if (m.to == null) {
            return null;
        }
    } catch (TException e) {
        return null;
    }
    List<Command> cmds = new ArrayList<Command>();
    for (Cmd c : m.getCommands()) {
        cmds.add(Command.toCommand(c));
    }
    return new Message(m.getId(), m.getFrom(), m.getTo(), cmds);
}

From source file:com.bigdata.dastor.db.RangeSliceCommand.java

License:Apache License

public RangeSliceCommand deserialize(DataInputStream dis) throws IOException {
    String keyspace = dis.readUTF();
    String column_family = dis.readUTF();

    int scLength = dis.readInt();
    byte[] super_column = null;
    if (scLength > 0)
        super_column = readBuf(scLength, dis);

    TDeserializer dser = new TDeserializer(new TBinaryProtocol.Factory());
    SlicePredicate pred = new SlicePredicate();
    FBUtilities.deserialize(dser, pred, dis);

    AbstractBounds range = AbstractBounds.serializer().deserialize(dis);
    int max_keys = dis.readInt();
    return new RangeSliceCommand(keyspace, column_family, super_column, pred, range, max_keys);
}

From source file:com.cloudera.impala.common.JniUtil.java

License:Apache License

/**
     * Deserialize a serialized form of a Thrift data structure to its object form.
     *//*from   www .  java 2  s . c  o m*/
    public static <T extends TBase<?, ?>, F extends TProtocolFactory> void deserializeThrift(F protocolFactory,
            T result, byte[] thriftData) throws ImpalaException {
        // TODO: avoid creating deserializer for each query?
        TDeserializer deserializer = new TDeserializer(protocolFactory);
        try {
            deserializer.deserialize(result, thriftData);
        } catch (TException e) {
            throw new InternalException(e.getMessage());
        }
    }

From source file:com.dse.pig.udfs.AbstractCassandraStorage.java

License:Apache License

/** convert string back to CfDef */
protected static CfDef cfdefFromString(String st) throws IOException {
    assert st != null;
    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    CfDef cfDef = new CfDef();
    try {//from   ww  w  .  j  a  v a  2 s . com
        deserializer.deserialize(cfDef, Hex.hexToBytes(st));
    } catch (TException e) {
        throw new IOException(e);
    }
    return cfDef;
}

From source file:com.facebook.buck.distributed.thrift.BuckJobTest.java

License:Apache License

@Test
public void testSerializeDeserialize() throws Exception {
    BuckJob jobToSerialize = new BuckJob();
    jobToSerialize.setId(JOB_ID);//  ww  w  . ja  va 2 s .  co  m
    jobToSerialize.setTimestamp_ms(JOB_TS);

    TSerializer serializer = new TSerializer(new TBinaryProtocol.Factory());
    byte[] serializedBytes = serializer.serialize(jobToSerialize);

    TDeserializer deserializer = new TDeserializer(new TBinaryProtocol.Factory());
    BuckJob deserializedJob = new BuckJob();
    deserializer.deserialize(deserializedJob, serializedBytes);

    assertEquals(JOB_ID, deserializedJob.getId());
    assertEquals(JOB_TS, deserializedJob.getTimestamp_ms());
}