peer 코드 정리
This commit is contained in:
@ -25,7 +25,7 @@ type WebsocketPeerHandler interface {
|
|||||||
|
|
||||||
type websocketPeerHandler[T PeerInterface] struct {
|
type websocketPeerHandler[T PeerInterface] struct {
|
||||||
methods map[string]peerApiFuncType[T]
|
methods map[string]peerApiFuncType[T]
|
||||||
CreatePeer func(primitive.ObjectID) T
|
createPeer func(primitive.ObjectID) T
|
||||||
sessionConsumer session.Consumer
|
sessionConsumer session.Consumer
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -135,7 +135,7 @@ func makeWebsocketPeerApiHandler[T PeerInterface](receiverName string) websocket
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewWebsocketPeerHandler[T PeerInterface](consumer session.Consumer, receiverName string) WebsocketPeerHandler {
|
func NewWebsocketPeerHandler[T PeerInterface](consumer session.Consumer, receiverName string, creator func(primitive.ObjectID) T) WebsocketPeerHandler {
|
||||||
methods := make(map[string]peerApiFuncType[T])
|
methods := make(map[string]peerApiFuncType[T])
|
||||||
receiver := makeWebsocketPeerApiHandler[T](receiverName)
|
receiver := makeWebsocketPeerApiHandler[T](receiverName)
|
||||||
|
|
||||||
@ -148,6 +148,7 @@ func NewWebsocketPeerHandler[T PeerInterface](consumer session.Consumer, receive
|
|||||||
return &websocketPeerHandler[T]{
|
return &websocketPeerHandler[T]{
|
||||||
sessionConsumer: consumer,
|
sessionConsumer: consumer,
|
||||||
methods: methods,
|
methods: methods,
|
||||||
|
createPeer: creator,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -164,7 +165,7 @@ func (ws *websocketPeerHandler[T]) RegisterHandlers(serveMux *http.ServeMux, pre
|
|||||||
|
|
||||||
func (ws *websocketPeerHandler[T]) upgrade_core(conn *websocket.Conn, accid primitive.ObjectID, nonce uint32) {
|
func (ws *websocketPeerHandler[T]) upgrade_core(conn *websocket.Conn, accid primitive.ObjectID, nonce uint32) {
|
||||||
go func(c *websocket.Conn, accid primitive.ObjectID) {
|
go func(c *websocket.Conn, accid primitive.ObjectID) {
|
||||||
peer := ws.CreatePeer(accid)
|
peer := ws.createPeer(accid)
|
||||||
var closeReason string
|
var closeReason string
|
||||||
|
|
||||||
peer.ClientConnected(conn)
|
peer.ClientConnected(conn)
|
||||||
|
|||||||
Reference in New Issue
Block a user