* README w/MIT
[sinatra.git] / lib / sinatra / options.rb
blobc35ebc97b8691b010767f0d4caa5e11398a64fff
1 require 'optparse'
3 module Sinatra
4   module Options
5     extend self
6     
7     attr_with_default :port, 4567
8     attr_with_default :environment, :development
10     def parse!(args)
11       OptionParser.new do |opts|
12         opts.on '-p port', '--port port', 'Set the port (default is 4567)' do |port|
13           @port = port
14         end
15         opts.on '-e environment', 'Set the environment (default if development)' do |env|
16           @environment = env
17         end
18         opts.on '-h', '--help', '-?', 'Show this message' do
19           puts opts
20           exit!
21         end
22       end.parse!(ARGV)
23     end
24     
25     def log_file
26       File.dirname($0) + ('/%s.log' % environment)
27     end
28   end
29 end