| /* |
| * $Header: /cvshome/build/org.osgi.service.log/src/org/osgi/service/log/LogService.java,v 1.9 2006/06/16 16:31:49 hargrave Exp $ |
| * |
| * Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved. |
| * |
| * Licensed 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 org.osgi.service.log; |
| |
| import org.osgi.framework.ServiceReference; |
| |
| /** |
| * Provides methods for bundles to write messages to the log. |
| * |
| * <p> |
| * <code>LogService</code> methods are provided to log messages; optionally with a |
| * <code>ServiceReference</code> object or an exception. |
| * |
| * <p> |
| * Bundles must log messages in the OSGi environment with a severity level |
| * according to the following hierarchy: |
| * <ol> |
| * <li>{@link #LOG_ERROR} |
| * <li>{@link #LOG_WARNING} |
| * <li>{@link #LOG_INFO} |
| * <li>{@link #LOG_DEBUG} |
| * </ol> |
| * |
| * @version $Revision: 1.9 $ |
| */ |
| public interface LogService { |
| /** |
| * An error message (Value 1). |
| * |
| * <p> |
| * This log entry indicates the bundle or service may not be functional. |
| */ |
| public static final int LOG_ERROR = 1; |
| /** |
| * A warning message (Value 2). |
| * |
| * <p> |
| * This log entry indicates a bundle or service is still functioning but may |
| * experience problems in the future because of the warning condition. |
| */ |
| public static final int LOG_WARNING = 2; |
| /** |
| * An informational message (Value 3). |
| * |
| * <p> |
| * This log entry may be the result of any change in the bundle or service |
| * and does not indicate a problem. |
| */ |
| public static final int LOG_INFO = 3; |
| /** |
| * A debugging message (Value 4). |
| * |
| * <p> |
| * This log entry is used for problem determination and may be irrelevant to |
| * anyone but the bundle developer. |
| */ |
| public static final int LOG_DEBUG = 4; |
| |
| /** |
| * Logs a message. |
| * |
| * <p> |
| * The <code>ServiceReference</code> field and the <code>Throwable</code> field |
| * of the <code>LogEntry</code> object will be set to <code>null</code>. |
| * |
| * @param level The severity of the message. This should be one of the |
| * defined log levels but may be any integer that is interpreted in a |
| * user defined way. |
| * @param message Human readable string describing the condition or |
| * <code>null</code>. |
| * @see #LOG_ERROR |
| * @see #LOG_WARNING |
| * @see #LOG_INFO |
| * @see #LOG_DEBUG |
| */ |
| public void log(int level, String message); |
| |
| /** |
| * Logs a message with an exception. |
| * |
| * <p> |
| * The <code>ServiceReference</code> field of the <code>LogEntry</code> object |
| * will be set to <code>null</code>. |
| * |
| * @param level The severity of the message. This should be one of the |
| * defined log levels but may be any integer that is interpreted in a |
| * user defined way. |
| * @param message The human readable string describing the condition or |
| * <code>null</code>. |
| * @param exception The exception that reflects the condition or |
| * <code>null</code>. |
| * @see #LOG_ERROR |
| * @see #LOG_WARNING |
| * @see #LOG_INFO |
| * @see #LOG_DEBUG |
| */ |
| public void log(int level, String message, Throwable exception); |
| |
| /** |
| * Logs a message associated with a specific <code>ServiceReference</code> |
| * object. |
| * |
| * <p> |
| * The <code>Throwable</code> field of the <code>LogEntry</code> will be set to |
| * <code>null</code>. |
| * |
| * @param sr The <code>ServiceReference</code> object of the service that this |
| * message is associated with or <code>null</code>. |
| * @param level The severity of the message. This should be one of the |
| * defined log levels but may be any integer that is interpreted in a |
| * user defined way. |
| * @param message Human readable string describing the condition or |
| * <code>null</code>. |
| * @see #LOG_ERROR |
| * @see #LOG_WARNING |
| * @see #LOG_INFO |
| * @see #LOG_DEBUG |
| */ |
| public void log(ServiceReference sr, int level, String message); |
| |
| /** |
| * Logs a message with an exception associated and a |
| * <code>ServiceReference</code> object. |
| * |
| * @param sr The <code>ServiceReference</code> object of the service that this |
| * message is associated with. |
| * @param level The severity of the message. This should be one of the |
| * defined log levels but may be any integer that is interpreted in a |
| * user defined way. |
| * @param message Human readable string describing the condition or |
| * <code>null</code>. |
| * @param exception The exception that reflects the condition or |
| * <code>null</code>. |
| * @see #LOG_ERROR |
| * @see #LOG_WARNING |
| * @see #LOG_INFO |
| * @see #LOG_DEBUG |
| */ |
| public void log(ServiceReference sr, int level, String message, |
| Throwable exception); |
| } |