From 50abc043fc28a3a19948de2dcfd15a103ed423a9 Mon Sep 17 00:00:00 2001 From: //de Date: Tue, 28 May 2013 01:55:23 -0700 Subject: [PATCH 1/4] Remove missing methods from Request::Parser. Add updated methods to RequestMixin. --- lib/reel/mixins.rb | 4 ++-- lib/reel/request_parser.rb | 6 ------ 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/lib/reel/mixins.rb b/lib/reel/mixins.rb index 16b0650..f7c4980 100644 --- a/lib/reel/mixins.rb +++ b/lib/reel/mixins.rb @@ -48,11 +48,11 @@ def uri end def path - @http_parser.request_path + @path ||= uri.path end def query_string - @http_parser.query_string + @query ||= uri.query end end diff --git a/lib/reel/request_parser.rb b/lib/reel/request_parser.rb index 84d1b0c..824f384 100644 --- a/lib/reel/request_parser.rb +++ b/lib/reel/request_parser.rb @@ -9,12 +9,6 @@ def initialize reset end - [:request_path, :query_string].each do |m| - define_method m do - @parser.send m - end - end - def add(data) @parser << data end From 42b5f82c78797ab4b77fb78125a8aa1f52fe6552 Mon Sep 17 00:00:00 2001 From: //de Date: Tue, 28 May 2013 01:59:11 -0700 Subject: [PATCH 2/4] Use the new java port inside http_parser.rb which is jRuby compatible. --- reel.gemspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reel.gemspec b/reel.gemspec index e50d0ca..4cde42e 100644 --- a/reel.gemspec +++ b/reel.gemspec @@ -17,7 +17,7 @@ Gem::Specification.new do |gem| gem.add_runtime_dependency 'celluloid-io', '>= 0.8.0' gem.add_runtime_dependency 'http', '>= 0.2.0' - gem.add_runtime_dependency 'http_parser.rb', '>= 0.5.3' + gem.add_runtime_dependency 'http_parser.rb', '>= 0.6.0.beta.2' gem.add_runtime_dependency 'websocket_parser', '>= 0.1.4' gem.add_runtime_dependency 'rack', '>= 1.4.0' From eaee14fcd41a9b4694d214bdfd278c0a73bae1bf Mon Sep 17 00:00:00 2001 From: //de Date: Tue, 28 May 2013 04:47:04 -0700 Subject: [PATCH 3/4] Include support for #fragment, for good measure --- lib/reel/mixins.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/reel/mixins.rb b/lib/reel/mixins.rb index f7c4980..1656b05 100644 --- a/lib/reel/mixins.rb +++ b/lib/reel/mixins.rb @@ -55,5 +55,9 @@ def query_string @query ||= uri.query end + def fragment + @fragment ||= uri.fragment + end + end end From 026a865f50104f3102cda5e3de5a21aff738374c Mon Sep 17 00:00:00 2001 From: //de Date: Tue, 28 May 2013 13:47:15 -0700 Subject: [PATCH 4/4] directly access URI object every time for fragment/query_string/path --- lib/reel/mixins.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/reel/mixins.rb b/lib/reel/mixins.rb index 1656b05..533044d 100644 --- a/lib/reel/mixins.rb +++ b/lib/reel/mixins.rb @@ -48,15 +48,15 @@ def uri end def path - @path ||= uri.path + uri.path end def query_string - @query ||= uri.query + uri.query end def fragment - @fragment ||= uri.fragment + uri.fragment end end