forked from rgamba/evtwebsocket
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoptions.go
55 lines (46 loc) · 909 Bytes
/
options.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package evtwebsocket
func WithReconnect(reconnect bool) func(*Conn) {
return func(s *Conn) {
s.reconnect = reconnect
}
}
func WithPingIntervalSec(p int) func(*Conn) {
return func(s *Conn) {
s.pingIntervalSecs = p
}
}
func WithPingMsg(msg []byte) func(*Conn) {
return func(s *Conn) {
s.pingMsg = msg
}
}
func InsecureSkipVerify() func(*Conn) {
return func(s *Conn) {
s.ssl = true
}
}
func WithMatchMsg(f func([]byte, []byte) bool) func(*Conn) {
return func(s *Conn) {
s.matchMsg = f
}
}
func WithMaxMessageSize(size int) func(*Conn) {
return func(s *Conn) {
s.maxMessageSize = size
}
}
func OnMessage(f func([]byte, Connection)) func(*Conn) {
return func(s *Conn) {
s.onMessage = f
}
}
func OnError(f func(error)) func(*Conn) {
return func(s *Conn) {
s.onError = f
}
}
func OnConnected(f func(Connection)) func(*Conn) {
return func(s *Conn) {
s.onConnected = f
}
}