jQuery.logger = new function() {

    this.logger = new function() {
        this.log = this.warn = this.error = function() {}
    }
    
    this.set = function(logger) {
        this.logger = logger
    }
    
    this.log = function(message) {
        this.logger.log(this.toMessage(message))
    }
    
    this.warn = function(message) {
        this.logger.warn(this.toMessage(message))
    }
    
    this.error = function(message) {
        this.logger.error(this.toMessage(message))
    }
    
    this.toMessage = function(value) {
        return (value instanceof Error) ? value.message : value
    }
}