class Nutrella::Command
This is the top-level class for the gem.
Attributes
cache_filename[R]
configuration_filename[R]
Public Class Methods
new(configuration_directory, board_name)
click to toggle source
# File lib/nutrella/command.rb, line 10 def initialize(configuration_directory, board_name) @board_name = board_name @cache_filename = File.join(configuration_directory, ".nutrella.cache.yml") @configuration_filename = File.join(configuration_directory, ".nutrella.yml") end
Public Instance Methods
run()
click to toggle source
# File lib/nutrella/command.rb, line 16 def run launch(board_url) ensure logger.close end
Private Instance Methods
board_name_resolver()
click to toggle source
# File lib/nutrella/command.rb, line 68 def board_name_resolver Nutrella::BoardNameResolver.new(url_cache, configuration_values.fetch(:cache_first, "")) end
board_url()
click to toggle source
# File lib/nutrella/command.rb, line 32 def board_url url = enable_trello_app? ? trello_url(cached_url) : cached_url logger.info { "Board URL: '#{url}'" } url end
cache_capacity()
click to toggle source
# File lib/nutrella/command.rb, line 40 def cache_capacity @_cache_capacity ||= configuration_values.fetch(:cache_capacity) end
cached_url()
click to toggle source
# File lib/nutrella/command.rb, line 44 def cached_url @_cached_url ||= board_name_resolver.resolve(@board_name) { task_board.lookup_or_create(@board_name).url } end
configuration_values()
click to toggle source
# File lib/nutrella/command.rb, line 48 def configuration_values @_configuration_values ||= Nutrella::Configuration.values(configuration_filename) end
enable_trello_app?()
click to toggle source
# File lib/nutrella/command.rb, line 52 def enable_trello_app? configuration_values.fetch(:enable_trello_app) end
launch(url)
click to toggle source
# File lib/nutrella/command.rb, line 24 def launch(url) launch_command = configuration_values.fetch(:launch_command).gsub("$url$", url) logger.info { "Launch command: '#{launch_command}'" } system(launch_command) end
log_filename()
click to toggle source
# File lib/nutrella/command.rb, line 60 def log_filename configuration_values.fetch(:enable_logging) ? "nutrella.log" : "/dev/null" end
logger()
click to toggle source
# File lib/nutrella/command.rb, line 56 def logger @_logger ||= Logger.new(log_filename) end
task_board()
click to toggle source
# File lib/nutrella/command.rb, line 72 def task_board Nutrella::TaskBoard.new(configuration_values) end
trello_url(http_url)
click to toggle source
# File lib/nutrella/command.rb, line 64 def trello_url(http_url) http_url.gsub(/^http.?:/, "trello:") end
url_cache()
click to toggle source
# File lib/nutrella/command.rb, line 76 def url_cache Nutrella::Cache.new(cache_filename, cache_capacity) end