-
Notifications
You must be signed in to change notification settings - Fork 2
/
stats.go
70 lines (55 loc) · 1.39 KB
/
stats.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package main
import (
"fmt"
"gopkg.in/mgo.v2/bson"
)
func GetTopTerms(topN int) (arr []string) {
return
}
func GetTermStatistics() (str string) {
return
}
func GetTranslations(term string) ([]TermTrans, error) {
termsCol := DBObj.C(termsCollName)
termsTransCol := DBObj.C(termsTransCollName)
var termData Term
if err := termsCol.Find(bson.M{"token": term}).One(&termData); err != nil {
fmt.Printf("(GetTranslations - Term): %+v\n", err)
return nil, err
}
transData := make([]TermTrans, len(termData.Trans))
for i, trans := range termData.Trans {
if err := termsTransCol.FindId(trans).One(&transData[i]); err != nil {
fmt.Printf("(GetTranslations - TermTrans): %+v\n", err)
return nil, err
}
}
return transData, nil
}
func dbDump() {
termsCol := DBObj.C(termsCollName)
num, err := termsCol.Count()
if err != nil {
fmt.Printf("Count failed on termsCol: %q\n", err)
return
}
fmt.Println("TermsCol count", num)
iter := termsCol.Find(nil).Iter()
var t Term
for iter.Next(&t) {
fmt.Printf("%#v tnum: %d\n", t, len(t.Trans))
}
termsTransCol := DBObj.C(termsTransCollName)
num, err = termsTransCol.Count()
if err != nil {
fmt.Printf("Count failed on termsTransCol: %q\n", err)
return
}
fmt.Println("TermsTransCol count", num)
iter = termsTransCol.Find(nil).Iter()
tt := TermTrans{}
for iter.Next(&tt) {
fmt.Printf("%#v\n", tt)
}
fmt.Printf("\n\n\n")
}