module SocialSnippet::Repository::DriverFactory

Public Class Methods

add_driver(driver_class) click to toggle source
# File lib/social_snippet/repository/driver_factory.rb, line 15
def add_driver(driver_class)
  drivers.push driver_class
end
clone(url) click to toggle source

@param url [String] The URL of repository @reutrn [::SocialSnippet::Repository::Drivers::DriverBase]

# File lib/social_snippet/repository/driver_factory.rb, line 21
def clone(url)
  driver = resolve_driver(url)
  driver.fetch
  driver
end
drivers() click to toggle source
# File lib/social_snippet/repository/driver_factory.rb, line 7
def drivers
  @@drivers
end
reset_drivers() click to toggle source
# File lib/social_snippet/repository/driver_factory.rb, line 11
def reset_drivers
  @@drivers = []
end
resolve_driver(url) click to toggle source
# File lib/social_snippet/repository/driver_factory.rb, line 27
def resolve_driver(url)
  driver_class = drivers.select do |driver_class|
    driver_class.target? url
  end.first
  if driver_class.nil?
    raise "ERROR: driver not found"
  else
    driver_class.new url
  end
end