Skip to content

Commit

Permalink
Update jrpc2 to v0.27.0 and update usage.
Browse files Browse the repository at this point in the history
  • Loading branch information
creachadair committed Oct 7, 2021
1 parent 31ce9d5 commit 1b93014
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 26 deletions.
4 changes: 3 additions & 1 deletion tools/examples/server/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import (
"os"

"github.com/creachadair/jrpc2"
"github.com/creachadair/jrpc2/channel"
"github.com/creachadair/jrpc2/code"
"github.com/creachadair/jrpc2/handler"
"github.com/creachadair/jrpc2/metrics"
Expand Down Expand Up @@ -100,7 +101,8 @@ func main() {
log.Fatalln("Listen:", err)
}
log.Printf("Listening at %v...", lst.Addr())
server.Loop(lst, server.Static(mux), &server.LoopOptions{
acc := server.NetAccepter(lst, channel.RawJSON)
server.Loop(acc, server.Static(mux), &server.LoopOptions{
ServerOptions: &jrpc2.ServerOptions{
Logger: log.New(os.Stderr, "[jrpc2.Server] ", log.LstdFlags|log.Lshortfile),
Concurrency: *maxTasks,
Expand Down
57 changes: 35 additions & 22 deletions tools/examples/wshttp/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,12 @@ import (
"flag"
"log"
"net/http"
"os"

"github.com/creachadair/jrpc2"
"github.com/creachadair/jrpc2/channel"
"github.com/creachadair/jrpc2/handler"
"github.com/creachadair/jrpc2/server"
"github.com/creachadair/wschannel"
)

Expand All @@ -32,27 +35,37 @@ func main() {
http.Handle("/rpc", lst)
go hs.ListenAndServe()

srv := jrpc2.NewServer(handler.Map{
"Reverse": handler.New(func(_ context.Context, ss []string) []string {
for i, j := 0, len(ss)-1; i < j; i++ {
ss[i], ss[j] = ss[j], ss[i]
j--
}
return ss
}),
}, nil)

ctx := context.Background()
for {
ch, err := lst.Accept(ctx)
if err != nil {
hs.Shutdown(ctx)
log.Fatalf("Accept: %v", err)
}
log.Print("Client connected")
if err := srv.Start(ch).Wait(); err != nil {
log.Printf("Server error: %v", err)
}
log.Print("Client disconnected (wave bye)")
acc := accepter{
Listener: lst,
ctx: context.Background(),
}
svc := handler.Map{"Reverse": handler.New(reverse)}

log.Printf("Listing at ws://%s/rpc", *listenAddr)
err := server.Loop(acc, server.Static(svc), &server.LoopOptions{
ServerOptions: &jrpc2.ServerOptions{
Logger: log.New(os.Stderr, "[ws-server] ", log.LstdFlags),
},
})
hs.Shutdown(acc.ctx)
if err != nil {
log.Fatalf("Loop exited: %v", err)
}
}

func reverse(_ context.Context, ss []string) []string {
for i, j := 0, len(ss)-1; i < j; i++ {
ss[i], ss[j] = ss[j], ss[i]
j--
}
return ss
}

type accepter struct {
*wschannel.Listener
ctx context.Context
}

func (a accepter) Accept() (channel.Channel, error) {
return a.Listener.Accept(a.ctx)
}
2 changes: 1 addition & 1 deletion tools/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module github.com/creachadair/jrpc2/tools
go 1.17

require (
github.com/creachadair/jrpc2 v0.26.1
github.com/creachadair/jrpc2 v0.27.0
github.com/creachadair/wschannel v0.0.0-20210930050814-ee1a57283ef3
)

Expand Down
4 changes: 2 additions & 2 deletions tools/go.sum
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
github.com/creachadair/jrpc2 v0.26.0/go.mod h1:w+GXZGc+NwsH0xsUOgeLBIIRM0jBOSTXhv28KaWGRZU=
github.com/creachadair/jrpc2 v0.26.1 h1:5i6kkw2hmeocwwFHjNkiQ6jePMufdhcfWOlV6ACU5y8=
github.com/creachadair/jrpc2 v0.26.1/go.mod h1:w+GXZGc+NwsH0xsUOgeLBIIRM0jBOSTXhv28KaWGRZU=
github.com/creachadair/jrpc2 v0.27.0 h1:QzDp+Zrq+JKM21qQblLudnxevzQZ0FrcPDIVQzcgErs=
github.com/creachadair/jrpc2 v0.27.0/go.mod h1:w+GXZGc+NwsH0xsUOgeLBIIRM0jBOSTXhv28KaWGRZU=
github.com/creachadair/wschannel v0.0.0-20210930050814-ee1a57283ef3 h1:b0LJF4h+tv81wui0UKrszHi+yny5B/UJA10bHimYy0Y=
github.com/creachadair/wschannel v0.0.0-20210930050814-ee1a57283ef3/go.mod h1:ZW4LjPekGnPGBDEgssmCLAOIObRDGv2SQay/pT+5ZwM=
github.com/google/go-cmp v0.5.6 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ=
Expand Down

0 comments on commit 1b93014

Please sign in to comment.