module GitReflow::GitServer
Public Instance Methods
can_connect_to?(provider)
click to toggle source
# File lib/git_reflow/git_server.rb, line 44 def can_connect_to?(provider) GitReflow::GitServer.const_defined?(provider) end
connect(options = {})
click to toggle source
# File lib/git_reflow/git_server.rb, line 11 def connect(options = {}) options ||= {} options[:provider] = 'GitHub' if "#{options[:provider]}".length <= 0 begin provider_name = options[:provider] provider = provider_class_for(options.delete(:provider)).new(options) provider.authenticate(options.keep_if {|key, value| key == :silent }) provider rescue ConnectionError => e GitReflow.say "Error connecting to #{provider_name}: #{e.message}", :error end end
connection()
click to toggle source
# File lib/git_reflow/git_server.rb, line 24 def connection return nil unless current_provider current_provider.connection end
create_pull_request(options = {})
click to toggle source
# File lib/git_reflow/git_server.rb, line 48 def create_pull_request(options = {}) raise "#{self.class.to_s}#create_pull_request method must be implemented" end
current_provider()
click to toggle source
# File lib/git_reflow/git_server.rb, line 29 def current_provider provider = "#{GitReflow::Config.get('reflow.git-server', local: true) || GitReflow::Config.get('reflow.git-server')}" if provider.length > 0 begin provider_class_for(provider) rescue ConnectionError => e GitReflow.say e.message, :error nil end else GitReflow.say "Reflow hasn't been setup yet. Run 'git reflow setup' to continue", :notice nil end end
find_open_pull_request(options = {})
click to toggle source
# File lib/git_reflow/git_server.rb, line 52 def find_open_pull_request(options = {}) raise "#{self.class.to_s}#find_open_pull_request method must be implemented" end
Private Instance Methods
provider_class_for(provider)
click to toggle source
# File lib/git_reflow/git_server.rb, line 58 def provider_class_for(provider) raise ConnectionError, "GitServer not setup for \"#{provider}\"" unless self.can_connect_to?(provider) GitReflow::GitServer.const_get(provider) end