module Jaleb

Constants

LIBRARY_PATH
MODEL_PATH
VERSION

Public Class Methods

fetch(url) click to toggle source

Fetch information based on url

# File lib/jaleb.rb, line 18
def fetch(url) 
  # Look for model based on url
  model_class = Jaleb::Model.identify(url)

  # Use Base class for fallback
  model_class = Jaleb::Model::Base unless model_class
  
  data = Jaleb::Data.read(url)

  product = model_class.new
  product.parse(data)

  # Save url
  product.url = url
  
  return product
end
model_classes() click to toggle source

get array of model classes

Jaleb.model_classes = [Amazon, Ebay, ThinkGeek]
# File lib/jaleb.rb, line 49
def model_classes
  models = Array.new
  Dir[File.join(File.dirname(__FILE__), "jaleb", "models", "*.rb")].each do |f|
    filename = File.basename(f, ".rb")
    models << ["Jaleb", "Model", filename.camelize].join("::").constantize unless filename == "base"
  end 
  return models
end
models() click to toggle source

get array of models syms

# File lib/jaleb.rb, line 38
def models
  models = Array.new
  Dir[File.join(File.dirname(__FILE__), "jaleb", "models", "*.rb")].each do |f|
    model = File.basename(f, ".rb").to_sym
    models << model unless model == :base
  end 
  return models
end