lib/rio/scheme/http.rb in rio-0.4.2 vs lib/rio/scheme/http.rb in rio-0.5.1
- old
+ new
@@ -1,8 +1,8 @@
#--
-# ===============================================================================
-# Copyright (c) 2005,2006,2007,2008 Christopher Kleckner
+# ===========================================================================
+# Copyright (c) 2005-2012 Christopher Kleckner
# All rights reserved
#
# This file is part of the Rio library for ruby.
#
# Rio is free software; you can redistribute it and/or modify
@@ -16,39 +16,30 @@
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Rio; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-# ===============================================================================
+# ===========================================================================
#++
#
-# To create the documentation for Rio run the command
-# ruby build_doc.rb
-# from the distribution directory.
-#
-# Suggested Reading
-# * RIO::Doc::SYNOPSIS
-# * RIO::Doc::INTRO
-# * RIO::Doc::HOWTO
-# * RIO::Doc::EXAMPLES
-# * RIO::Rio
-#
module RIO
module HTTP #:nodoc: all
RESET_STATE = 'HTTP::Stream::Open'
- require 'rio/rl/uri'
- class RL < RIO::RL::URIBase
- def self.splitrl(s)
- sub,opq,whole = split_riorl(s)
- [whole]
- end
+ require 'rio/rrl/withpath'
+ class RRL < RIO::RRL::URIBase
+ #def self.splitrl(s)
+ # sub,opq,whole = split_riorl(s)
+ # [whole]
+ #end
+ require 'uri'
require 'open-uri'
def open(*args)
- IOH::Stream.new(self.uri.open)
+ u = ::URI.parse(self.to_s)
+ IOH::Stream.new(u.open)
end
end
module Stream
@@ -57,10 +48,10 @@
class Open < RIO::Stream::Open
include Ops::Path::Status
include Ops::Path::URI
include Ops::Path::Query
def input()
- self.rl.base = self.ioh.base_uri
+ self.rl.base = self.ioh.base_uri.to_s
stream_state('HTTP::Stream::Input')
end
end
require 'rio/stream'