View Javadoc

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *      http://www.apache.org/licenses/LICENSE-2.0
    10   *
    11   * Unless required by applicable law or agreed to in writing, software
    12   * distributed under the License is distributed on an "AS IS" BASIS,
    13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14   * See the License for the specific language governing permissions and
    15   * limitations under the License.
    16   */
    17
    18  package org.apache.log4j.varia;
    19
    20  import org.apache.log4j.AppenderSkeleton;
    21  import org.apache.log4j.spi.LoggingEvent;
    22
    23  /***
    24    * A NullAppender merely exists, it never outputs a message to any
    25    * device.
    26    * @author Ceki G&uuml;lc&uml;
    27    */
    28  public class NullAppender extends AppenderSkeleton {
    29
    30    private static NullAppender instance = new NullAppender();
    31
    32    public NullAppender() {
    33    }
    34
    35    /***
    36     * There are no options to acticate.
    37     * */
    38    public void activateOptions() {
    39    }
    40
    41    /***
    42     * Whenever you can, use this method to retreive an instance instead
    43     * of instantiating a new one with <code>new</code>.
    44     * */
    45    public NullAppender getInstance() {
    46      return instance;
    47    }
    48
    49    public void close() {
    50    }
    51
    52    /***
    53     * Does not do anything.
    54     * */
    55    public void doAppend(LoggingEvent event) {
    56    }
    57
    58    /***
    59     * Does not do anything.
    60     * */
    61    protected void append(LoggingEvent event) {
    62    }
    63
    64    /***
    65      * NullAppenders do not need a layout.
    66      * */
    67    public boolean requiresLayout() {
    68      return false;
    69    }
    70  }