All Downloads are FREE. Search and download functionalities are using the official Maven repository.

flex.messaging.log.Target Maven / Gradle / Ivy

Go to download

BlazeDS is the server-based Java remoting and web messaging technology that enables developers to easily connect to back-end distributed data and push data in real-time to Adobe Flex and Adobe AIR applications for more responsive rich Internet application (RIA) experiences.

There is a newer version: 3.2.0.3978
Show newest version
/*************************************************************************
 * 
 * ADOBE CONFIDENTIAL
 * __________________
 * 
 *  [2002] - [2007] Adobe Systems Incorporated 
 *  All Rights Reserved.
 * 
 * NOTICE:  All information contained herein is, and remains
 * the property of Adobe Systems Incorporated and its suppliers,
 * if any.  The intellectual and technical concepts contained
 * herein are proprietary to Adobe Systems Incorporated
 * and its suppliers and may be covered by U.S. and Foreign Patents,
 * patents in process, and are protected by trade secret or copyright law.
 * Dissemination of this information or reproduction of this material
 * is strictly forbidden unless prior written permission is obtained
 * from Adobe Systems Incorporated.
 */
package flex.messaging.log;

import java.util.List;

import flex.messaging.config.ConfigMap;

/**
 * All logger target implementations within the logging framework must
 * implement this interface. Target implementations receive log events
 * and output information from these events to the appropriate output 
 * destination which may be a console, log file or some other custom
 * destination.
 */
public interface Target
{    
    /**
     * Initializes the target with id and properties.  
     * 
     * @param id id for the target. 
     * @param properties ConfigMap of properties for the target. 
     */    
    void initialize(String id, ConfigMap properties); 
    
    /**
     * Returns the category filters defined for the Target. 
     * 
     * @return The category filters defined for the Target.
     */
    List getFilters();

    /**
     * Sets the category filters that the Target will process
     * log events for.
     * 
     * @param value The category filters that the Target will process
     * log events for.
     */
    void setFilters(List value);
    
    /**
     * Adds the category filteer that the Target will process
     * log events for.
     * 
     * @param value The new category filter to add to the Target's list of filters.
     */
    void addFilter(String value);
    
    /**
     * Removes a category filter from the list of filters the Target will
     * process log events for.
     * 
     * @param value The category filter to remove from the Target's list of filters.
     */
    void removeFilter(String value);

    /**
     * Returns the log level that the Target will process log
     * events for. Log events at this level, or at a higher priority level
     * will be processed.
     * 
     * @return The log level that the Target will process log events for.
     */
    short getLevel();

    /**
     * Sets the log level that the Target will process log events
     * for. Log events at this level, or at a higher priority level will be
     * processed.
     * 
     * @param value The log level that the Target will process log events for.
     */
    void setLevel(short value);

    /**
     * Adds a Logger whose category matches the filters list for 
     * the Target. The Logger will dispatch log events
     * to this Target to be output.
     * 
     * @param logger The Logger to add.
     */
    void addLogger(Logger logger);

    /**
     * Removes a Logger from the Target.
     * 
     * @param logger The Logger to remove.
     */
    void removeLogger(Logger logger);

    /**
     * Logs a log event out to the Targets output destination,
     * which may be the console or a log file.
     * 
     * @param event The LogEvent containing the information to output.
     */
    void logEvent(LogEvent event);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy