Skip to content

Commit db46cc2

Browse files
authored
dont change global var slice, its broken (#262)
1 parent 22ee792 commit db46cc2

File tree

3 files changed

+11
-9
lines changed

3 files changed

+11
-9
lines changed

acceptor.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,6 @@ var wsProtocols = []string{ //nolint:gochecknoglobals
2828
JsonWebsocketProtocol,
2929
}
3030

31-
var serializersByWSSubProtocol = map[string]serializers.Serializer{ //nolint:gochecknoglobals
32-
JsonWebsocketProtocol: &serializers.JSONSerializer{},
33-
MsgpackWebsocketProtocol: &serializers.MsgPackSerializer{},
34-
CborWebsocketProtocol: &serializers.CBORSerializer{},
35-
}
36-
3731
type WebSocketAcceptor struct {
3832
specs map[string]serializers.Serializer
3933
once sync.Once
@@ -43,7 +37,7 @@ type WebSocketAcceptor struct {
4337

4438
func (w *WebSocketAcceptor) init() {
4539
if w.specs == nil {
46-
w.specs = serializersByWSSubProtocol
40+
w.specs = SerializersByWSSubProtocol()
4741
}
4842
}
4943

@@ -58,7 +52,7 @@ func (w *WebSocketAcceptor) RegisterSpec(spec SerializerSpec) error {
5852

5953
_, exists := w.specs[spec.SubProtocol()]
6054
if exists {
61-
return fmt.Errorf("spec for %s is alraedy registered", spec.SubProtocol())
55+
return fmt.Errorf("spec for %s is already registered", spec.SubProtocol())
6256
}
6357

6458
w.specs[spec.SubProtocol()] = spec.Serializer()

helpers.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,3 +211,11 @@ func constructSendingMsgLog(msg messages.Message) string {
211211
return fmt.Sprintf("[%s] TX: %+v", timestamp, msg.Marshal())
212212
}
213213
}
214+
215+
func SerializersByWSSubProtocol() map[string]serializers.Serializer {
216+
return map[string]serializers.Serializer{
217+
JsonWebsocketProtocol: &serializers.JSONSerializer{},
218+
MsgpackWebsocketProtocol: &serializers.MsgPackSerializer{},
219+
CborWebsocketProtocol: &serializers.CBORSerializer{},
220+
}
221+
}

joiner.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ func (w *WebSocketJoiner) Join(ctx context.Context, url, realm string, config *W
4444
if w.SerializerSpec != nil {
4545
serializer = w.SerializerSpec.Serializer()
4646
} else {
47-
serializer = serializersByWSSubProtocol[subprotocol]
47+
serializer = SerializersByWSSubProtocol()[subprotocol]
4848
}
4949

5050
return Join(peer, realm, serializer, w.Authenticator)

0 commit comments

Comments
 (0)