Java Code Examples for org.apache.thrift.protocol.TType#STOP
The following examples show how to use
org.apache.thrift.protocol.TType#STOP .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: MockResult.java From thrift-mock with Apache License 2.0 | 6 votes |
public void read(org.apache.thrift.protocol.TProtocol iprot, MockResult struct) throws org.apache.thrift.TException { org.apache.thrift.protocol.TField schemeField; iprot.readStructBegin(); while (true) { schemeField = iprot.readFieldBegin(); if (schemeField.type == TType.STOP) { break; } processSchemeField(schemeField, iprot, struct); iprot.readFieldEnd(); } iprot.readStructEnd(); // check for required fields of primitive type, which can't be checked in the validate method struct.validate(); }
Example 2
Source File: ParquetWriteProtocol.java From parquet-mr with Apache License 2.0 | 6 votes |
@Override public void writeFieldBegin(TField field) throws TException { if (field.type == TType.STOP) { return; } try { currentType = thriftFieldIdToParquetField[field.id]; if (currentType == null) { throw new ParquetEncodingException("field " + field.id + " was not found in " + thriftType + " and " + schema.getType()); } final int index = currentType.getIndex(); recordConsumer.startField(currentType.getName(), index); currentProtocol = children[index]; } catch (ArrayIndexOutOfBoundsException e) { throw new ParquetEncodingException("field " + field.id + " was not found in " + thriftType + " and " + schema.getType()); } }
Example 3
Source File: InternalScribeCodec.java From zipkin-reporter-java with Apache License 2.0 | 5 votes |
static boolean parseResponse(TBinaryProtocol iprot) throws TException { Boolean result = null; iprot.readStructBegin(); TField schemeField; while ((schemeField = iprot.readFieldBegin()).type != TType.STOP) { if (schemeField.id == 0 /* SUCCESS */ && schemeField.type == TType.I32) { result = iprot.readI32() == 0; } else { TProtocolUtil.skip(iprot, schemeField.type); } } iprot.readStructEnd(); if (result != null) return result; throw new TApplicationException(MISSING_RESULT, "Log failed: unknown result"); }
Example 4
Source File: TApplicationExceptions.java From armeria with Apache License 2.0 | 5 votes |
/** * Reads a {@link TApplicationException} from the specified {@link TProtocol}. * * <p>Note: This has been copied from {@link TApplicationException#read(TProtocol)} due to API differences * between libthrift 0.9.x and 0.10.x. */ public static TApplicationException read(TProtocol iprot) throws TException { TField field; iprot.readStructBegin(); String message = null; int type = TApplicationException.UNKNOWN; while (true) { field = iprot.readFieldBegin(); if (field.type == TType.STOP) { break; } switch (field.id) { case 1: if (field.type == TType.STRING) { message = iprot.readString(); } else { TProtocolUtil.skip(iprot, field.type); } break; case 2: if (field.type == TType.I32) { type = iprot.readI32(); } else { TProtocolUtil.skip(iprot, field.type); } break; default: TProtocolUtil.skip(iprot, field.type); break; } iprot.readFieldEnd(); } iprot.readStructEnd(); return new TApplicationException(type, message); }
Example 5
Source File: BinFileRead.java From ThriftBook with Apache License 2.0 | 5 votes |
public static void main(String[] args) throws TException { TTransport trans = new TSimpleFileTransport("data", true, false); TProtocol proto = new TBinaryProtocol(trans); Trade trade_read = new Trade(); TField field = new TField(); TStruct struct_obj = proto.readStructBegin(); while(true) { field = proto.readFieldBegin(); if (field.id == TType.STOP) { break; } switch(field.id) { case 1: trade_read.symbol = proto.readString(); break; case 2: trade_read.price = proto.readDouble(); break; case 3: trade_read.size = proto.readI32(); break; default: TProtocolUtil.skip(proto,field.type); break; } proto.readFieldEnd(); } proto.readStructEnd(); System.out.println("Trade: " + trade_read.symbol + " " + trade_read.size + " @ " + trade_read.price); }
Example 6
Source File: EventBasedThriftReader.java From parquet-format with Apache License 2.0 | 5 votes |
/** * reads the content of a struct (fields) from the underlying protocol and passes the events to c * @param c the field consumer * @throws TException */ public void readStructContent(FieldConsumer c) throws TException { TField field; while (true) { field = protocol.readFieldBegin(); if (field.type == TType.STOP) { break; } c.consumeField(protocol, this, field.id, field.type); } }
Example 7
Source File: EventBasedThriftReader.java From parquet-mr with Apache License 2.0 | 5 votes |
/** * reads the content of a struct (fields) from the underlying protocol and passes the events to c * @param c the field consumer * @throws TException if any thrift related error occurs during the reading */ public void readStructContent(FieldConsumer c) throws TException { TField field; while (true) { field = protocol.readFieldBegin(); if (field.type == TType.STOP) { break; } c.consumeField(protocol, this, field.id, field.type); } }
Example 8
Source File: ProtocolReadToWrite.java From parquet-mr with Apache License 2.0 | 5 votes |
private void readOneStruct(TProtocol in, TProtocol out) throws TException { final TStruct struct = in.readStructBegin(); out.writeStructBegin(struct); TField field; while ((field = in.readFieldBegin()).type != TType.STOP) { out.writeFieldBegin(field); readOneValue(in, out, field.type); in.readFieldEnd(); out.writeFieldEnd(); } out.writeFieldStop(); in.readStructEnd(); out.writeStructEnd(); }
Example 9
Source File: MappedFileTBinaryProtocol.java From singer with Apache License 2.0 | 4 votes |
public TField readFieldBegin() throws TException { byte type = readByte(); short id = type == TType.STOP ? 0 : readI16(); return new TField("", type, id); }
Example 10
Source File: ProtocolReadToWrite.java From parquet-mr with Apache License 2.0 | 4 votes |
void readOneValue(TProtocol in, TProtocol out, byte type) throws TException { switch (type) { case TType.LIST: readOneList(in, out); break; case TType.MAP: readOneMap(in, out); break; case TType.SET: readOneSet(in, out); break; case TType.STRUCT: readOneStruct(in, out); break; case TType.STOP: break; case TType.BOOL: out.writeBool(in.readBool()); break; case TType.BYTE: out.writeByte(in.readByte()); break; case TType.DOUBLE: out.writeDouble(in.readDouble()); break; case TType.I16: out.writeI16(in.readI16()); break; case TType.ENUM: // same as i32 => actually never seen in the protocol layer as enums are written as a i32 field case TType.I32: out.writeI32(in.readI32()); break; case TType.I64: out.writeI64(in.readI64()); break; case TType.STRING: out.writeBinary(in.readBinary()); break; case TType.VOID: break; default: throw new TException("Unknown type: " + type); } }
Example 11
Source File: BufferedProtocolReadToWrite.java From parquet-mr with Apache License 2.0 | 4 votes |
/** * @return true when all value is consumed, false when some values is ignored due to the field is not defined in expectedType * @throws TException */ private boolean readOneValue(TProtocol in, byte type, List<Action> buffer, ThriftType expectedType) throws TException { if (expectedType != null && expectedType.getType().getSerializedThriftType() != type) { throw new DecodingSchemaMismatchException("the data type does not match the expected thrift structure: expected " + expectedType + " got " + typeName(type)); } boolean hasFieldsIgnored = false; switch (type) { case TType.LIST: hasFieldsIgnored = readOneList(in, buffer, (ListType)expectedType); break; case TType.MAP: hasFieldsIgnored = readOneMap(in, buffer, (MapType)expectedType); break; case TType.SET: hasFieldsIgnored = readOneSet(in, buffer, (SetType)expectedType); break; case TType.STRUCT: hasFieldsIgnored = readOneStruct(in, buffer, (StructType)expectedType); break; case TType.STOP: break; case TType.BOOL: final boolean bool = in.readBool(); writeBoolAction(buffer, bool); break; case TType.BYTE: final byte b = in.readByte(); writeByteAction(buffer, b); break; case TType.DOUBLE: final double d = in.readDouble(); writeDoubleAction(buffer, d); break; case TType.I16: final short s = in.readI16(); writeShortAction(buffer, s); break; case TType.ENUM: // same as i32 => actually never seen in the protocol layer as enums are written as a i32 field case TType.I32: final int i = in.readI32(); checkEnum(expectedType,i); writeIntAction(buffer, i); break; case TType.I64: final long l = in.readI64(); writeLongAction(buffer, l); break; case TType.STRING: final ByteBuffer bin = in.readBinary(); writeStringAction(buffer, bin); break; case TType.VOID: break; default: throw new TException("Unknown type: " + type); } return hasFieldsIgnored; }