Example usage for org.apache.thrift.protocol TType VOID

List of usage examples for org.apache.thrift.protocol TType VOID

Introduction

In this page you can find the example usage for org.apache.thrift.protocol TType VOID.

Prototype

byte VOID

To view the source code for org.apache.thrift.protocol TType VOID.

Click Source Link

Usage

From source file:com.linecorp.armeria.common.thrift.ThriftUtil.java

License:Apache License

/**
 * Converts the specified {@link FieldValueMetaData} into its corresponding Java type.
 *///from ww  w. ja  v a  2s  .c  o m
public static Class<?> toJavaType(FieldValueMetaData metadata) {
    switch (metadata.type) {
    case TType.BOOL:
        return Boolean.class;
    case TType.BYTE:
        return Byte.class;
    case TType.DOUBLE:
        return Double.class;
    case TType.ENUM:
        return Enum.class;
    case TType.I16:
        return Short.class;
    case TType.I32:
        return Integer.class;
    case TType.I64:
        return Long.class;
    case TType.LIST:
        return List.class;
    case TType.MAP:
        return Map.class;
    case TType.SET:
        return Set.class;
    case TType.STRING:
        return String.class;
    case TType.STRUCT:
        return ((StructMetaData) metadata).structClass;
    case TType.VOID:
        return Void.class;
    }

    // Should never reach here.
    throw new Error();
}

From source file:com.linecorp.armeria.server.docs.ValueType.java

License:Apache License

static ValueType of(byte type) {
    switch (type) {
    case TType.STOP:
        return ValueType.STOP;
    case TType.VOID:
        return ValueType.VOID;
    case TType.BOOL:
        return ValueType.BOOL;
    case TType.BYTE:
        return ValueType.BYTE;
    case TType.DOUBLE:
        return ValueType.DOUBLE;
    case TType.I16:
        return ValueType.I16;
    case TType.I32:
        return ValueType.I32;
    case TType.I64:
        return ValueType.I64;
    case TType.STRING:
        return ValueType.STRING;
    case TType.STRUCT:
        return ValueType.STRUCT;
    case TType.MAP:
        return ValueType.MAP;
    case TType.SET:
        return ValueType.SET;
    case TType.LIST:
        return ValueType.LIST;
    case TType.ENUM:
        return ValueType.ENUM;
    default://from ww  w.jav a 2  s.  co m
        throw new IllegalArgumentException("unknown field value type: " + type);
    }
}

From source file:com.linecorp.armeria.server.thrift.ThriftDocServicePlugin.java

License:Apache License

@VisibleForTesting
static TypeSignature toTypeSignature(FieldValueMetaData fieldValueMetaData) {
    if (fieldValueMetaData instanceof StructMetaData) {
        return TypeSignature.ofNamed(((StructMetaData) fieldValueMetaData).structClass);
    }/*from   w w  w . java 2 s.c  o m*/

    if (fieldValueMetaData instanceof EnumMetaData) {
        return TypeSignature.ofNamed(((EnumMetaData) fieldValueMetaData).enumClass);
    }

    if (fieldValueMetaData instanceof ListMetaData) {
        return TypeSignature.ofList(toTypeSignature(((ListMetaData) fieldValueMetaData).elemMetaData));
    }

    if (fieldValueMetaData instanceof SetMetaData) {
        return TypeSignature.ofSet(toTypeSignature(((SetMetaData) fieldValueMetaData).elemMetaData));
    }

    if (fieldValueMetaData instanceof MapMetaData) {
        return TypeSignature.ofMap(toTypeSignature(((MapMetaData) fieldValueMetaData).keyMetaData),
                toTypeSignature(((MapMetaData) fieldValueMetaData).valueMetaData));
    }

    if (fieldValueMetaData.isBinary()) {
        return BINARY;
    }

    switch (fieldValueMetaData.type) {
    case TType.VOID:
        return VOID;
    case TType.BOOL:
        return BOOL;
    case TType.BYTE:
        return I8;
    case TType.DOUBLE:
        return DOUBLE;
    case TType.I16:
        return I16;
    case TType.I32:
        return I32;
    case TType.I64:
        return I64;
    case TType.STRING:
        return STRING;
    }

    final String unresolvedName;
    if (fieldValueMetaData.isTypedef()) {
        unresolvedName = fieldValueMetaData.getTypedefName();
    } else {
        unresolvedName = null;
    }

    return TypeSignature.ofUnresolved(firstNonNull(unresolvedName, "unknown"));
}

