module File_Checking

A module to facilitate frequently occuring checks on file-system objects

Public Class Methods

file_check(file, *messages) click to toggle source

Checks if the file with the name from the first parameter has the properties, listed in the second. The messages parameter is an array of one or all of :exist?, :readable?, :writable?, :directory? or their string-representations, respectively. Returns nil in case of success, otherwise an informative message, describing the first negative test-result.

# File lib/file_checking.rb, line 64
def self.file_check(file, *messages)
        msg = nil
        if(file && messages.respond_to?(:to_ary) && !messages.empty?)
                messages.each do |k|
                        if(! k.to_s.end_with?('?')) 
                                k = (k.to_s << '?').to_sym
                        end
                        @log.debug ('checking ' << k.to_s) if @log
                        if(msg == nil && File.respond_to?(k) && ! File.send(k, file.to_s))
                                msg = "#{file} #{@@text_messages[k.to_sym]}"
                        end
                end
        end
        msg
end

Public Instance Methods

check_file(file, *messages)
Alias for: file_check
file_check(file, *messages) click to toggle source

Checks if the file with the name from the first parameter has the properties, listed in the second. The messages parameter is an array of one or several of :exist?, :readable?, :writable?, :directory? or their string-representations, respectively. Returns nil in case of success, otherwise an informative message, describing the first negative test-result.

# File lib/file_checking.rb, line 52
def file_check(file, *messages)
        File_Checking.file_check(file, *messages)
end
Also aliased as: check_file