diff --git a/lib/twitter/streaming/client.rb b/lib/twitter/streaming/client.rb index c443abce5..217b9db46 100644 --- a/lib/twitter/streaming/client.rb +++ b/lib/twitter/streaming/client.rb @@ -63,10 +63,23 @@ def track!(*keywords, &block) end end + # Set a Proc to be run when connection established. + def on_request(&block) + if block_given? + @on_request = block + self + elsif instance_variable_defined?(:@on_request) + @on_request + else + Proc.new {} + end + end + def request(options, &block) + on_request.call # TODO: consider HTTP::Request - request = Twitter::Streaming::Request.new(@request_options.merge(options)) - response = Twitter::Streaming::Response.new(block) + request = Twitter::Streaming::Request.new(@request_options.merge(options)) + response = Twitter::Streaming::Response.new(block) @connection.future.stream(request, response) end diff --git a/lib/twitter/streaming/response.rb b/lib/twitter/streaming/response.rb index fa6a163d6..d7e80858e 100644 --- a/lib/twitter/streaming/response.rb +++ b/lib/twitter/streaming/response.rb @@ -9,8 +9,7 @@ def initialize(block) end def on_headers_complete(headers) - puts headers - # handle response codes + # TODO: handle response codes end def on_body(data)