/*
 * LoggerDecorateur.java
 *
 * Created on 10 mars 2003, 19:32
 */

package com.developpez.decorateur;

/**
 *
 * @author  smeric
 */
public class LoggerDecorateur implements Logger {
    
    /**
     * Pas de constructeur par défaut, il faudra appeler celui-ci.
     * Ce constructeur prend en paramètre un autre logger pour enrichir ces possibilités
     * et refuse (voir le muttateur) un logger null.
     */
    public LoggerDecorateur(Logger logger) {
        setLogger(logger);
    }
    
    /**
     * Log le message.
     */
    public void log(String msg) {
        getLogger().log(msg);
    }
    
    private void setLogger(Logger value) {
        assert null != value : "Impossible de décorer un logger null";
        logger = value;
    }
    
    private Logger logger;
}
