crystalmq 0.0.3 → 0.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a39ea0382df7be27db1a6d32383fe81d6c085278
4
- data.tar.gz: eaecb448c17f2a430c1816ec74d34b9b6dff79fd
3
+ metadata.gz: 0bfd0e066c3816f85a4c5f98521290f83a8d4c51
4
+ data.tar.gz: 5fc8b387acfe3491e7b6055590d7872af4e7233d
5
5
  SHA512:
6
- metadata.gz: 9da7a40ab80ea568440885ffb561e70cf512befd52ebbb14e5241c893a0ecddc86c5837c8c322a724749aec24638ed8d48b30b4e7c8cb9fded6786cbb485dab0
7
- data.tar.gz: 866c50df6c66f77f012f729e158db2ea11154055566a1faa5ce12752fd6ff3ed7206ad3c4d2552db2b06e97f83c011a51b438669d3aff4dd8075a1f22bfe393d
6
+ metadata.gz: 5829c75351af019e92a60eb48a4673d3b21b1ec2fb659a1d027a77b7b5a38692dbe1c02db5e7708cb82907ba386a6ffd80982af950c3b8de9adea5903fe76158
7
+ data.tar.gz: fc823221eb95853dfe422e116861567809b2f62a40015d4916098d116a3b08ec32dace2bb0d9fd8a74aab9f898f2e92234ef6c1960aa1b987d7eb3474f712532
Binary file
data/crystalmq.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  # coding: utf-8
2
2
  Gem::Specification.new do |spec|
3
3
  spec.name = "crystalmq"
4
- spec.version = "0.0.3"
4
+ spec.version = "0.0.4"
5
5
  spec.authors = ["Martin Simpson"]
6
6
  spec.email = ["martin.simpson@crystalmq.io"]
7
7
 
data/lib/crystalmq.rb CHANGED
@@ -38,10 +38,18 @@ class CrystalMQ
38
38
  end
39
39
 
40
40
  def initialize(host, topic, channel)
41
- @socket = TCPSocket.new(host, 1235)
42
- @socket.sync = true
43
41
  @topic = topic
44
42
  @channel = channel
43
+ @host = host
44
+ connect_socket
45
+ rescue SocketError
46
+ connect_socket
47
+ retry
48
+ end
49
+
50
+ def connect_socket
51
+ @socket = TCPSocket.new(@host, 1235)
52
+ @socket.sync = true
45
53
  end
46
54
 
47
55
  def consume
@@ -54,6 +62,9 @@ class CrystalMQ
54
62
  yield message.message
55
63
  end
56
64
  @socket.close
65
+ rescue SocketError
66
+ connect_socket
67
+ retry
57
68
  end
58
69
  end
59
70
 
@@ -79,13 +90,24 @@ class CrystalMQ
79
90
  end
80
91
 
81
92
  def initialize(host, topic)
82
- @socket = TCPSocket.new(host, 1234)
83
- @socket.sync = true
93
+ @host = host
84
94
  @topic = topic
95
+ connect_socket
96
+ rescue SocketError
97
+ connect_socket
98
+ retry
85
99
  end
86
100
 
101
+ def connect_socket
102
+ @socket = TCPSocket.new(@host, 1234)
103
+ @socket.sync = true
104
+ end
105
+
87
106
  def write(message)
88
107
  @socket.write(ProducerPayload.new(@topic, message).to_msgpack)
108
+ rescue SocketError
109
+ connect_socket
110
+ retry
89
111
  end
90
112
 
91
113
  def terminate
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crystalmq
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Simpson
@@ -65,6 +65,7 @@ files:
65
65
  - Rakefile
66
66
  - bin/console
67
67
  - bin/setup
68
+ - crystalmq-0.0.3.gem
68
69
  - crystalmq.gemspec
69
70
  - lib/crystalmq.rb
70
71
  homepage: http://crystalmq.io