private PB.Column MakeColumn(string name, DataModel.ColumnValue value) { var builder = PB.Column.CreateBuilder(); builder.SetName(name); builder.SetValue(MakeColumnValue(value)); return(builder.Build()); }
private PB.ColumnUpdate MakeColumnUpdateForPut(string columnName, DataModel.ColumnValue value) { var builder = PB.ColumnUpdate.CreateBuilder(); builder.SetType(PB.OperationType.PUT); builder.SetName(columnName); builder.SetValue(MakeColumnValue(value)); return(builder.Build()); }
private PB.ColumnValue MakeColumnValue(DataModel.ColumnValue value) { var builder = PB.ColumnValue.CreateBuilder(); if (value == DataModel.ColumnValue.INF_MAX) { builder.SetType(PB.ColumnType.INF_MAX); } else if (value == DataModel.ColumnValue.INF_MIN) { builder.SetType(PB.ColumnType.INF_MIN); } else { switch (value.Type) { case DataModel.ColumnValueType.Binary: builder.SetType(PB.ColumnType.BINARY); builder.SetVBinary(ByteString.CopyFrom(value.BinaryValue)); break; case DataModel.ColumnValueType.String: builder.SetType(PB.ColumnType.STRING); builder.SetVString(value.StringValue); break; case DataModel.ColumnValueType.Boolean: builder.SetType(PB.ColumnType.BOOLEAN); builder.SetVBool(value.BooleanValue); break; case DataModel.ColumnValueType.Double: builder.SetType(PB.ColumnType.DOUBLE); builder.SetVDouble(value.DoubleValue); break; case DataModel.ColumnValueType.Integer: builder.SetType(PB.ColumnType.INTEGER); builder.SetVInt(value.IntegerValue); break; default: throw new OTSClientException( String.Format("Invalid column value type: {0}", value.Type) ); } } return(builder.Build()); }