diff options
Diffstat (limited to 'lib/bundler/plugin/source_list.rb')
-rw-r--r-- | lib/bundler/plugin/source_list.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/bundler/plugin/source_list.rb b/lib/bundler/plugin/source_list.rb new file mode 100644 index 0000000000..33f5e5afbd --- /dev/null +++ b/lib/bundler/plugin/source_list.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Bundler + # SourceList object to be used while parsing the Gemfile, setting the + # approptiate options to be used with Source classes for plugin installation + module Plugin + class SourceList < Bundler::SourceList + def initialize + @path_sources = [] + @git_sources = [] + @rubygems_aggregate = Plugin::Installer::Rubygems.new + @rubygems_sources = [] + end + + def add_git_source(options = {}) + add_source_to_list Plugin::Installer::Git.new(options), git_sources + end + + def add_rubygems_source(options = {}) + add_source_to_list Plugin::Installer::Rubygems.new(options), @rubygems_sources + end + + def all_sources + path_sources + git_sources + rubygems_sources + end + end + end +end |