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