grenache-ruby-ws 0.0.5 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b6a4323b732836b9d283bbfd7d662b9ed1b43da5
4
- data.tar.gz: d304bd3797f6f014bc843f86fadb0bef6f5f924f
3
+ metadata.gz: 1c8de74e27d81dc88a7579b8f5776e659d08c2dc
4
+ data.tar.gz: 4bd5cc7f14282edf9ab3aaca6fb699c2af07b665
5
5
  SHA512:
6
- metadata.gz: 223249ca40cc6506b43f0f1cfc1caf1dfdd3d94385cd3ef45242284def3f11601fb68ee2a7f553eddbdca17d4ee908b5019481c74c97dab8e8c40be347313a07
7
- data.tar.gz: 89fc7b8c5ec6454a5ec7e3af46b29808387963e4a5da145315c7bcc9a0762484249e30dcdb7d42475e41b644a5812de92508e04ce2e50cacc1a648ac4427759e
6
+ metadata.gz: 798de5dccaa77d8a6a49f28cf616b018bc5960ca7f389d7da97fad68db2a28b5b2e0dc6f737a75fda425ba80f8795073522e00ee75cbf5263b580cdbca0d6e65
7
+ data.tar.gz: 6b9a2bd57f8e2aa29597f4d9fdefeed4b82d64d72982b11a862471a88528c19e5e65991aa4c0ca99dbe82e92a4136298cc08d7e80913a350be0af9aba17e98c1
data/examples/client.rb CHANGED
@@ -1,14 +1,20 @@
1
- require 'grenache-ruby-ws'
1
+ require_relative '../lib/grenache-ruby-ws.rb'
2
2
 
3
- Grenache::Base.configure do |conf|
3
+ Grenache::Ws.configure do |conf|
4
4
  conf.grape_address = "ws://127.0.0.1:30002"
5
5
  end
6
6
 
7
7
  EM.run do
8
- client = Grenache::BaseWs.new
8
+
9
+ client = Grenache::Ws.new
9
10
  10.times do |n|
10
- client.request("test","world #{n}") do |msg|
11
- puts "#{msg}"
11
+ client.request("test","world #{n}") do |err, msg|
12
+ if msg
13
+ puts "response: #{msg}"
14
+ else
15
+ puts "error: #{err}"
16
+ end
12
17
  end
13
18
  end
19
+
14
20
  end
data/examples/worker.rb CHANGED
@@ -1,6 +1,6 @@
1
- require 'grenache-ruby-ws'
1
+ require_relative '../lib/grenache-ruby-ws.rb'
2
2
 
3
- Grenache::Base.configure do |conf|
3
+ Grenache::Ws.configure do |conf|
4
4
  conf.grape_address = "ws://127.0.0.1:30002"
5
5
  end
6
6
 
@@ -8,7 +8,6 @@ EM.run do
8
8
 
9
9
  Signal.trap("INT") { EventMachine.stop }
10
10
  Signal.trap("TERM") { EventMachine.stop }
11
-
12
11
  c = Grenache::Ws.new
13
12
 
14
13
  c.listen('test',5004) do |ws,msg|
@@ -1,7 +1,7 @@
1
1
  # coding: utf-8
2
2
  lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'grenache/version'
4
+ require 'grenache/websocket/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "grenache-ruby-ws"
@@ -19,8 +19,7 @@ Gem::Specification.new do |spec|
19
19
 
20
20
  spec.add_runtime_dependency "eventmachine", "~> 1.0"
21
21
  spec.add_runtime_dependency "faye-websocket", "~> 0.10"
22
- spec.add_runtime_dependency "grenache-ruby-base", ">= 0.0.5"
23
- spec.add_runtime_dependency "httpclient", "~> 2.8"
22
+ spec.add_runtime_dependency "grenache-ruby-base", ">= 0.1.1"
24
23
  spec.add_runtime_dependency "oj", "~> 2.17"
25
24
  spec.add_runtime_dependency "thin", "~> 1.7"
26
25
 
@@ -1,5 +1,5 @@
1
1
  module Grenache
2
2
  module Websocket
3
- VERSION = "0.0.5"
3
+ VERSION = "0.1.0"
4
4
  end
5
5
  end
@@ -49,7 +49,7 @@ module Grenache
49
49
  def on_message(ev)
50
50
  msg = Oj.load(ev.data)
51
51
  disconnect
52
- @callback.call(msg) if @callback
52
+ @callback.call([nil,msg]) if @callback
53
53
  end
54
54
 
55
55
  def disconnect
@@ -1,4 +1,6 @@
1
1
  module Grenache
2
+ class NoPeerFoundError < Exception; end
3
+
2
4
  class Ws < Grenache::Base
3
5
  def listen(key, port, opts={}, &block)
4
6
  EM.defer {
@@ -13,9 +15,13 @@ module Grenache
13
15
 
14
16
  def request(key, payload, &cb)
15
17
  lookup key do |services|
16
- service = services.sample
17
- ws = WebsocketClient.new(service, &cb)
18
- ws.send Oj.dump(payload)
18
+ if services.length > 0
19
+ service = services.sample
20
+ ws = WebsocketClient.new(service, &cb)
21
+ ws.send Oj.dump(payload)
22
+ else
23
+ cb.call ["NoServiceFound", nil]
24
+ end
19
25
  end
20
26
  end
21
27
 
@@ -5,7 +5,7 @@ require 'grenache-ruby-base'
5
5
  require 'thin'
6
6
  require 'rack'
7
7
 
8
- require 'grenache/base-ws'
9
- require 'grenache/version'
8
+ require 'grenache/ws'
9
+ require 'grenache/websocket/version'
10
10
  require 'grenache/websocket'
11
11
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grenache-ruby-ws
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bitfinex <info@bitfinex.com>
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-10 00:00:00.000000000 Z
11
+ date: 2016-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eventmachine
@@ -44,28 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 0.0.5
47
+ version: 0.1.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 0.0.5
55
- - !ruby/object:Gem::Dependency
56
- name: httpclient
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '2.8'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '2.8'
54
+ version: 0.1.1
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: oj
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -109,9 +95,9 @@ files:
109
95
  - examples/worker.rb
110
96
  - grenache-ruby-ws.gemspec
111
97
  - lib/grenache-ruby-ws.rb
112
- - lib/grenache/base-ws.rb
113
- - lib/grenache/version.rb
114
98
  - lib/grenache/websocket.rb
99
+ - lib/grenache/websocket/version.rb
100
+ - lib/grenache/ws.rb
115
101
  homepage: https://github.com/bitfinexcom/grenache-ruby-ws
116
102
  licenses:
117
103
  - MIT