pigato 0.2.14 → 0.2.15

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d98e3d33779bd55e21b6dd1ad0311e059ea142bf
4
- data.tar.gz: f520a52c6ae420c5d59dbd60ff0761174bf56d5f
3
+ metadata.gz: 010949dd3e9e2e663d03439b6eab02b7604d7b4b
4
+ data.tar.gz: fbe96707db388daab3f3575ed2b9bad36231f87e
5
5
  SHA512:
6
- metadata.gz: 31a112e4750fffd77b813e4787f01d0b4c4cc2ac8495cab8d9b944aa31323c7fc44daf2493178ded13d7348117a0c5b06cb519474d4f99fb7d506c244a483256
7
- data.tar.gz: 90b78f68f1335be0a1356254f9b5c4abf29735923989ed4b71587b444290ee47e317a0a4c4cbccc379ae2d283c7dbd9ba9470c00a007fa7af997f2bb096557d2
6
+ metadata.gz: a84a02d209ad7c546645e17740ad26b8cb021b81d2c685bc18717d9a8da264b3ed1d63f72839cdcc4f019612bbfdfb128cb4d532645342d9e5d451c79cbda1a2
7
+ data.tar.gz: 1726a089c1848997a9d6578eb002fd5f4f150402767e8e6d96cf3f544de0f12c50fd1ee087c94732eef74465f333a2b0f8e14860a6a7cc3f4f5d15894a319085
data/lib/pigato/client.rb CHANGED
@@ -5,6 +5,7 @@ class Pigato::Client
5
5
  def initialize broker, conf = {}
6
6
  @broker = broker
7
7
  @ctxs = {}
8
+ @sockets = {}
8
9
 
9
10
  @conf = {
10
11
  :autostart => false,
@@ -18,15 +19,20 @@ class Pigato::Client
18
19
  end
19
20
  end
20
21
 
21
- def getid
22
- tid = "#" + Process.pid.to_s + "|" + Thread.current.object_id.to_s
22
+ def get_proc_id
23
+ pid = "#" + Process.pid.to_s
24
+ pid
25
+ end
26
+
27
+ def get_thread_id
28
+ tid = get_proc_id() + "|" + Thread.current.object_id.to_s
23
29
  tid
24
30
  end
25
31
 
26
32
  def request service, request, opts = {}
27
- return nil if @ctxs[getid()] == nil
33
+ return nil if @sockets[get_thread_id()] == nil
28
34
 
29
- socket = @ctxs[getid()]['socket']
35
+ socket = @sockets[get_thread_id()]
30
36
 
31
37
  request = [Oj.dump(request), Oj.dump(opts)]
32
38
 
@@ -50,7 +56,7 @@ class Pigato::Client
50
56
  end
51
57
 
52
58
  def _recv rid
53
- socket = @ctxs[getid()]['socket']
59
+ socket = @sockets[get_thread_id()]
54
60
  socket.rcvtimeo = @conf[:timeout]
55
61
  data = []
56
62
  d1 = Time.now
@@ -72,21 +78,21 @@ class Pigato::Client
72
78
  end
73
79
 
74
80
  def stop
75
- tid = getid()
76
- if @ctxs[tid]
77
- @ctxs[tid]['socket'].close
78
- @ctxs[tid]['ctx'].destroy
79
- @ctxs.delete(tid)
81
+ tid = get_thread_id()
82
+ if @sockets[tid]
83
+ @sockets[tid].close
80
84
  end
81
85
  end
82
86
 
83
87
  def reconnect_to_broker
84
88
  stop
85
- ctx = ZMQ::Context.new
89
+ ctx = @ctxs[get_proc_id()]
90
+ ctx = ZMQ::Context.new if ctx == nil
86
91
  ctx.linger = 0
87
92
  socket = ctx.socket ZMQ::DEALER
88
93
  socket.identity = SecureRandom.uuid
89
94
  socket.connect @broker
90
- @ctxs[getid()] = { 'socket' => socket, 'ctx' => ctx }
95
+ @sockets[get_thread_id()] = socket
96
+ @ctxs[get_proc_id()] = ctx
91
97
  end
92
98
  end
@@ -1,3 +1,3 @@
1
1
  module Pigato
2
- VERSION = "0.2.14"
2
+ VERSION = "0.2.15"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pigato
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.14
4
+ version: 0.2.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paolo Ardoino
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-03-31 00:00:00.000000000 Z
11
+ date: 2015-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler