本文整理汇总了Golang中github.com/pomack/thrift4go/lib/go/src/thrift.TMap类的典型用法代码示例。如果您正苦于以下问题:Golang TMap类的具体用法?Golang TMap怎么用?Golang TMap使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了TMap类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: rowFromTMapColumns
func rowFromTMapColumns(key []byte, tm thrift.TMap) *SuperRow {
if tm == nil || tm.Len() <= 0 {
return nil
}
r := &SuperRow{Key: key}
for ele := range tm.Iter() {
//fmt.Printf("K: %s V: %+v %T\n", ele.Key(), ele.Value(), ele.Value())
tl := ele.Value().(thrift.TList)
for colI := range tl.Iter() {
var col *cassandra.ColumnOrSuperColumn = colI.(*cassandra.ColumnOrSuperColumn)
row := &Row{Key: col.SuperColumn.Name}
r.Rows = append(r.Rows, row)
//fmt.Printf("\tSCName: %s\n", col.SuperColumn.Name)
//fmt.Printf("Columns: %+v %T\n", col.SuperColumn.Columns, col.SuperColumn.Columns)
for colX := range col.SuperColumn.Columns.Iter() {
theRealCol := colX.(*cassandra.Column)
c := &Column{
Name: theRealCol.Name,
Value: theRealCol.Value,
Timestamp: theRealCol.Timestamp,
Ttl: theRealCol.Ttl,
}
row.Columns = append(row.Columns, c)
//fmt.Printf("\t\tcol: %s %s\n",theRealCol.Name, theRealCol.Value)
}
}
}
return r
}
开发者ID:ngmoco,项目名称:gossie,代码行数:30,代码来源:reader.go
示例2: rowsColumnCountFromTMap
func rowsColumnCountFromTMap(tm thrift.TMap) []*RowColumnCount {
if tm == nil || tm.Len() <= 0 {
return make([]*RowColumnCount, 0)
}
r := make([]*RowColumnCount, 0)
for rowI := range tm.Iter() {
key := keyFromTMap(rowI)
count := int((rowI.Value()).(int32))
if count > 0 {
r = append(r, &RowColumnCount{Key: key, Count: count})
}
}
return r
}
开发者ID:rcrowley,项目名称:gossie,代码行数:14,代码来源:reader.go
示例3: rowsFromTMap
func rowsFromTMap(tm thrift.TMap) []*Row {
if tm == nil || tm.Len() <= 0 {
return make([]*Row, 0)
}
r := make([]*Row, 0)
for rowI := range tm.Iter() {
key := keyFromTMap(rowI)
columns := (rowI.Value()).(thrift.TList)
row := rowFromTListColumns(key, columns)
if row != nil {
r = append(r, row)
}
}
return r
}
开发者ID:rcrowley,项目名称:gossie,代码行数:15,代码来源:reader.go
示例4: addWriter
func (w *writer) addWriter(cf string, key []byte) *cassandra.Mutation {
tm := cassandra.NewMutation()
var cfMuts thrift.TMap
im, exists := w.writers.Get(key)
if !exists {
cfMuts = thrift.NewTMap(thrift.STRING, thrift.LIST, 1)
w.writers.Set(key, cfMuts)
} else {
cfMuts = im.(thrift.TMap)
}
var mutList thrift.TList
im, exists = cfMuts.Get(cf)
if !exists {
mutList = thrift.NewTList(thrift.STRUCT, 1)
cfMuts.Set(cf, mutList)
} else {
mutList = im.(thrift.TList)
}
mutList.Push(tm)
return tm
}
开发者ID:carloscm,项目名称:gossie,代码行数:21,代码来源:writer.go
注:本文中的github.com/pomack/thrift4go/lib/go/src/thrift.TMap类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论