packet_io 0.4.1 → 0.4.2
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.
- data/.travis.yml +11 -0
- data/Rakefile +1 -1
- data/lib/packet_io.rb +1 -1
- data/lib/packet_io/io_listener.rb +8 -5
- data/lib/packet_io/test/mock_server.rb +2 -0
- data/packet_io.gemspec +3 -1
- metadata +57 -8
data/.travis.yml
ADDED
data/Rakefile
CHANGED
data/lib/packet_io.rb
CHANGED
@@ -67,8 +67,8 @@ module PacketIO
|
|
67
67
|
#
|
68
68
|
# @return [nil]
|
69
69
|
#
|
70
|
-
def receive(data)
|
71
|
-
forward(data)
|
70
|
+
def receive(*data)
|
71
|
+
forward(*data)
|
72
72
|
end
|
73
73
|
|
74
74
|
def forward(*data)
|
@@ -78,15 +78,18 @@ module PacketIO
|
|
78
78
|
|
79
79
|
|
80
80
|
class LineBasedProtocol < Base
|
81
|
+
def initialize(*args)
|
82
|
+
super
|
83
|
+
@buffer = StringScanner.new("")
|
84
|
+
end
|
81
85
|
|
82
86
|
# strip newlines from received data and pass on complete lines
|
83
87
|
#
|
84
88
|
# @param [String] data
|
85
89
|
#
|
86
90
|
def receive(data)
|
87
|
-
@
|
88
|
-
|
89
|
-
while s = @data.scan(/.*?\n/)
|
91
|
+
@buffer.concat(data)
|
92
|
+
while s = @buffer.scan(/.*?\n/)
|
90
93
|
forward(s.strip)
|
91
94
|
end
|
92
95
|
nil
|
data/packet_io.gemspec
CHANGED
@@ -19,6 +19,8 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.require_paths = ["lib"]
|
20
20
|
s.summary = %q{define packet based protocols in a declarative fashion}
|
21
21
|
|
22
|
-
s.
|
22
|
+
s.add_dependency "rake"
|
23
|
+
s.add_development_dependency("minitest", "~> 3.2.0")
|
24
|
+
s.add_development_dependency("yard", ["~> 0.7", "~> 0.8"])
|
23
25
|
end
|
24
26
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: packet_io
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,20 +9,62 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
13
|
-
default_executable:
|
12
|
+
date: 2012-07-10 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rake
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: minitest
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 3.2.0
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 3.2.0
|
15
46
|
- !ruby/object:Gem::Dependency
|
16
47
|
name: yard
|
17
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
18
49
|
none: false
|
19
50
|
requirements:
|
20
51
|
- - ~>
|
21
52
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.7
|
53
|
+
version: '0.7'
|
54
|
+
- - ~>
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0.8'
|
23
57
|
type: :development
|
24
58
|
prerelease: false
|
25
|
-
version_requirements:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
none: false
|
61
|
+
requirements:
|
62
|
+
- - ~>
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '0.7'
|
65
|
+
- - ~>
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '0.8'
|
26
68
|
description: ''
|
27
69
|
email: mail@levinalex.net
|
28
70
|
executables: []
|
@@ -31,6 +73,7 @@ extra_rdoc_files: []
|
|
31
73
|
files:
|
32
74
|
- .document
|
33
75
|
- .gitignore
|
76
|
+
- .travis.yml
|
34
77
|
- Gemfile
|
35
78
|
- History.txt
|
36
79
|
- LICENSE
|
@@ -42,7 +85,6 @@ files:
|
|
42
85
|
- packet_io.gemspec
|
43
86
|
- test/helper.rb
|
44
87
|
- test/test_io_listener.rb
|
45
|
-
has_rdoc: true
|
46
88
|
homepage: http://github.com/levinalex/packet_io
|
47
89
|
licenses: []
|
48
90
|
post_install_message:
|
@@ -56,18 +98,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
56
98
|
- - ! '>='
|
57
99
|
- !ruby/object:Gem::Version
|
58
100
|
version: '0'
|
101
|
+
segments:
|
102
|
+
- 0
|
103
|
+
hash: 2074572682123756861
|
59
104
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
60
105
|
none: false
|
61
106
|
requirements:
|
62
107
|
- - ! '>='
|
63
108
|
- !ruby/object:Gem::Version
|
64
109
|
version: '0'
|
110
|
+
segments:
|
111
|
+
- 0
|
112
|
+
hash: 2074572682123756861
|
65
113
|
requirements: []
|
66
114
|
rubyforge_project:
|
67
|
-
rubygems_version: 1.
|
115
|
+
rubygems_version: 1.8.24
|
68
116
|
signing_key:
|
69
117
|
specification_version: 3
|
70
118
|
summary: define packet based protocols in a declarative fashion
|
71
119
|
test_files:
|
72
120
|
- test/helper.rb
|
73
121
|
- test/test_io_listener.rb
|
122
|
+
has_rdoc:
|