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
|
package main
import(
"fmt"
"log"
"time"
)
var listUsers = Command{
Name: "users",
Execute: func([]string) {
users, err := p.AllUsers()
if err != nil {
log.Fatal(err)
}
fmt.Printf("id\tname\n========================================\n")
for _, user := range users {
fmt.Printf("%v\t%v\n", user.Id, user.Name)
}
},
}
var listSessions = Command{
Name: "sessions",
Execute: func([]string) {
sessions, err := p.AllSessions()
if err != nil {
log.Fatal(err)
}
fmt.Printf("id\tuser\tcreated\tmodified\n========================================\n")
for _, session := range sessions {
user, err := p.GetById(session.UserId)
if err != nil {
log.Fatal(err)
}
fmt.Printf("%v\t%v\n", session.Id, user.Name, session.Created.Format(time.RFC3339), session.Modified.Format(time.RFC3339))
}
},
}
var listEndpoints = Command{
Name: "endpoints",
Execute: func([]string) {
endpoints, err := p.AllEndpoints()
if err != nil { log.Fatal(err) }
fmt.Printf("name\tpath\taddress\n========================================\n")
for _, endpoint := range endpoints {
fmt.Printf("%v\t%v\t%v\n", endpoint.Name, endpoint.Path, endpoint.Address)
}
},
}
func ListInit(parser *Command) {
list := &Command{
Name: "list",
Branch: true,
}
list.AddCommand(&listUsers)
list.AddCommand(&listSessions)
list.AddCommand(&listEndpoints)
parser.AddCommand(list)
}
|