Module: FormattedURL

Defined in:
lib/formatted_url.rb,
lib/formatted_url/version.rb,
lib/formatted_url/strategies.rb,
lib/formatted_url/url_source_resolver.rb,
lib/formatted_url/strategies/default_url_strategy.rb,
lib/formatted_url/strategies/youtube_url_strategy.rb

Overview

FormattedURL provides an easy way to catch URL in differents formats Working with Youtube URLs, you can get the short, embed and default format

Defined Under Namespace

Modules: Strategies Classes: URLSourceResolver

Constant Summary collapse

VERSION =
"0.0.6".freeze
STRATEGIES =

Setting the strategies TODO: Configurable strategies

{
              :youtube => Strategies::YoutubeURLStrategy,
              :default => Strategies::DefaultURLStrategy
}

Class Method Summary collapse

Class Method Details

.strategy(source) ⇒ Object

Returns strategy based on source which is a Symbol

Example:

FormattedURL.strategy(:youtube)
=> Strategies::YoutubeURLStrategy


18
19
20
# File 'lib/formatted_url/strategies.rb', line 18

def self.strategy(source)
  STRATEGIES[source]
end

.url(path, format = :default) ⇒ Object

Format url acording to it’s source

Examples:

FormattedURL.url("http://www.youtube.com/watch?v=RchTlF4aKGs", :embed)
=> "http://youtube.com/embed/RchTlF4aKGs"


14
15
16
# File 'lib/formatted_url.rb', line 14

def self.url(path, format = :default)
  URLSourceResolver.new(path, format).url
end