The version of Apache log4j used by SoundHelix.

[[ 🗃 ^aEp6o apache-log4j ]] :: [📥 Inbox] [📤 Outbox] [🐤 Followers] [🤝 Collaborators] [🛠 Commits]

Clone

HTTPS: git clone https://vervis.peers.community/repos/aEp6o

SSH: git clone USERNAME@vervis.peers.community:aEp6o

Branches

Tags

PRE_UGLI_MOVE :: src / java / org / apache / log4j / config /

ConfigWatchdog.java

/*
 * Copyright (C) The Apache Software Foundation. All rights reserved.
 *
 * This software is published under the terms of the Apache Software
 * License version 1.1, a copy of which has been included with this
 * distribution in the LICENSE.txt file.  */

package org.apache.log4j.config;

import org.apache.log4j.spi.LoggerRepository;

/**
  Defines the basic interface that all ConfigWatchdogs must support.
  
  <p>ConfigWatchdogs "watch" a log4j configuration source, and when
  new, changed configuration data is available, the watchdog will
  initiate a reconfiguration of the log4j settings using the new
  configuration data.
    
  <p>All watchdogs can have a name and configurator class.
  The configurator class will be used when reconfiguring using the 
  new data.  All watchdogs can be started and stopped.
  
  <p>Several different ConfigWatchdog classes are available in the
  org.apache.log4j.config package, such as FileWatchdog (watches a
  configuration file), HttpWatchdog (watches a configuration file 
  at a url location), and SocketWatchdog (watches a socket for 
  incoming configuration data).
  
  <p>If these are not sufficient, developers are encouraged
  to implement specific versions of ConfigWatchdogs for their 
  particular needs. This can be done by subclassing the WatchdogBase
  or URLWatchdogBase abstract classes, or to write their own class
  that implements the ConfigWatchdog interface.  Please see the
  above mentioned classes for more information.  

  @author Mark Womack
  
  @since 1.3
*/
public interface ConfigWatchdog {
  
  /**
    Returns true if this watchdog is currently running. */
  public boolean isRunning();
  
  /**
     Set the name of this watchdog. The name is used by other
     components to identify this watchdog. */
  public void setName(String name);

  /**
     Get the name of this watchdog. The name uniquely identifies 
     the watchdog.  */
  public String getName();

  /**
    Sets the configurator class name used for reconfiguration. */
  public void setConfiguratorClassName(String className);
  
  /**
    Gets the configurator class name used for reconfiguration. */
  public String getConfiguratorClassName();

  /**
    Sets the configurator class used for reconfiguration. */
  public void setConfiguratorClass(Class clazz);
  
  /**
    Gets the configurator class used for reconfiguration. */
  public Class getConfiguratorClass();

  /**
    Set the logger repository this watchdog will reconfigure
    when new configuration data is detected.  If not set,
    should default to the return value of 
    LogManager.getLoggerRepository(). */
  public void setLoggerRepository(LoggerRepository repository);
  
  /**
    Get the logger repository this watchdog will reconfigure
    when new configuration data is detected.  Default is the
    return value of LogManager.getLoggerRepository(). */
  public LoggerRepository getLoggerRepository();
  
  /**
    Starts this watchdog watching. After calling this method the
    watchdog will be active. */
  public void startWatching();
  
  /**
    Stops this watchdog. After calling this method the
    watchdog will become inactive, but it is not guaranteed
    to be immediately inactive. If threads are involved in the 
    implementation, it may take time for them to be interupted and
    exited. */
  public void stopWatching();
}

[See repo JSON]