private IList GetrValue(TColumn value) { if (value.__isset.stringVal) { return(value.StringVal.Values); } else if (value.__isset.i32Val) { return(value.I32Val.Values); } else if (value.__isset.boolVal) { return(value.BoolVal.Values); } else if (value.__isset.doubleVal) { return(value.DoubleVal.Values); } else if (value.__isset.byteVal) { return(value.ByteVal.Values); } else if (value.__isset.i64Val) { return(value.I64Val.Values); } else if (value.__isset.i16Val) { return(value.I16Val.Values); } else { return(null); } }
public void Read(TProtocol iprot) { bool isset_startRowOffset = false; bool isset_rows = false; TField field; iprot.ReadStructBegin(); while (true) { field = iprot.ReadFieldBegin(); if (field.Type == TType.Stop) { break; } switch (field.ID) { case 1: if (field.Type == TType.I64) { StartRowOffset = iprot.ReadI64(); isset_startRowOffset = true; } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 2: if (field.Type == TType.List) { { Rows = new List <TRow>(); TList _list59 = iprot.ReadListBegin(); for (int _i60 = 0; _i60 < _list59.Count; ++_i60) { TRow _elem61 = new TRow(); _elem61 = new TRow(); _elem61.Read(iprot); Rows.Add(_elem61); } iprot.ReadListEnd(); } isset_rows = true; } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 3: if (field.Type == TType.List) { { Columns = new List <TColumn>(); TList _list62 = iprot.ReadListBegin(); for (int _i63 = 0; _i63 < _list62.Count; ++_i63) { TColumn _elem64 = new TColumn(); _elem64 = new TColumn(); _elem64.Read(iprot); Columns.Add(_elem64); } iprot.ReadListEnd(); } } else { TProtocolUtil.Skip(iprot, field.Type); } break; default: TProtocolUtil.Skip(iprot, field.Type); break; } iprot.ReadFieldEnd(); } iprot.ReadStructEnd(); if (!isset_startRowOffset) { throw new TProtocolException(TProtocolException.INVALID_DATA); } if (!isset_rows) { throw new TProtocolException(TProtocolException.INVALID_DATA); } }
public static TRowSet CombineColumnValues(TRowSet rowSet1, TRowSet rowSet2) { if (rowSet1 == null) { return(rowSet2); } if (rowSet2 == null) { return(rowSet1); } if (rowSet1.Columns.Count != rowSet2.Columns.Count) { throw new ArgumentException("two rowset should have same columns"); } TRowSet result = new TRowSet(); result.Rows = new List <TRow>(); result.Columns = new List <TColumn>(); for (int i = 0; i < rowSet1.Columns.Count; i++) { TColumn combinedColumn = new TColumn(); TColumn col1 = rowSet1.Columns[i]; TColumn col2 = rowSet2.Columns[i]; Trace.Assert(col1 != null && col2 != null); if (col1.__isset.binaryVal || col2.__isset.binaryVal) { combinedColumn.BinaryVal = new TBinaryColumn() { Values = new List <byte[]>() }; combinedColumn.BinaryVal.Values.AddRange((col1.BinaryVal?.Values) ?? new List <byte[]>()); combinedColumn.BinaryVal.Values.AddRange((col2.BinaryVal?.Values) ?? new List <byte[]>()); combinedColumn.__isset.binaryVal = true; } if (col1.__isset.boolVal || col2.__isset.boolVal) { combinedColumn.BoolVal = new TBoolColumn() { Values = new List <bool>() }; combinedColumn.BoolVal.Values.AddRange((col1.BoolVal?.Values) ?? new List <bool>()); combinedColumn.BoolVal.Values.AddRange((col2.BoolVal?.Values) ?? new List <bool>()); combinedColumn.__isset.boolVal = true; } if (col1.__isset.byteVal || col2.__isset.byteVal) { combinedColumn.ByteVal = new TByteColumn() { Values = new List <sbyte>() }; combinedColumn.ByteVal.Values.AddRange((col1.ByteVal?.Values) ?? new List <sbyte>()); combinedColumn.ByteVal.Values.AddRange((col2.ByteVal?.Values) ?? new List <sbyte>()); combinedColumn.__isset.binaryVal = true; } if (col1.__isset.doubleVal || col2.__isset.doubleVal) { combinedColumn.DoubleVal = new TDoubleColumn() { Values = new List <double>() }; combinedColumn.DoubleVal.Values.AddRange((col1.DoubleVal?.Values) ?? new List <double>()); combinedColumn.DoubleVal.Values.AddRange((col2.DoubleVal?.Values) ?? new List <double>()); combinedColumn.__isset.doubleVal = true; } if (col1.__isset.i16Val || col2.__isset.i16Val) { combinedColumn.I16Val = new TI16Column() { Values = new List <short>() }; combinedColumn.I16Val.Values.AddRange((col1.I16Val?.Values) ?? new List <short>()); combinedColumn.I16Val.Values.AddRange((col2.I16Val?.Values) ?? new List <short>()); combinedColumn.__isset.i16Val = true; } if (col1.__isset.i32Val || col2.__isset.i32Val) { combinedColumn.I32Val = new TI32Column() { Values = new List <int>() }; combinedColumn.I32Val.Values.AddRange((col1.I32Val?.Values) ?? new List <int>()); combinedColumn.I32Val.Values.AddRange((col2.I32Val?.Values) ?? new List <int>()); combinedColumn.__isset.i32Val = true; } if (col1.__isset.i64Val || col1.__isset.i64Val) { combinedColumn.I64Val = new TI64Column() { Values = new List <long>() }; combinedColumn.I64Val.Values.AddRange((col1.I64Val?.Values) ?? new List <long>()); combinedColumn.I64Val.Values.AddRange((col2.I64Val?.Values) ?? new List <long>()); combinedColumn.__isset.i64Val = true; } if (col1.__isset.stringVal || col2.__isset.stringVal) { combinedColumn.StringVal = new TStringColumn() { Values = new List <string>() }; combinedColumn.StringVal.Values.AddRange((col1.StringVal?.Values) ?? new List <string>()); combinedColumn.StringVal.Values.AddRange((col2.StringVal?.Values) ?? new List <string>()); combinedColumn.__isset.stringVal = true; } result.Columns.Add(combinedColumn); } return(result); }