001/*
002 * Licensed to the Apache Software Foundation (ASF) under one or more
003 * contributor license agreements.  See the NOTICE file distributed with
004 * this work for additional information regarding copyright ownership.
005 * The ASF licenses this file to You under the Apache License, Version 2.0
006 * (the "License"); you may not use this file except in compliance with
007 * the License.  You may obtain a copy of the License at
008 *
009 *     http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 */
017package org.apache.commons.configuration.tree;
018
019/**
020 * <p>
021 * A simple adapter class that simplifies writing custom node visitor
022 * implementations.
023 * </p>
024 * <p>
025 * This class provides dummy implementations for the methods defined in the
026 * {@code ConfigurationNodeVisitor} interface. Derived classes only need
027 * to override the methods they really need.
028 * </p>
029 *
030 * @author <a
031 * href="http://commons.apache.org/configuration/team-list.html">Commons
032 * Configuration team</a>
033 * @version $Id: ConfigurationNodeVisitorAdapter.java 1206464 2011-11-26 15:49:10Z oheger $
034 */
035public class ConfigurationNodeVisitorAdapter implements
036        ConfigurationNodeVisitor
037{
038    /**
039     * Empty dummy implementation of this interface method.
040     *
041     * @param node the node
042     */
043    public void visitBeforeChildren(ConfigurationNode node)
044    {
045    }
046
047    /**
048     * Empty dummy implementation of this interface method.
049     *
050     * @param node the node
051     */
052    public void visitAfterChildren(ConfigurationNode node)
053    {
054    }
055
056    /**
057     * Dummy implementation of this interface method. Returns always <b>false</b>.
058     *
059     * @return the terminate flag
060     */
061    public boolean terminate()
062    {
063        return false;
064    }
065}