module Mongrel2::Config::DSL
See DSL.md for details on how to use this mixin.
Public Instance Methods
mimetype( extension, mimetype )
click to toggle source
Set up a mimetype mapping between files with the given extension
and mimetype
.
# File lib/mongrel2/config/dsl.rb, line 140 def mimetype( extension, mimetype ) Mongrel2::Config.init_database type = Mongrel2::Config::Mimetype.find_or_create( extension: extension ) type.mimetype = mimetype type.save return type end
mimetypes( hash )
click to toggle source
Set some mimetypes en masse.
# File lib/mongrel2/config/dsl.rb, line 152 def mimetypes( hash ) result = [] Mongrel2::Config.db.transaction do hash.each do |ext, mimetype| result << mimetype( ext, mimetype ) end end return result end
server( uuid, &block )
click to toggle source
Create a Mongrel2::Config::Server
with the specified uuid
, evaluate the block (if given) within its context, and return it.
# File lib/mongrel2/config/dsl.rb, line 85 def server( uuid, &block ) adapter = nil Mongrel2.log.info "Ensuring db is set up..." Mongrel2::Config.init_database Mongrel2.log.info "Entering transaction for server %p" % [ uuid ] Mongrel2::Config.db.transaction do Mongrel2.log.debug "Server [%s] (block: %p)" % [ uuid, block ] adapter = Adapter.new( Mongrel2::Config::Server, uuid: uuid ) do |server| server.access_log ||= "/logs/access.log" server.error_log ||= "/logs/error.log" server.pid_file ||= "/run/mongrel2.pid" server.default_host ||= "localhost" server.port ||= 8888 server.hosts.each( &:destroy ) server.filters.each( &:destroy ) server.xrequests.each( &:destroy ) end adapter.instance_eval( &block ) if block Mongrel2.log.info " saving server %p..." % [ uuid ] adapter.target.save end return adapter.target end
setting( key, val )
click to toggle source
Set the value of one of the 'Tweakable Expert Settings'
# File lib/mongrel2/config/dsl.rb, line 117 def setting( key, val ) Mongrel2::Config.init_database setting = Mongrel2::Config::Setting.find_or_create( key: key ) setting.value = val setting.save end
settings( hash )
click to toggle source
Set some 'Tweakable Expert Settings' en masse
# File lib/mongrel2/config/dsl.rb, line 126 def settings( hash ) result = [] Mongrel2::Config.db.transaction do hash.each do |key, val| result << setting( key, val ) end end return result end