Rename JSONRPCServer to JSONRPCRouter

This commit is contained in:
tutman96 2025-01-19 23:12:24 +00:00
parent d1abc4b7fb
commit 6fd978b382
3 changed files with 11 additions and 13 deletions

View File

@ -12,7 +12,7 @@ import (
"time" "time"
) )
type JSONRPCServer struct { type JSONRPCRouter struct {
writer io.Writer writer io.Writer
handlers map[string]*RPCHandler handlers map[string]*RPCHandler
@ -22,16 +22,14 @@ type JSONRPCServer struct {
responseChannels map[int64]chan JSONRPCResponse responseChannels map[int64]chan JSONRPCResponse
} }
func NewJSONRPCServer(writer io.Writer, handlers map[string]*RPCHandler) *JSONRPCServer { func NewJSONRPCRouter(writer io.Writer, handlers map[string]*RPCHandler) *JSONRPCRouter {
return &JSONRPCServer{ return &JSONRPCRouter{
writer: writer, writer: writer,
handlers: handlers, handlers: handlers,
responseChannels: make(map[int64]chan JSONRPCResponse),
nextId: atomic.Int64{},
} }
} }
func (s *JSONRPCServer) Request(method string, params map[string]interface{}, result interface{}) *JSONRPCResponseError { func (s *JSONRPCRouter) Request(method string, params map[string]interface{}, result interface{}) *JSONRPCResponseError {
id := s.nextId.Add(1) id := s.nextId.Add(1)
request := JSONRPCRequest{ request := JSONRPCRequest{
JSONRPC: "2.0", JSONRPC: "2.0",
@ -108,7 +106,7 @@ type JSONRPCMessage struct {
ID *int64 `json:"id,omitempty"` ID *int64 `json:"id,omitempty"`
} }
func (s *JSONRPCServer) HandleMessage(data []byte) error { func (s *JSONRPCRouter) HandleMessage(data []byte) error {
// Data will either be a JSONRPCRequest or JSONRPCResponse object // Data will either be a JSONRPCRequest or JSONRPCResponse object
// We need to determine which one it is // We need to determine which one it is
var raw JSONRPCMessage var raw JSONRPCMessage
@ -193,7 +191,7 @@ func (s *JSONRPCServer) HandleMessage(data []byte) error {
return s.writeResponse(response) return s.writeResponse(response)
} }
func (s *JSONRPCServer) writeResponse(response JSONRPCResponse) error { func (s *JSONRPCRouter) writeResponse(response JSONRPCResponse) error {
responseBytes, err := json.Marshal(response) responseBytes, err := json.Marshal(response)
if err != nil { if err != nil {
return err return err

View File

@ -34,8 +34,8 @@ func (w *DataChannelWriter) Write(data []byte) (int, error) {
return len(data), nil return len(data), nil
} }
func NewDataChannelJsonRpcServer(dataChannel *webrtc.DataChannel) *jsonrpc.JSONRPCServer { func NewDataChannelJsonRpcRouter(dataChannel *webrtc.DataChannel) *jsonrpc.JSONRPCRouter {
return jsonrpc.NewJSONRPCServer( return jsonrpc.NewJSONRPCRouter(
NewDataChannelWriter(dataChannel), NewDataChannelWriter(dataChannel),
rpcHandlers, rpcHandlers,
) )

View File

@ -75,7 +75,7 @@ func newSession() (*Session, error) {
switch d.Label() { switch d.Label() {
case "rpc": case "rpc":
session.RPCChannel = d session.RPCChannel = d
rpcServer := NewDataChannelJsonRpcServer(d) rpcServer := NewDataChannelJsonRpcRouter(d)
d.OnMessage(func(msg webrtc.DataChannelMessage) { d.OnMessage(func(msg webrtc.DataChannelMessage) {
go rpcServer.HandleMessage(msg.Data) go rpcServer.HandleMessage(msg.Data)
}) })