ruby_skynet 0.4.0.pre → 0.4.0.pre2

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: 729668f7d983cdc9801d603ace66a025d0038cf2
4
- data.tar.gz: 9f9ac2b233d3c607d01f316476bf193010cc8a86
3
+ metadata.gz: 0a4505056e7cd42bd2218494f4ef40c5c46b68b8
4
+ data.tar.gz: a2c44053bd1e42ac9bf3f67797e0363d5002b6fa
5
5
  SHA512:
6
- metadata.gz: d68231094851f6c74ee3eb1f0eaf17442ca7fb9d7788c7247c09561b61344b68cd68fb495468f66e8ee517171566b8e099431e0ba0a844f6be35c2df0ba92072
7
- data.tar.gz: c57624d3a943a3c8751b738f7c4a447b145d9127d4b08bd040ac700c1bbde88ca9c12aa379a0e84c2034cf785d2e8f30ff117242a6171e0730dd957eb9e07f6d
6
+ metadata.gz: df66afd5b487c3f1014064c39687404681f1c0cb5528e888af262daf7b2535474b10029a8d278d7e133b1ccb89f223b9621a5bd944ee19b7f413462cc4c8602f
7
+ data.tar.gz: 47ed383fa62a90510cb2788d520a9416e6f82610db9300fcb7a6370285fc298cfd96348c99ecbc1bcbd5bb03c708a3456283b52f524960843aeb0f0eb930d5d1
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source 'http://rubygems.org'
1
+ source :rubygems
2
2
 
3
3
  group :test do
4
4
  gem "shoulda"
data/examples/e.rb ADDED
@@ -0,0 +1,14 @@
1
+ $LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
2
+ require 'rubygems'
3
+ require 'ruby_skynet'
4
+ require 'active_support/core_ext/hash/conversions'
5
+
6
+ SemanticLogger::Logger.default_level = :trace
7
+ SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new('skynet.log')
8
+
9
+ client = RubySkynet::Client.new('InquiriesService')
10
+ #h = {}; 1000.times{|i| h["hello#{i}"] = i}
11
+ #p client.call('echo', h)
12
+ data = Hash.from_xml(File.read("../../claritybase/test/load/inquiry.xml"))['inquiry']
13
+ p data
14
+ p client.call('create', data)
@@ -1,9 +1,10 @@
1
+ # Allow examples to be run directly outside of the Gem
2
+ $LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
1
3
  require 'rubygems'
2
4
  require 'ruby_skynet'
3
- require 'sync_attr'
4
5
 
5
6
  SemanticLogger::Logger.default_level = :trace
6
- SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new('skynet.log')
7
+ SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new('echo_client.log')
7
8
 
8
9
  client = RubySkynet::Client.new('EchoService')
9
10
  p client.call('echo', :hello => 'world')
@@ -1,12 +1,14 @@
1
+ # Allow examples to be run directly outside of the Gem
2
+ $LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
1
3
  require 'rubygems'
2
4
  require 'ruby_skynet'
3
5
 
4
6
  # Log trace information to a log file
5
7
  SemanticLogger::Logger.default_level = :trace
6
- SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new('skynet.log')
8
+ SemanticLogger::Logger.appenders << SemanticLogger::Appender::File.new('echo_server.log')
7
9
 
8
10
  # Specify Port and Hostname to listen for requests on
9
- RubySkynet::Server.port = 2000
11
+ RubySkynet::Server.port = 2020
10
12
  RubySkynet::Server.hostname = '127.0.0.1'
11
13
 
12
14
  # Just echo back any parameters received when the echo method is called
@@ -26,3 +28,5 @@ RubySkynet::Server.start
26
28
 
27
29
  puts "Press enter to shutdown server"
28
30
  gets
31
+
32
+ RubySkynet::Server.stop
@@ -9,12 +9,16 @@ module RubySkynet
9
9
  # Read 4 byte size of following BSON document
10
10
  bytes = socket.read(4)
11
11
 
12
+ # No more data
13
+ return unless bytes
14
+
12
15
  # Read BSON document
13
16
  sz = bytes.unpack("V")[0]
14
17
  raise "Invalid Data received from server:#{bytes.inspect}" unless sz
15
18
 
16
19
  bytebuf.append!(bytes)
17
20
  bytebuf.append!(socket.read(sz - 4))
21
+ raise "Celluloid is not returning #{sz} requested bytes. #{bytebuf.length} bytes returned" unless sz == bytebuf.length
18
22
  return BSON.deserialize(bytebuf)
19
23
  end
20
24
 
@@ -95,7 +95,7 @@ module RubySkynet
95
95
  client_handshake = { 'clientid' => client_id }
96
96
  @logger.debug "Sending Client Handshake"
97
97
  @logger.trace 'Client Handshake', client_handshake
98
- socket.write(BSON.serialize(client_handshake))
98
+ socket.write(BSON.serialize(client_handshake).to_s)
99
99
  end
100
100
 
101
101
  # To prevent strange issues if user incorrectly supplies server names
@@ -135,12 +135,12 @@ module RubySkynet
135
135
 
136
136
  @logger.debug "Sending Header"
137
137
  @logger.trace 'Header', header
138
- socket.write(BSON.serialize(header))
138
+ socket.write(BSON.serialize(header).to_s)
139
139
 
140
140
  # The parameters are placed in the request object in BSON serialized form
141
141
  request = {
142
142
  'clientid' => socket.user_data[:client_id],
143
- 'in' => BSON.serialize(parameters).to_s,
143
+ 'in' => BSON::Binary.new(BSON.serialize(parameters).to_s),
144
144
  'method' => method_name.to_s,
145
145
  'requestinfo' => {
146
146
  'requestid' => request_id,
@@ -156,7 +156,7 @@ module RubySkynet
156
156
  @logger.debug "Sending Request"
157
157
  @logger.trace 'Request', request
158
158
  @logger.trace 'Parameters:', parameters
159
- socket.write(BSON.serialize(request))
159
+ socket.write(BSON.serialize(request).to_s)
160
160
 
161
161
  # Since Send does not affect state on the server we can also retry reads
162
162
  if idempotent
@@ -57,7 +57,7 @@ module RubySkynet
57
57
  :read_timeout => 5,
58
58
  :connect_timeout => 3,
59
59
  :connect_retry_interval => 1,
60
- :connect_retry_count => 300
60
+ :connect_retry_count => 30
61
61
  }
62
62
  end
63
63
 
@@ -167,7 +167,7 @@ module RubySkynet
167
167
 
168
168
  logger.debug "Sending Reply"
169
169
  logger.trace 'Reply', reply
170
- client.write(BSON.serialize({'out' => BSON.serialize(reply).to_s}).to_s)
170
+ client.write(BSON.serialize('out' => BSON::Binary.new(BSON.serialize(reply))).to_s)
171
171
  else
172
172
  logger.debug "Closing client since no reply is being sent back"
173
173
  break
@@ -1,3 +1,3 @@
1
1
  module RubySkynet #:nodoc
2
- VERSION = "0.4.0.pre"
2
+ VERSION = "0.4.0.pre2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_skynet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0.pre
4
+ version: 0.4.0.pre2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Reid Morrison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-03-18 00:00:00.000000000 Z
11
+ date: 2013-03-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: semantic_logger
@@ -106,6 +106,7 @@ files:
106
106
  - LICENSE.txt
107
107
  - README.md
108
108
  - Rakefile
109
+ - examples/e.rb
109
110
  - examples/echo_client.rb
110
111
  - examples/echo_server.rb
111
112
  - lib/ruby_skynet.rb