From source file:com.linecorp.armeria.server.thrift.ThriftServiceSpecificationGenerator.java

License:Apache License

private static TypeInfo newTypeInfo(FieldValueMetaData fieldValueMetaData, Map<String, String> docStrings) {
    if (fieldValueMetaData instanceof StructMetaData) {
        return newStructInfo((StructMetaData) fieldValueMetaData, docStrings);
    }//  w  w  w  .  j a va  2  s. c  o  m

    if (fieldValueMetaData instanceof EnumMetaData) {
        return newEnumInfo((EnumMetaData) fieldValueMetaData, docStrings);
    }

    if (fieldValueMetaData instanceof ListMetaData) {
        return newListInfo((ListMetaData) fieldValueMetaData, docStrings);
    }

    if (fieldValueMetaData instanceof SetMetaData) {
        return newSetInfo((SetMetaData) fieldValueMetaData, docStrings);
    }

    if (fieldValueMetaData instanceof MapMetaData) {
        return newMapInfo((MapMetaData) fieldValueMetaData, docStrings);
    }

    final TypeInfo typeInfo;
    if (fieldValueMetaData.isBinary()) {
        typeInfo = TypeInfo.BINARY;
    } else {
        switch (fieldValueMetaData.type) {
        case TType.VOID:
            typeInfo = TypeInfo.VOID;
            break;
        case TType.BOOL:
            typeInfo = TypeInfo.BOOL;
            break;
        case TType.BYTE:
            typeInfo = TypeInfo.I8;
            break;
        case TType.DOUBLE:
            typeInfo = TypeInfo.DOUBLE;
            break;
        case TType.I16:
            typeInfo = TypeInfo.I16;
            break;
        case TType.I32:
            typeInfo = TypeInfo.I32;
            break;
        case TType.I64:
            typeInfo = TypeInfo.I64;
            break;
        case TType.STRING:
            typeInfo = TypeInfo.STRING;
            break;
        default:
            throw new IllegalArgumentException("unexpected field value type: " + fieldValueMetaData.type);
        }
    }

    return typeInfo;
}

From source file:ezbake.thrift.utils.xml2thrift.util.ThriftUtils.java

License:Apache License

/**
 * Returns the value class of the given thrift field.
 *
 * @param field thrift field.//w w w.  ja v a2  s. co  m
 * @return class of field value, or null in the case of thrift types {@link TType#STOP} or
 * {@link TType#VOID}.
 */
public static Class<?> getFieldValueType(Field field) {
    switch (field.getType()) {
    case TType.BOOL:
        return Boolean.class;
    case TType.BYTE:
        return Byte.class;
    case TType.DOUBLE:
        return Double.class;
    case TType.ENUM:
        return ((EnumMetaData) field.getField()).enumClass;
    case TType.I16:
        return Short.class;
    case TType.I32:
        return Integer.class;
    case TType.I64:
        return Long.class;
    case TType.LIST:
        return List.class;
    case TType.MAP:
        return Map.class;
    case TType.SET:
        return Set.class;
    case TType.STOP:
        return null;
    case TType.STRING:
        return String.class;
    case TType.STRUCT:
        return field.gettStructDescriptor().getThriftClass();
    case TType.VOID:
        return null;
    }
    return null;
}

From source file:org.apache.avro.thrift.ThriftData.java

License:Apache License

