func (sqs *StreamQueryKeyRange) UnmarshalBson(buf *bytes.Buffer, kind byte) { bson.VerifyObject(kind) bson.Next(buf, 4) kind = bson.NextByte(buf) for kind != bson.EOO { keyName := bson.ReadCString(buf) switch keyName { case "Sql": sqs.Sql = bson.DecodeString(buf, kind) case "BindVariables": sqs.BindVariables = tproto.DecodeBindVariablesBson(buf, kind) case "Keyspace": sqs.Keyspace = bson.DecodeString(buf, kind) case "KeyRange": sqs.KeyRange = bson.DecodeString(buf, kind) case "TabletType": sqs.TabletType = topo.TabletType(bson.DecodeString(buf, kind)) case "Session": if kind != bson.Null { sqs.Session = new(Session) sqs.Session.UnmarshalBson(buf, kind) } default: bson.Skip(buf, kind) } kind = bson.NextByte(buf) } }
// UnmarshalBson unmarshals QueryShard from buf. func (qrs *QueryShard) UnmarshalBson(buf *bytes.Buffer) { bson.Next(buf, 4) kind := bson.NextByte(buf) for kind != bson.EOO { key := bson.ReadCString(buf) switch key { case "Sql": qrs.Sql = bson.DecodeString(buf, kind) case "BindVariables": qrs.BindVariables = tproto.DecodeBindVariablesBson(buf, kind) case "Keyspace": qrs.Keyspace = bson.DecodeString(buf, kind) case "TabletType": qrs.TabletType = topo.TabletType(bson.DecodeString(buf, kind)) case "Shards": qrs.Shards = bson.DecodeStringArray(buf, kind) case "Session": qrs.Session = new(Session) qrs.Session.UnmarshalBson(buf) default: panic(bson.NewBsonError("Unrecognized tag %s", key)) } kind = bson.NextByte(buf) } }
func (sqs *StreamQueryKeyRange) UnmarshalBson(buf *bytes.Buffer) { bson.Next(buf, 4) kind := bson.NextByte(buf) for kind != bson.EOO { keyName := bson.ReadCString(buf) switch keyName { case "Sql": sqs.Sql = bson.DecodeString(buf, kind) case "BindVariables": sqs.BindVariables = tproto.DecodeBindVariablesBson(buf, kind) case "Keyspace": sqs.Keyspace = bson.DecodeString(buf, kind) case "KeyRange": sqs.KeyRange = bson.DecodeString(buf, kind) case "TabletType": sqs.TabletType = topo.TabletType(bson.DecodeString(buf, kind)) case "Session": sqs.Session = new(Session) sqs.Session.UnmarshalBson(buf) default: panic(bson.NewBsonError("Unrecognized tag %s", keyName)) } kind = bson.NextByte(buf) } }
func (bdq *BoundQuery) UnmarshalBson(buf *bytes.Buffer) { bson.Next(buf, 4) kind := bson.NextByte(buf) for kind != bson.EOO { key := bson.ReadCString(buf) switch key { case "Sql": bdq.Sql = bson.DecodeString(buf, kind) case "BindVariables": bdq.BindVariables = vproto.DecodeBindVariablesBson(buf, kind) default: panic(bson.NewBsonError("Unrecognized tag %s", key)) } kind = bson.NextByte(buf) } }