Ruby 4.0 リファレンスマニュアル

class Gem::RemoteFetcher

[edit]

要約

リモートソースから Gem パッケージや Gem パッケージの情報を取得するためのクラスです。

目次

特異メソッド
インスタンスメソッド
追加されるメソッド

継承しているメソッド

Gem::UserInteractionから継承しているメソッド
Gem::DefaultUserInteractionから継承しているメソッド

特異メソッド

fetcher -> Gem::RemoteFetcherRuby 1.9.3 から[permalink][rdoc][edit]

このクラスの唯一のインスタンスを返します。

インスタンスメソッド

download(spec, source_uri, install_dir = Gem.dir) -> StringRuby 1.9.3 から[permalink][rdoc][edit]

source_uri から取得した Gem パッケージをキャッシュディレクトリに配置します。

既に Gem パッケージが存在する場合は、ファイルを置き換えませんが source_uri がローカルパス (file://) である場合は常にファイルを置き換えます。

[PARAM] spec:
Gem::Specification のインスタンスを指定します。
[PARAM] source_uri:
取得先の URI を指定します。
[PARAM] install_dir:
ダウンロードしたファイルの配置先を指定します。
[RETURN]
ローカルにコピーした Gem ファイルのパスを返します。
[EXCEPTION] Gem::RemoteFetcher::FetchError:
Gem の取得に失敗した場合に発生します。
fetch_path(uri, mtime = nil, head = false) -> String | objectRuby 1.9.3 から[permalink][rdoc][edit]

与えられた URI からダウンロードしたデータを文字列として返します。

uri のスキームが http/https/s3 で head に真を指定した場合は、ボディを読まずにレスポンスオブジェクト(Gem::RemoteFetcher#request の戻り値)をそのまま返します。file:// の場合は head の指定によらず常に文字列を返します。

[PARAM] uri:
データ取得先の URI を指定します。
[PARAM] mtime:
更新時刻を指定します。
[PARAM] head:
真を指定するとヘッダ情報のみ取得します。
request(uri, request_class, last_modified = nil) -> Gem::Net::HTTPResponseRuby 1.9.3 から[permalink][rdoc][edit]

与えられた URI に対してリクエストを実行し、レスポンスオブジェクトを返します。

Ruby 3.3 以降の RubyGems は net-http を Gem::Net 名前空間の下に取り込んでいるため、戻り値は Net::HTTPResponse ではなく、それと同じインターフェースを持つ別クラス Gem::Net::HTTPResponse です。

[PARAM] uri:
URI を指定します。
[PARAM] request_class:
Gem::Net::HTTP::HeadGem::Net::HTTP::Get を指定します。
[PARAM] last_modified:
最終更新時刻を指定します。

追加されるメソッド

fetcher=(fetcher)Ruby 1.9.3 から[permalink][rdoc][edit] [added by rubygems/test_utilities]

テスト用のメソッドです。