private Schema getSchema(FieldValueMetaData f) {
    switch (f.type) {
    case TType.BOOL:
        return Schema.create(Schema.Type.BOOLEAN);
    case TType.BYTE:
        Schema b = Schema.create(Schema.Type.INT);
        b.addProp(THRIFT_PROP, "byte");
        return b;
    case TType.I16:
        Schema s = Schema.create(Schema.Type.INT);
        s.addProp(THRIFT_PROP, "short");
        return s;
    case TType.I32:
        return Schema.create(Schema.Type.INT);
    case TType.I64:
        return Schema.create(Schema.Type.LONG);
    case TType.DOUBLE:
        return Schema.create(Schema.Type.DOUBLE);
    case TType.ENUM:
        EnumMetaData enumMeta = (EnumMetaData) f;
        return nullable(getSchema(enumMeta.enumClass));
    case TType.LIST:
        ListMetaData listMeta = (ListMetaData) f;
        return nullable(Schema.createArray(getSchema(listMeta.elemMetaData)));
    case TType.MAP:
        MapMetaData mapMeta = (MapMetaData) f;
        if (mapMeta.keyMetaData.type != TType.STRING)
            throw new AvroRuntimeException("Map keys must be strings: " + f);
        Schema map = Schema.createMap(getSchema(mapMeta.valueMetaData));
        GenericData.setStringType(map, GenericData.StringType.String);
        return nullable(map);
    case TType.SET:
        SetMetaData setMeta = (SetMetaData) f;
        Schema set = Schema.createArray(getSchema(setMeta.elemMetaData));
        set.addProp(THRIFT_PROP, "set");
        return nullable(set);
    case TType.STRING:
        if (f.isBinary())
            return nullable(Schema.create(Schema.Type.BYTES));
        Schema string = Schema.create(Schema.Type.STRING);
        GenericData.setStringType(string, GenericData.StringType.String);
        return nullable(string);
    case TType.STRUCT:
        StructMetaData structMeta = (StructMetaData) f;
        Schema record = getSchema(structMeta.structClass);
        return nullable(record);
    case TType.VOID:
        return NULL;
    default://from   w w w. j a v  a  2s.c o m
        throw new RuntimeException("Unexpected type in field: " + f);
    }
}

From source file:org.apache.hadoop.hive.serde2.objectinspector.ThriftObjectInspectorUtils.java

License:Apache License

public static Class getJavaTypeFromTType(byte tType) {

    // check primitive types and final classes
    if (tType == TType.BOOL)
        return Boolean.class;
    if (tType == TType.BYTE)
        return Byte.class;
    if (tType == TType.I16)
        return Short.class;
    if (tType == TType.I32)
        return Integer.class;
    if (tType == TType.I64)
        return Long.class;
    if (tType == TType.DOUBLE)
        return Double.class;
    if (tType == TType.STRING)
        return String.class;
    if (tType == TType.VOID)
        return Void.class;

    // non-generic simple classes
    if (tType == TType.ENUM) {
        return TEnum.class;
    }/*from w  w w.ja  v  a  2 s.  c  o m*/
    if (tType == TType.STRUCT) {
        return TBase.class;
    }

    // generic types
    if (tType == TType.MAP) {
        return Map.class;
    }
    if (tType == TType.SET) {
        return Set.class;
    }
    if (tType == TType.LIST) {
        return List.class;
    }
    throw new IllegalArgumentException("cannot convert thrift type '" + tType + "'  to java type");
}

From source file:org.apache.parquet.thrift.BufferedProtocolReadToWrite.java

License:Apache License

/**
 * @return true when all value is consumed, false when some values is ignored due to the field is not defined in expectedType
 * @throws TException/*  w  w  w .j  a va 2s . co m*/
 */
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;
}

From source file:org.apache.parquet.thrift.ProtocolReadToWrite.java

License:Apache License

void readOneValue(TProtocol in, TProtocol out, byte type) throws TException {
    switch (type) {
    case TType.LIST:
        readOneList(in, out);/*from w  ww .  j av  a2s.  c  o  m*/
        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);
    }
}

From source file:org.breizhbeans.thrift.tools.thriftmongobridge.protocol.TBSONProtocol.java

License:Apache License

public TField readFieldBegin() throws TException {
    StructContext context = (StructContext) peekContext();
    if (context.fieldsStack.isEmpty()) {
        // Empty stack -> returns a TType.STOP
        return new TField();
    }/*from  w w  w  . j  a va 2s.co  m*/
    String fieldName = context.fieldsStack.peek();

    TField currentField = getTField(context.thriftObject, fieldName);
    //currentField.id
    // IF the field is skiped change the type to void
    Map<Class<?>, List<Short>> filter = threadSafeFieldIds.get();

    if (filter != null) {
        List<Short> fieldsFiltered = filter.get(context.thriftObject.getClass());
        if (fieldsFiltered != null && fieldsFiltered.contains(currentField.id)) {
            return new TField(currentField.name, TType.VOID, currentField.id);
        }
    }

    // If the field is a struct push a struct context in the stack
    if (currentField.type == TType.STRUCT) {
        StructContext structContext = new StructContext(fieldName);
        structContext.setDbObject((DBObject) context.dbObject.get(fieldName));
        structContext.thriftObject = getThriftObject(context.thriftObject, fieldName);
        pushContext(structContext);
    }
    return currentField;
}