Newer
Older
func NewServer() *server.Server {
server := server.NewServer(NewRouter())
//mux.HandleFunc("testservice_subscribe", func(w jrpc.ResponseWriter, r *jrpc.Request) {
// sub, err := jrpc.UpgradeToSubscription(w, r)
// w.Send(sub, err)
// if err != nil {
// return
// }
// idx := 0
// for {
// err := w.Notify(idx)
// if err != nil {
// return
// }
// idx = idx + 1
// }
//})
if err := mux.RegisterStruct("test", new(testService)); err != nil {
panic(err)
}
if err := mux.RegisterStruct("nftest", new(notificationTestService)); err != nil {
panic(err)
}
if err := mux.RegisterStruct("large", largeRespService{1024 * 1024 * 5 * 3}); err != nil {
panic(err)
}
return mux
}
func NewRouterWithMaxSize(size int) *jmux2.Mux {
mux := jmux2.NewRouter()
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
//mux.HandleFunc("testservice_subscribe", func(w jrpc.ResponseWriter, r *jrpc.Request) {
// sub, err := jrpc.UpgradeToSubscription(w, r)
// w.Send(sub, err)
// if err != nil {
// return
// }
// idx := 0
// for {
// err := w.Notify(idx)
// if err != nil {
// return
// }
// idx = idx + 1
// }
//})
if err := mux.RegisterStruct("test", new(testService)); err != nil {
panic(err)
}
if err := mux.RegisterStruct("nftest", new(notificationTestService)); err != nil {
panic(err)
}
if err := mux.RegisterStruct("large", largeRespService{size}); err != nil {
panic(err)
}
return mux
}
// largeRespService generates arbitrary-size JSON responses.
type largeRespService struct {
length int
}
func (x largeRespService) LargeResp() string {
return strings.Repeat("x", x.length)