singleton method URI::FTP.build

build(ary) -> URI::FTP[permalink][rdoc][edit]
build(hash) -> URI::FTP

引数で与えられた URI 構成要素から URI::FTP オブジェクトを生成します。引数の正当性を検査します。

例:

require 'uri'
p URI::FTP.build([nil, "www.example.com", 10020, "/path",  'a'])
#=> #<URI::FTP:0x201c4f9c URL:ftp://www.example.com:10020/path;type=a>

p URI::FTP.build({:host => "www.example.com", :path => "/path",  :typecode => 'a'})
#=> #<URI::FTP:0x201bd9cc URL:ftp://www.example.com/path;type=a>

p URI::FTP.build([nil, 'example.com', nil, '/foo', 'i']).to_s
#=> 'ftp://example.com/%2Ffoo;type=i'
[PARAM] ary:
構成要素を表す文字列の配列を与えます。要素は
      [userinfo, host, port, path, typecode]
の順です。typecode は、"a"、"i" あるいは "d" です。"a" はテキスト、"i" はバイナリ、 "d" はディレクトリを表します。"a" がテキストで、"i" がバイナリなのは、それぞれのデータタイプがFTPのプロトコルで ASCII と IMAGE と呼ばれていたためです。
[PARAM] hash:
構成要素を表すハッシュを与えます。ハッシュのキーは
 :scheme, :userinfo, :host, :port, :path, :typecode
のいずれかです。ハッシュの値は文字列です。typecode は、 "a"、"i" あるいは "d" です。"a" はテキスト、"i" はバイナリ、 "d" はディレクトリを表します。"a" がテキストで、"i" がバイナリなのは、それぞれのデータタイプがFTPのプロトコルで ASCII と IMAGE と呼ばれていたためです。
[EXCEPTION] URI::InvalidComponentError:
各要素が適合しない場合に発生します。
[EXCEPTION] ArgumentError:
typecode に定められた以外の文字を与えると発生します。