| /* |
| * 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 org.apache.tools.ant; |
| |
| import java.io.PrintStream; |
| |
| /** |
| * Interface used by Ant to log the build output. |
| * |
| * A build logger is a build listener which has the 'right' to send output to |
| * the ant log, which is usually <code>System.out</code> unless redirected by |
| * the <code>-logfile</code> option. |
| * |
| */ |
| public interface BuildLogger extends BuildListener { |
| |
| /** |
| * Sets the highest level of message this logger should respond to. |
| * |
| * Only messages with a message level lower than or equal to the |
| * given level should be written to the log. |
| * <P> |
| * Constants for the message levels are in the |
| * {@link Project Project} class. The order of the levels, from least |
| * to most verbose, is <code>MSG_ERR</code>, <code>MSG_WARN</code>, |
| * <code>MSG_INFO</code>, <code>MSG_VERBOSE</code>, |
| * <code>MSG_DEBUG</code>. |
| * |
| * @param level the logging level for the logger. |
| */ |
| void setMessageOutputLevel(int level); |
| |
| /** |
| * Sets the output stream to which this logger is to send its output. |
| * |
| * @param output The output stream for the logger. |
| * Must not be <code>null</code>. |
| */ |
| void setOutputPrintStream(PrintStream output); |
| |
| /** |
| * Sets this logger to produce emacs (and other editor) friendly output. |
| * |
| * @param emacsMode <code>true</code> if output is to be unadorned so that |
| * emacs and other editors can parse files names, etc. |
| */ |
| void setEmacsMode(boolean emacsMode); |
| |
| /** |
| * Sets the output stream to which this logger is to send error messages. |
| * |
| * @param err The error stream for the logger. |
| * Must not be <code>null</code>. |
| */ |
| void setErrorPrintStream(PrintStream err); |
| } |