xconn 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/wamp/router/connection.rb +17 -9
- data/lib/wamp/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 90143368352302b58d43e59a436f6317842edd21950335b698897af98261ac01
|
4
|
+
data.tar.gz: e7441cba5947a6bc6a1f4424b059b6c0c28626d01f71cc3d55d400da70d1622f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5a480c46a42e7e2da07f845645bf802a35a555fc1a49c29b3a6240b26da8d315bc898cd0db7f3efdab7098f5171f231dc097ef6bb631bfe53d34a7313183abe3
|
7
|
+
data.tar.gz: 583bd5880dcd8bd0f0e558a6f14a5de97ed1ae95381c95175bd6905b6b0f9e8bbe8a5c479a51ec1852e9a8b5bc233d033cde69f362cc8e49b30f7f607b1c0849
|
@@ -18,14 +18,15 @@ module Wamp
|
|
18
18
|
OPEN = 1
|
19
19
|
CLOSING = 2
|
20
20
|
CLOSED = 3
|
21
|
+
SUPPORTED_PROTOCOLS = ["wamp.2.msgpack", "wamp.2.cbor", "wamp.2.json"].freeze
|
21
22
|
|
22
23
|
attr_reader :socket, :session, :acceptor
|
23
24
|
|
24
|
-
def initialize(socket, &cleanup)
|
25
|
-
super()
|
25
|
+
def initialize(socket, &cleanup) # rubocop:disable Lint/MissingSuper
|
26
|
+
# super() # on_connect() does what super() does
|
26
27
|
@cleanup = cleanup
|
27
28
|
@socket = socket
|
28
|
-
@driver = WebSocket::Driver.server(self)
|
29
|
+
@driver = WebSocket::Driver.server(self, protocols: SUPPORTED_PROTOCOLS)
|
29
30
|
@driver.on(:open) { on_open(_1) }
|
30
31
|
@driver.on(:message) { on_message(_1.data) }
|
31
32
|
@driver.on(:close) { |evt| begin_close(evt.reason, evt.code) }
|
@@ -57,7 +58,7 @@ module Wamp
|
|
57
58
|
return if @ready_state == CLOSED
|
58
59
|
|
59
60
|
@ready_state = CLOSED
|
60
|
-
@driver.close
|
61
|
+
@driver.close(*@close_params)
|
61
62
|
socket.close
|
62
63
|
end
|
63
64
|
|
@@ -128,21 +129,28 @@ module Wamp
|
|
128
129
|
@driver.close(message.code, message.reason)
|
129
130
|
end
|
130
131
|
|
131
|
-
def close(
|
132
|
-
@driver.close
|
132
|
+
def close(code, reason)
|
133
|
+
@driver.close(reason, code)
|
133
134
|
end
|
134
135
|
|
135
136
|
attr_reader :serializer
|
136
137
|
|
137
|
-
def choose_serializer_from(protocols)
|
138
|
-
|
138
|
+
def choose_serializer_from(protocols) # rubocop:disable Metrics/MethodLength
|
139
|
+
common_protocols = protocols.to_s.split(",") & SUPPORTED_PROTOCOLS
|
140
|
+
protocol = common_protocols[0].to_s
|
141
|
+
|
142
|
+
@serializer = if protocol.include?("wamp.2.msgpack")
|
139
143
|
Wampproto::Serializer::Msgpack
|
140
144
|
elsif protocols.include?("wamp.2.cbor")
|
141
145
|
Wampproto::Serializer::Cbor
|
142
146
|
elsif protocols.include?("wamp.2.json")
|
143
147
|
Wampproto::Serializer::JSON
|
144
148
|
else
|
145
|
-
|
149
|
+
reason = "on_connect: protocols not supported '#{protocols}'."
|
150
|
+
code = 1006
|
151
|
+
puts reason
|
152
|
+
@close_params = [reason, code]
|
153
|
+
finalize_close
|
146
154
|
end
|
147
155
|
end
|
148
156
|
end
|
data/lib/wamp/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xconn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ismail Akram
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-06-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cbor
|