////////////////////////////////////////////////////////////////////////////////
//
// Licensed to the Apache Software Foundation (ASF) under one or more
// contributor license agreements. See the NOTICE file distributed with
// this work for additional information regarding copyright ownership.
// The ASF licenses this file to You under the Apache License, Version 2.0
// (the "License"); you may not use this file except in compliance with
// the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
////////////////////////////////////////////////////////////////////////////////
package mx.logging
{
/**
* All logger target implementations within the logging framework
* must implement this interface.
*
* @langversion 3.0
* @playerversion Flash 9
* @playerversion AIR 1.1
* @productversion Flex 3
*/
public interface ILoggingTarget
{
//--------------------------------------------------------------------------
//
// Properties
//
//--------------------------------------------------------------------------
//----------------------------------
// filters
//----------------------------------
/**
* In addition to the level
setting, filters are used to
* provide a psuedo-hierarchical mapping for processing only those events
* for a given category.
*
*
Each logger belongs to a category.
* By convention these categories map to the fully qualified class name
* in which the logger is used.
* For example, a logger that is logging messages for the
* mx.rpc.soap.WebService
class would use
* "mx.rpc.soap.WebService"
as the parameter
* to the Log.getLogger()
call.
* When messages are sent under this category only those targets that have
* a filter which matches that category will receive notification of those
* events.
* Filter expressions may include a wildcard match, indicated with an
* asterisk.
* The wildcard must be the right most character in the expression.
* For example: rpc~~, mx.~~, or ~~.
* If an invalid expression is specified a InvalidFilterError
* will be thrown.
* No spaces or any of the following characters are valid within a filter
* expression: []~$^&\/(){}<>+=`!#%?,:;'"@.
* var traceLogger:ILoggingTarget = new TraceTarget(); * traceLogger.filters = [ "mx.rpc.~~", "mx.messaging.~~" ]; * Log.addTarget(traceLogger); ** * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ function get filters():Array; /** * @private */ function set filters(value:Array):void; //---------------------------------- // level //---------------------------------- /** * Provides access to the level this target is currently set at. * Value values are: *
LogEventLevel.FATAL
designates events that are very
* harmful and will eventually lead to application failureLogEventLevel.ERROR
designates error events that might
* still allow the application to continue running.LogEventLevel.WARN
designates events that could be
* harmful to the application operationLogEventLevel.INFO
designates informational messages
* that highlight the progress of the application at
* coarse-grained level.LogEventLevel.DEBUG
designates informational
* level messages that are fine grained and most helpful when
* debugging an application.LogEventLevel.ALL
intended to force a target to
* process all messages.Note: This method is called by the framework * and should not be called by you directly.
* * @param logger The ILogger that this target listens to. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ function addLogger(logger:ILogger):void; /** * Stops this target from receiving events from the specified logger. * *Note: This method is called by the framework * and should not be called by you directly.
* * @param logger The ILogger that this target ignores. * * @langversion 3.0 * @playerversion Flash 9 * @playerversion AIR 1.1 * @productversion Flex 3 */ function removeLogger(logger:ILogger):void; } }