class Oembedder::Base

Attributes

providers[RW]

Public Class Methods

create_dailymotion() click to toggle source
# File lib/oembedder/base.rb, line 23
def self.create_dailymotion
  dm = Provider.new(format_type: 'querystring')
  dm.set_endpoint('http://www.dailymotion.com/services/oembed')
  dm.set_schemes(['http://www.dailymotion.com/video/*'])
  dm
end
create_vimeo() click to toggle source
# File lib/oembedder/base.rb, line 13
def self.create_vimeo
  vimeo = Provider.new
  vimeo.set_endpoint('http://vimeo.com/api/oembed.json')
  vimeo.set_schemes(
  ['http://vimeo.com/*',
    'http://vimeo.com/channels/*/*',
    'http://vimeo.com/groups/*/videos/*'])
  vimeo
end
create_youtube() click to toggle source
# File lib/oembedder/base.rb, line 30
def self.create_youtube
  youtube = Provider.new(format_type: 'querystring')
  youtube.set_endpoint('http://www.youtube.com/oembed')
  youtube.set_schemes(['http://www.youtube.com/watch?v=*'])
  youtube
end
new() click to toggle source
# File lib/oembedder/base.rb, line 37
def initialize
  self.providers = []
end
setup() click to toggle source
# File lib/oembedder/base.rb, line 5
def self.setup
  oembed = Base.new
  oembed.providers << create_vimeo
  oembed.providers << create_dailymotion
  oembed.providers << create_youtube
  oembed
end

Public Instance Methods

find_provider(target) click to toggle source
# File lib/oembedder/base.rb, line 46
def find_provider(target)
  self.providers.each do |pv|
    return pv if pv.match_scheme? target
  end

  false
end
get(url, params = {}) click to toggle source
# File lib/oembedder/base.rb, line 41
def get(url, params = {})
  provider = self.find_provider(url)
  provider.get(ConsumerRequest.new(url, params)) if provider
end