001package org.kuali.common.util.log4j;
002
003import org.apache.commons.lang3.ObjectUtils;
004import org.kuali.common.util.Assert;
005import org.kuali.common.util.CollectionUtils;
006import org.kuali.common.util.nullify.Nullifier;
007
008/**
009 * @deprecated
010 */
011@Deprecated
012public class Log4JContextNullifier implements Nullifier {
013
014        org.kuali.common.util.log4j.model.Log4JContext context;
015
016        public Log4JContextNullifier() {
017                this(null);
018        }
019
020        public Log4JContextNullifier(org.kuali.common.util.log4j.model.Log4JContext context) {
021                super();
022                this.context = context;
023        }
024
025        @Override
026        public void nullify() {
027
028                Assert.notNull(context);
029
030                nullify(context);
031                nullify(context.getRoot());
032                for (org.kuali.common.util.log4j.model.Logger logger : CollectionUtils.toEmptyList(context.getLoggers())) {
033                        nullify(logger);
034                }
035
036        }
037
038        protected void nullify(org.kuali.common.util.log4j.model.Log4JContext context) {
039                if (ObjectUtils.equals(org.kuali.common.util.log4j.model.Log4JContext.DEFAULT_RESET_VALUE, context.getReset())) {
040                        context.setReset(null);
041                }
042
043                if (ObjectUtils.equals(org.kuali.common.util.log4j.model.Log4JContext.DEFAULT_DEBUG_VALUE, context.getDebug())) {
044                        context.setDebug(null);
045                }
046
047                if (ObjectUtils.equals(org.kuali.common.util.log4j.model.Log4JContext.DEFAULT_THRESHOLD_VALUE, context.getThreshold())) {
048                        context.setThreshold(null);
049                }
050        }
051
052        protected void nullify(org.kuali.common.util.log4j.model.Logger logger) {
053                if (logger == null) {
054                        return;
055                }
056                if (ObjectUtils.equals(org.kuali.common.util.log4j.model.Logger.DEFAULT_ADDITIVITY_VALUE, logger.getAdditivity())) {
057                        logger.setAdditivity(null);
058                }
059                if (logger.getLevel() == null) {
060                        return;
061                }
062                if (ObjectUtils.equals(org.kuali.common.util.log4j.model.Level.DEFAULT_JAVA_CLASS, logger.getLevel().getJavaClass())) {
063                        logger.getLevel().setJavaClass(null);
064                }
065        }
066
067        public org.kuali.common.util.log4j.model.Log4JContext getContext() {
068                return context;
069        }
070
071        public void setContext(org.kuali.common.util.log4j.model.Log4JContext context) {
072                this.context = context;
073        }
074
075}