Module: Fletcher::Model
- Defined in:
- lib/fletcher.rb,
lib/fletcher/model.rb,
lib/fletcher/models/base.rb,
lib/fletcher/models/ebay.rb,
lib/fletcher/models/etsy.rb,
lib/fletcher/models/steam.rb,
lib/fletcher/models/amazon.rb,
lib/fletcher/models/newegg.rb,
lib/fletcher/models/playcom.rb,
lib/fletcher/models/gamecouk.rb,
lib/fletcher/models/thinkgeek.rb,
lib/fletcher/models/googleshopping.rb
Overview
Autoload Models
Defined Under Namespace
Classes: Amazon, Base, Ebay, Etsy, Gamecouk, Googleshopping, Newegg, Playcom, Steam, Thinkgeek
Class Method Summary collapse
-
.identify(url) ⇒ Object
Detect model by url Fletcher::Model.identify(“www.amazon.com/whatever”) # => Flether::Models::Amazon.
Class Method Details
.identify(url) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/fletcher/model.rb', line 6 def identify(url) if url =~ ::URI::regexp uri = ::URI::parse(url) host = uri.host matched_model = nil for model in Fletcher.model_classes #model_class = matched_model = model if host =~ model.regexp end # raise ArgumentError, "Fletcher doesn't support #{host} yet." unless matched_model_class return matched_model else raise ArgumentError, "not a url" end end |