class Slideoff::Server

Constants

DEFAULT_ADDRESS
DEFAULT_PORT

Attributes

dir[R]
host[R]
options[R]
port[R]
remote_key[R]

Public Class Methods

new(options) click to toggle source
# File lib/slideoff/server.rb, line 11
def initialize(options)
  @dir = Dir.pwd
  @options = options
  @remote_key = @options.delete(:remote_key) || rand(1_000_000).to_s(16)
  @host = @options.delete(:host) || DEFAULT_ADDRESS
  @port = @options.delete(:port) || DEFAULT_PORT
end

Public Instance Methods

presentation() click to toggle source
# File lib/slideoff/server.rb, line 28
def presentation
  Slideoff::Presentation.new(dir)
end
start() click to toggle source
# File lib/slideoff/server.rb, line 19
def start
  server = Goliath::Server.new(host, port)
  server.options = options
  server.app = Slideoff::Routes.run(presentation, :remote_key => remote_key)
  server.logger = logger

  server.start
end

Private Instance Methods

log_formatter() click to toggle source
# File lib/slideoff/server.rb, line 46
def log_formatter
  Log4r::PatternFormatter.new(:pattern => "[%p:%l] %d %m")
end
logger() click to toggle source
# File lib/slideoff/server.rb, line 34
def logger
  logger = Log4r::Logger.new(self.class.name)
  logger.add(stdout_outputter)
  logger.level = Log4r::DEBUG
  logger.info("Starting server on http://#{host}:#{port}. Rock your presentation!")
  logger
end
stdout_outputter() click to toggle source
# File lib/slideoff/server.rb, line 42
def stdout_outputter
  Log4r::StdoutOutputter.new('console', :formatter => log_formatter)
end