class Mongrel2::Config::Directory

Mongrel2 Directory (Dir) configuration class

Public Instance Methods

to_s() click to toggle source

Return a description of the directory.

# File lib/mongrel2/config/directory.rb, line 26
def to_s
        return "Directory %s(%s) {%s} [cache %ds]" % [
                self.base,
                self.index_file,
                self.default_ctype,
                self.cache_ttl
        ]
end
validate() click to toggle source

Sequel validation callback: add errors if the record is invalid.

# File lib/mongrel2/config/directory.rb, line 17
def validate
        self.validate_base
        self.validate_index_file
        self.validate_default_ctype
        self.validate_cache_ttl
end

Protected Instance Methods

validate_base() click to toggle source

Validate the 'base' directory which will be served.

# File lib/mongrel2/config/directory.rb, line 41
def validate_base
        if self.base
                if self.base.start_with?( '/' )
                        errmsg = "[%p]: shouldn't start with '/'; that will fail when not in chroot." %
                                [ self.base ]
                        self.log.error( 'base ' + errmsg )
                        self.errors.add( :base, errmsg )
                end

                unless self.base.end_with?( '/' )
                        errmsg = "[%p]: must end with '/' or it won't work right." %
                                [ self.base ]
                        self.log.error( 'base ' + errmsg )
                        self.errors.add( :base, errmsg )
                end
        else
                errmsg = "missing or nil"
                self.log.error( 'base ' + errmsg )
                self.errors.add( :base, errmsg )
        end
end
validate_cache_ttl() click to toggle source

Validate the cache TTL if one is set.

# File lib/mongrel2/config/directory.rb, line 77
def validate_cache_ttl
        if self.cache_ttl && Integer( self.cache_ttl ) < 0
                errmsg = "[%p]: not a positive Integer" % [ self.cache_ttl ]
                self.log.error( 'cache_ttl' + errmsg )
                self.errors.add( :cache_ttl, errmsg )
        end
end
validate_default_ctype() click to toggle source

Validate the index file attribute.

# File lib/mongrel2/config/directory.rb, line 71
def validate_default_ctype
        self.validates_presence( :default_ctype, :message => "must not be nil" )
end
validate_index_file() click to toggle source

Validate the 'index_file' attribute.

# File lib/mongrel2/config/directory.rb, line 65
def validate_index_file
        self.validates_presence( :index_file, :message => "must not be nil" )
end