teamd-discover 0.1.3 → 0.1.4
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/teamd/discover/message/packet.rb +1 -0
- data/lib/teamd/discover/peer.rb +9 -6
- data/lib/teamd/discover/transport.rb +7 -5
- data/lib/teamd/discover/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 97767580e0b4ecda657df8b39e3a2c208dcd3c5c
|
|
4
|
+
data.tar.gz: 953ae1da9c6dd1d02a7d8151dc86b1b1d1d0891b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 24c198d9c6d7f21edae60b7a4fa7b78e9def6632d04e4d31ff20f8812d94ebcc9301d3c2d6ea42a127ef83dda612b394294860dc9227614bf95fa75598537c55
|
|
7
|
+
data.tar.gz: c60a8d9c4e7ccf358bd4517e6dd66dd53077c66e0804876e953ad3f97669a6ec1f3cb500854926a410d4ca9c4903a3243c776a8e8c510ec3036df38d5c379209
|
data/lib/teamd/discover/peer.rb
CHANGED
|
@@ -17,8 +17,8 @@ module Teamd
|
|
|
17
17
|
keep_alive
|
|
18
18
|
loop do
|
|
19
19
|
message = @transport.receive
|
|
20
|
-
process_discovery if message.is_a? Message::DiscoveryRequest
|
|
21
|
-
process_announcement if message.is_a? Message::ClusterAnnouncement
|
|
20
|
+
process_discovery(message) if message.is_a? Message::DiscoveryRequest
|
|
21
|
+
process_announcement(message) if message.is_a? Message::ClusterAnnouncement
|
|
22
22
|
end
|
|
23
23
|
end
|
|
24
24
|
def discover timeout=15
|
|
@@ -26,7 +26,10 @@ module Teamd
|
|
|
26
26
|
Thread.new do
|
|
27
27
|
loop do
|
|
28
28
|
message = @transport.receive
|
|
29
|
-
|
|
29
|
+
if message.is_a? Message::ClusterAnnouncement
|
|
30
|
+
puts "Got Annoucement"
|
|
31
|
+
puts message.clusters
|
|
32
|
+
end
|
|
30
33
|
end
|
|
31
34
|
end
|
|
32
35
|
i,_=IO.pipe
|
|
@@ -48,12 +51,12 @@ module Teamd
|
|
|
48
51
|
def wait timeout
|
|
49
52
|
Thread.new{sleep(timeout); exit(1);}
|
|
50
53
|
end
|
|
51
|
-
def process_discovery
|
|
54
|
+
def process_discovery message
|
|
52
55
|
packet = Message::ClusterAnnouncement.new clusters: @registry.pack
|
|
53
56
|
puts "Announce #{packet}"
|
|
54
|
-
@transport.transmit packet
|
|
57
|
+
@transport.transmit packet, message.sender
|
|
55
58
|
end
|
|
56
|
-
def process_announcement
|
|
59
|
+
def process_announcement message
|
|
57
60
|
puts "learning new cluster"
|
|
58
61
|
end
|
|
59
62
|
end
|
|
@@ -7,16 +7,18 @@ module Teamd
|
|
|
7
7
|
BasicSocket.do_not_reverse_lookup = true
|
|
8
8
|
@protocol ||= Protocol.new
|
|
9
9
|
end
|
|
10
|
-
def transmit message
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
def transmit message, addr=nil
|
|
11
|
+
addr ||= all
|
|
12
|
+
puts ">> #{message} to #{addr}"
|
|
13
|
+
into_network.push [message.pack,addr]
|
|
13
14
|
end
|
|
14
15
|
def receive
|
|
15
16
|
loop do
|
|
16
|
-
data,
|
|
17
|
+
data,peer = from_network.pop
|
|
17
18
|
packet = @protocol.unpack data
|
|
18
|
-
puts "<< #{packet}"
|
|
19
19
|
next if packet.tid == Peer.tid
|
|
20
|
+
packet.sender = peer[2]
|
|
21
|
+
puts "<< #{packet} from #{packet.sender}"
|
|
20
22
|
return packet
|
|
21
23
|
end
|
|
22
24
|
end
|