Beispiel #1
0
        public static TdrError.ErrorType skipUnknownFields(ref TdrReadBuf srcBuf, TdrTLVTypeId type_id)
        {
            TdrError.ErrorType ret = TdrError.ErrorType.TDR_NO_ERROR;

            switch (type_id)
            {
            case TdrTLVTypeId.TDR_TYPE_ID_VARINT:
            {
                Int64 tmp = 0;
                ret = srcBuf.readVarInt64(ref tmp);
                break;
            }

            case TdrTLVTypeId.TDR_TYPE_ID_1_BYTE:
            {
                ret = srcBuf.skipForward(1);
                break;
            }

            case TdrTLVTypeId.TDR_TYPE_ID_2_BYTE:
            {
                ret = srcBuf.skipForward(2);
                break;
            }

            case TdrTLVTypeId.TDR_TYPE_ID_4_BYTE:
            {
                ret = srcBuf.skipForward(4);
                break;
            }

            case TdrTLVTypeId.TDR_TYPE_ID_8_BYTE:
            {
                ret = srcBuf.skipForward(8);
                break;
            }

            case TdrTLVTypeId.TDR_TYPE_ID_LENGTH_DELIMITED:
            {
                Int32 iLength = 0;
                ret = srcBuf.readInt32(ref iLength);
                if (TdrError.ErrorType.TDR_NO_ERROR != ret)
                {
                    return(ret);
                }

                ret = srcBuf.skipForward(iLength);
                break;
            }

            default:
            {
                ret = TdrError.ErrorType.TDR_ERR_UNKNOWN_TYPE_ID;
                break;
            }
            }

            return(ret);
        }