xconn 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|