module WeddingRegistryScraper::Registries

Public Class Methods

initialize_registry(url, options={}) click to toggle source
# File lib/wedding_registry_scraper/registries.rb, line 19
def initialize_registry(url, options={})
  klass = registry_class_from_url(url)
  klass ? klass.new(url, options) : nil
end
registry_class_from_url(url) click to toggle source
# File lib/wedding_registry_scraper/registries.rb, line 13
def registry_class_from_url(url)
  registry_classes.detect do |klass|
    /^https?:\/\/[^\/]*#{klass.domain}/.match(url)
  end
end
registry_classes() click to toggle source
# File lib/wedding_registry_scraper/registries.rb, line 3
def registry_classes
  @registry_classes ||= begin
    self.constants.map do |const|
      obj = self.const_get(const)
      obj if obj.is_a?(Class) && obj < WeddingRegistryScraper::Registry
    end.compact
  end
  @registry_classes
end