class Rabbit::Theme::GemEntry
Public Class Methods
new(logger, name)
click to toggle source
Calls superclass method
Rabbit::Theme::Entry::new
# File lib/rabbit/theme/entry.rb, line 158 def initialize(logger, name) @spec = nil if valid_gem_name?(name) finder = GemFinder.new(logger) begin @spec = finder.find(name, "#{ThemeConfiguration::GEM_NAME_PREFIX}-") rescue Gem::GemNotFoundException end end theme_dir = nil theme_dir = @spec.gem_dir if @spec super(logger, theme_dir, name) end
Public Instance Methods
available?()
click to toggle source
Calls superclass method
Rabbit::Theme::Entry#available?
# File lib/rabbit/theme/entry.rb, line 172 def available? @theme_dir and super end
files()
click to toggle source
# File lib/rabbit/theme/entry.rb, line 184 def files Dir.glob(File.join(data_dir, "*")).sort end
full_path(target)
click to toggle source
# File lib/rabbit/theme/entry.rb, line 180 def full_path(target) File.join(data_dir, target) end
theme_file()
click to toggle source
# File lib/rabbit/theme/entry.rb, line 176 def theme_file File.join(@theme_dir, "#{THEME_BASE_NAME}.rb") end
Private Instance Methods
valid_gem_name?(name)
click to toggle source
# File lib/rabbit/theme/entry.rb, line 189 def valid_gem_name?(name) /\A[a-z\d_\-]+\z/i =~ name end