twitter-stream 0.1.8 → 0.1.9
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.
Potentially problematic release.
This version of twitter-stream might be problematic. Click here for more details.
- data/VERSION +1 -1
- data/lib/twitter/json_stream.rb +23 -7
- data/spec/twitter/json_stream.rb +16 -14
- data/twitter-stream.gemspec +16 -6
- metadata +47 -49
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.9
|
data/lib/twitter/json_stream.rb
CHANGED
@@ -33,7 +33,8 @@ module Twitter
|
|
33
33
|
:proxy => ENV['HTTP_PROXY'],
|
34
34
|
:auth => nil,
|
35
35
|
:oauth => {},
|
36
|
-
:filters => []
|
36
|
+
:filters => [],
|
37
|
+
:params => {},
|
37
38
|
}
|
38
39
|
|
39
40
|
attr_accessor :code
|
@@ -183,16 +184,16 @@ module Twitter
|
|
183
184
|
|
184
185
|
if @proxy
|
185
186
|
# proxies need the request to be for the full url
|
186
|
-
request_uri = "
|
187
|
+
request_uri = "#{uri_base}:#{@options[:port]}#{request_uri}"
|
187
188
|
end
|
188
189
|
|
189
190
|
content = @options[:content]
|
190
191
|
|
191
|
-
|
192
|
+
unless q = query.empty?
|
192
193
|
if @options[:method].to_s.upcase == 'GET'
|
193
|
-
request_uri << "?#{
|
194
|
+
request_uri << "?#{q}"
|
194
195
|
else
|
195
|
-
content =
|
196
|
+
content = q
|
196
197
|
end
|
197
198
|
end
|
198
199
|
|
@@ -269,6 +270,10 @@ module Twitter
|
|
269
270
|
@reconnect_retries = 0
|
270
271
|
end
|
271
272
|
|
273
|
+
#
|
274
|
+
# URL and request components
|
275
|
+
#
|
276
|
+
|
272
277
|
# :filters => %w(miama lebron jesus)
|
273
278
|
# :oauth => {
|
274
279
|
# :consumer_key => [key],
|
@@ -277,14 +282,25 @@ module Twitter
|
|
277
282
|
# :access_secret => [access secret]
|
278
283
|
# }
|
279
284
|
def oauth_header
|
280
|
-
uri =
|
285
|
+
uri = uri_base + @options[:path]
|
281
286
|
::ROAuth.header(@options[:oauth], uri, params, @options[:method])
|
282
287
|
end
|
283
288
|
|
289
|
+
# Scheme (https if ssl, http otherwise) and host part of URL
|
290
|
+
def uri_base
|
291
|
+
"http#{'s' if @options[:ssl]}://#{@options[:host]}"
|
292
|
+
end
|
293
|
+
|
284
294
|
# Normalized query hash of escaped string keys and escaped string values
|
285
295
|
# nil values are skipped
|
286
296
|
def params
|
287
|
-
|
297
|
+
flat = {}
|
298
|
+
@options[:params].merge( :track => @options[:filters] ).each do |param, val|
|
299
|
+
next if val.empty?
|
300
|
+
val = val.join(",") if val.respond_to?(:join)
|
301
|
+
flat[escape(param)] = escape(val)
|
302
|
+
end
|
303
|
+
flat
|
288
304
|
end
|
289
305
|
|
290
306
|
def query
|
data/spec/twitter/json_stream.rb
CHANGED
@@ -4,6 +4,22 @@ require 'twitter/json_stream'
|
|
4
4
|
|
5
5
|
include Twitter
|
6
6
|
|
7
|
+
Host = "127.0.0.1"
|
8
|
+
Port = 9550
|
9
|
+
|
10
|
+
class JSONServer < EM::Connection
|
11
|
+
attr_accessor :data
|
12
|
+
def receive_data data
|
13
|
+
$recieved_data = data
|
14
|
+
send_data $data_to_send
|
15
|
+
EventMachine.next_tick {
|
16
|
+
close_connection if $close_connection
|
17
|
+
}
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
|
7
23
|
describe JSONStream do
|
8
24
|
|
9
25
|
context "on create" do
|
@@ -36,20 +52,6 @@ describe JSONStream do
|
|
36
52
|
end
|
37
53
|
end
|
38
54
|
|
39
|
-
Host = "127.0.0.1"
|
40
|
-
Port = 9550
|
41
|
-
|
42
|
-
class JSONServer < EM::Connection
|
43
|
-
attr_accessor :data
|
44
|
-
def receive_data data
|
45
|
-
$recieved_data = data
|
46
|
-
send_data $data_to_send
|
47
|
-
EventMachine.next_tick {
|
48
|
-
close_connection if $close_connection
|
49
|
-
}
|
50
|
-
end
|
51
|
-
end
|
52
|
-
|
53
55
|
context "on valid stream" do
|
54
56
|
attr_reader :stream
|
55
57
|
before :each do
|
data/twitter-stream.gemspec
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
# Generated by jeweler
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
-
# Instead, edit Jeweler::Tasks in
|
3
|
+
# Instead, edit Jeweler::Tasks in rakefile, and run the gemspec command
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{twitter-stream}
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.9"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Vladimir Kolesnikov"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-09-30}
|
13
13
|
s.description = %q{Simple Ruby client library for twitter streaming API. Uses EventMachine for connection handling. Adheres to twitter's reconnection guidline. JSON format only.}
|
14
14
|
s.email = %q{voloko@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -27,10 +27,11 @@ Gem::Specification.new do |s|
|
|
27
27
|
"spec/twitter/json_stream.rb",
|
28
28
|
"twitter-stream.gemspec"
|
29
29
|
]
|
30
|
+
s.has_rdoc = true
|
30
31
|
s.homepage = %q{http://github.com/voloko/twitter-stream}
|
31
32
|
s.rdoc_options = ["--charset=UTF-8"]
|
32
33
|
s.require_paths = ["lib"]
|
33
|
-
s.rubygems_version = %q{1.3.
|
34
|
+
s.rubygems_version = %q{1.3.1}
|
34
35
|
s.summary = %q{Twitter realtime API client}
|
35
36
|
s.test_files = [
|
36
37
|
"spec/spec_helper.rb",
|
@@ -40,9 +41,12 @@ Gem::Specification.new do |s|
|
|
40
41
|
|
41
42
|
if s.respond_to? :specification_version then
|
42
43
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
43
|
-
s.specification_version =
|
44
|
+
s.specification_version = 2
|
44
45
|
|
45
|
-
if Gem::Version.new(Gem::
|
46
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
47
|
+
s.add_runtime_dependency(%q<eventmachine>, [">= 0.12.8"])
|
48
|
+
s.add_runtime_dependency(%q<roauth>, [">= 0.0.2"])
|
49
|
+
s.add_development_dependency(%q<rspec>, [">= 1.2.8"])
|
46
50
|
s.add_runtime_dependency(%q<eventmachine>, [">= 0.12.8"])
|
47
51
|
s.add_runtime_dependency(%q<roauth>, [">= 0.0.2"])
|
48
52
|
s.add_development_dependency(%q<rspec>, [">= 1.2.8"])
|
@@ -50,11 +54,17 @@ Gem::Specification.new do |s|
|
|
50
54
|
s.add_dependency(%q<eventmachine>, [">= 0.12.8"])
|
51
55
|
s.add_dependency(%q<roauth>, [">= 0.0.2"])
|
52
56
|
s.add_dependency(%q<rspec>, [">= 1.2.8"])
|
57
|
+
s.add_dependency(%q<eventmachine>, [">= 0.12.8"])
|
58
|
+
s.add_dependency(%q<roauth>, [">= 0.0.2"])
|
59
|
+
s.add_dependency(%q<rspec>, [">= 1.2.8"])
|
53
60
|
end
|
54
61
|
else
|
55
62
|
s.add_dependency(%q<eventmachine>, [">= 0.12.8"])
|
56
63
|
s.add_dependency(%q<roauth>, [">= 0.0.2"])
|
57
64
|
s.add_dependency(%q<rspec>, [">= 1.2.8"])
|
65
|
+
s.add_dependency(%q<eventmachine>, [">= 0.12.8"])
|
66
|
+
s.add_dependency(%q<roauth>, [">= 0.0.2"])
|
67
|
+
s.add_dependency(%q<rspec>, [">= 1.2.8"])
|
58
68
|
end
|
59
69
|
end
|
60
70
|
|
metadata
CHANGED
@@ -1,13 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: twitter-stream
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease: false
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 1
|
9
|
-
- 8
|
10
|
-
version: 0.1.8
|
4
|
+
version: 0.1.9
|
11
5
|
platform: ruby
|
12
6
|
authors:
|
13
7
|
- Vladimir Kolesnikov
|
@@ -15,57 +9,69 @@ autorequire:
|
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
11
|
|
18
|
-
date: 2010-
|
12
|
+
date: 2010-09-30 00:00:00 +04:00
|
19
13
|
default_executable:
|
20
14
|
dependencies:
|
21
15
|
- !ruby/object:Gem::Dependency
|
22
16
|
name: eventmachine
|
23
|
-
|
24
|
-
|
25
|
-
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
20
|
requirements:
|
27
21
|
- - ">="
|
28
22
|
- !ruby/object:Gem::Version
|
29
|
-
hash: 63
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
- 12
|
33
|
-
- 8
|
34
23
|
version: 0.12.8
|
35
|
-
|
36
|
-
version_requirements: *id001
|
24
|
+
version:
|
37
25
|
- !ruby/object:Gem::Dependency
|
38
26
|
name: roauth
|
39
|
-
|
40
|
-
|
41
|
-
|
27
|
+
type: :runtime
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
42
30
|
requirements:
|
43
31
|
- - ">="
|
44
32
|
- !ruby/object:Gem::Version
|
45
|
-
hash: 27
|
46
|
-
segments:
|
47
|
-
- 0
|
48
|
-
- 0
|
49
|
-
- 2
|
50
33
|
version: 0.0.2
|
51
|
-
|
52
|
-
version_requirements: *id002
|
34
|
+
version:
|
53
35
|
- !ruby/object:Gem::Dependency
|
54
36
|
name: rspec
|
55
|
-
|
56
|
-
|
57
|
-
|
37
|
+
type: :development
|
38
|
+
version_requirement:
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
40
|
requirements:
|
59
41
|
- - ">="
|
60
42
|
- !ruby/object:Gem::Version
|
61
|
-
hash: 15
|
62
|
-
segments:
|
63
|
-
- 1
|
64
|
-
- 2
|
65
|
-
- 8
|
66
43
|
version: 1.2.8
|
44
|
+
version:
|
45
|
+
- !ruby/object:Gem::Dependency
|
46
|
+
name: eventmachine
|
47
|
+
type: :runtime
|
48
|
+
version_requirement:
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 0.12.8
|
54
|
+
version:
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: roauth
|
57
|
+
type: :runtime
|
58
|
+
version_requirement:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 0.0.2
|
64
|
+
version:
|
65
|
+
- !ruby/object:Gem::Dependency
|
66
|
+
name: rspec
|
67
67
|
type: :development
|
68
|
-
|
68
|
+
version_requirement:
|
69
|
+
version_requirements: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: 1.2.8
|
74
|
+
version:
|
69
75
|
description: Simple Ruby client library for twitter streaming API. Uses EventMachine for connection handling. Adheres to twitter's reconnection guidline. JSON format only.
|
70
76
|
email: voloko@gmail.com
|
71
77
|
executables: []
|
@@ -87,37 +93,29 @@ files:
|
|
87
93
|
- twitter-stream.gemspec
|
88
94
|
has_rdoc: true
|
89
95
|
homepage: http://github.com/voloko/twitter-stream
|
90
|
-
licenses: []
|
91
|
-
|
92
96
|
post_install_message:
|
93
97
|
rdoc_options:
|
94
98
|
- --charset=UTF-8
|
95
99
|
require_paths:
|
96
100
|
- lib
|
97
101
|
required_ruby_version: !ruby/object:Gem::Requirement
|
98
|
-
none: false
|
99
102
|
requirements:
|
100
103
|
- - ">="
|
101
104
|
- !ruby/object:Gem::Version
|
102
|
-
hash: 3
|
103
|
-
segments:
|
104
|
-
- 0
|
105
105
|
version: "0"
|
106
|
+
version:
|
106
107
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
|
-
none: false
|
108
108
|
requirements:
|
109
109
|
- - ">="
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
hash: 3
|
112
|
-
segments:
|
113
|
-
- 0
|
114
111
|
version: "0"
|
112
|
+
version:
|
115
113
|
requirements: []
|
116
114
|
|
117
115
|
rubyforge_project:
|
118
|
-
rubygems_version: 1.3.
|
116
|
+
rubygems_version: 1.3.1
|
119
117
|
signing_key:
|
120
|
-
specification_version:
|
118
|
+
specification_version: 2
|
121
119
|
summary: Twitter realtime API client
|
122
120
|
test_files:
|
123
121
|
- spec/spec_helper.rb
|