class Gem::SpecFetcher

[edit]

要約

リモートリポジトリから Gem のメタデータを取得して更新するためのクラスです。

目次

特異メソッド
インスタンスメソッド

継承しているメソッド

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

特異メソッド

fetcher -> Gem::SpecFetcher[permalink][rdoc][edit]

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

fetcher=(fetcher)[permalink][rdoc][edit]

[TODO]

インスタンスメソッド

cache_dir(uri) -> String[permalink][rdoc][edit]

uri の内容を書き込むローカルのディレクトリ名を返します。

[PARAM] uri:
dir -> String[permalink][rdoc][edit]

このクラスが使用するキャッシュ用ディレクトリの名前を返します。

fetch(dependency, all = false, matching_platform = true) -> Array[permalink][rdoc][edit]

依存関係を満たす gemspec の配列を返します。

[PARAM] dependency:
依存関係を指定します。
[PARAM] all:
真を指定するとマッチする全てのバージョンの情報を返します。
[PARAM] matching_platform:
偽を指定すると全てのプラットフォームの情報を返します。

[SEE_ALSO] Gem::Dependency

fetch_spec(spec, source_uri) -> object[permalink][rdoc][edit]

[TODO]

[PARAM] spec:
[PARAM] source_uri:
find_matching(dependency, all = false, matching_platform = true) -> Array[permalink][rdoc][edit]

依存関係を満たす gemspec の名前の配列を返します。

[PARAM] dependency:
依存関係を指定します。
[PARAM] all:
真を指定するとマッチする全てのバージョンの情報を返します。
[PARAM] matching_platform:
偽を指定すると全てのプラットフォームの情報を返します。

[SEE_ALSO] Gem::Dependency

latest_specs -> Hash[permalink][rdoc][edit]

キャッシュされている最新の gemspec を返します。

legacy_repos -> Array[permalink][rdoc][edit]

RubyGems 1.2 未満で作成されたリポジトリの配列を返します。

list(all = false) -> Array[permalink][rdoc][edit]

Gem::sources に格納されている各ソースから利用可能な Gem のリストを取得して返します。

[PARAM] list:
真を指定すると全てのバージョンの情報を返します。
load_specs(source_uri, file) -> object[permalink][rdoc][edit]

指定された source_uri, file から gemspec をロードします。

また、内部ではキャッシュの更新も行っています。

[PARAM] source_uri:
gemspec の置いてある URI を指定します。
[PARAM] file:
gemspec のファイル名を指定します。
specs -> Hash[permalink][rdoc][edit]

キャッシュされている全ての gemspec を返します。

warn_legacy(exception) { ... } -> bool[permalink][rdoc][edit]

Gem::SpecFetcher#fetch で例外が発生した場合に呼び出されます。

RubyGems 1.2 未満で作成したリポジトリにアクセスした事が原因で例外が発生した場合には警告が表示されます。またこの場合、ブロックを与えていればブロックは評価されます。

それ以外の原因で例外が発生した場合は偽を返します。

[PARAM] exception:
例外オブジェクトを指定します。

[SEE_ALSO] Gem::SpecFetcher#fetch