class SocialSnippet::Repository::Drivers::DriverBase

Repository base class usage: class GitDriver < DriverBase

Attributes

url[R]

Public Class Methods

is_local_path?(s) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 88
def is_local_path?(s)
  not /^[^:]*:\/\// === s
end
is_url?(s) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 92
def is_url?(s)
  ::URI.regexp === s
end
new(new_url) click to toggle source

@example driver = Driver.new(url, ref) driver.fetch driver.cache # => save data into storage

# File lib/social_snippet/repository/drivers/driver_base.rb, line 13
def initialize(new_url)
  @url  = new_url
end
target?(url) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 72
def target?(url)
  if is_local_path?(url)
    target_local_path?(url)
  elsif is_url?(url)
    target_url?(url)
  end
end
target_path?(path) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 84
def target_path?(path)
  raise "not implemented"
end
target_url?(url) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 80
def target_url?(url)
  raise "not implemented"
end

Public Instance Methods

current_ref() click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 54
def current_ref
  raise "not implemented"
end
each_directory(ref) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 62
def each_directory(ref)
  raise "not implemented"
end
each_file(ref) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 66
def each_file(ref)
  raise "not implemented"
end
each_ref(&block) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 34
def each_ref(&block)
  refs.each &block
end
fetch() click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 58
def fetch
  raise "not implemented"
end
has_versions?() click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 38
def has_versions?
  not versions.empty?
end
latest_version(pattern = "") click to toggle source

Returns latest version

@param pattern [String] The pattern of version @return [String] The version

# File lib/social_snippet/repository/drivers/driver_base.rb, line 21
def latest_version(pattern = "")
  pattern = "" if pattern.nil?
  matched_versions = versions.select {|ref| ::SocialSnippet::Version.is_matched_version_pattern(pattern, ref)}
  ::VersionSorter.rsort(matched_versions).first
end
refs() click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 42
def refs
  raise "not implemented"
end
rev_hash(ref) click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 50
def rev_hash(ref)
  raise "not implemented"
end
snippet_json() click to toggle source
# File lib/social_snippet/repository/drivers/driver_base.rb, line 46
def snippet_json
  raise "not implemented"
end
versions() click to toggle source

Returns all versions

@return [Array<String>] All versions of repository

# File lib/social_snippet/repository/drivers/driver_base.rb, line 30
def versions
  refs.select {|ref| ::SocialSnippet::Version.is_version(ref) }
end