1 | /*
|
---|
2 | * Copyright 2000-2002,2004 The Apache Software Foundation
|
---|
3 | *
|
---|
4 | * Licensed under the Apache License, Version 2.0 (the "License");
|
---|
5 | * you may not use this file except in compliance with the License.
|
---|
6 | * You may obtain a copy of the License at
|
---|
7 | *
|
---|
8 | * http://www.apache.org/licenses/LICENSE-2.0
|
---|
9 | *
|
---|
10 | * Unless required by applicable law or agreed to in writing, software
|
---|
11 | * distributed under the License is distributed on an "AS IS" BASIS,
|
---|
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
---|
13 | * See the License for the specific language governing permissions and
|
---|
14 | * limitations under the License.
|
---|
15 | *
|
---|
16 | */
|
---|
17 |
|
---|
18 | package org.apache.tools.ant;
|
---|
19 |
|
---|
20 | import java.io.PrintStream;
|
---|
21 |
|
---|
22 | /**
|
---|
23 | * Interface used by Ant to log the build output.
|
---|
24 | *
|
---|
25 | * A build logger is a build listener which has the 'right' to send output to
|
---|
26 | * the ant log, which is usually <code>System.out</code> unless redirected by
|
---|
27 | * the <code>-logfile</code> option.
|
---|
28 | *
|
---|
29 | */
|
---|
30 | public interface BuildLogger extends BuildListener {
|
---|
31 |
|
---|
32 | /**
|
---|
33 | * Sets the highest level of message this logger should respond to.
|
---|
34 | *
|
---|
35 | * Only messages with a message level lower than or equal to the
|
---|
36 | * given level should be written to the log.
|
---|
37 | * <P>
|
---|
38 | * Constants for the message levels are in the
|
---|
39 | * {@link Project Project} class. The order of the levels, from least
|
---|
40 | * to most verbose, is <code>MSG_ERR</code>, <code>MSG_WARN</code>,
|
---|
41 | * <code>MSG_INFO</code>, <code>MSG_VERBOSE</code>,
|
---|
42 | * <code>MSG_DEBUG</code>.
|
---|
43 | *
|
---|
44 | * @param level the logging level for the logger.
|
---|
45 | */
|
---|
46 | void setMessageOutputLevel(int level);
|
---|
47 |
|
---|
48 | /**
|
---|
49 | * Sets the output stream to which this logger is to send its output.
|
---|
50 | *
|
---|
51 | * @param output The output stream for the logger.
|
---|
52 | * Must not be <code>null</code>.
|
---|
53 | */
|
---|
54 | void setOutputPrintStream(PrintStream output);
|
---|
55 |
|
---|
56 | /**
|
---|
57 | * Sets this logger to produce emacs (and other editor) friendly output.
|
---|
58 | *
|
---|
59 | * @param emacsMode <code>true</code> if output is to be unadorned so that
|
---|
60 | * emacs and other editors can parse files names, etc.
|
---|
61 | */
|
---|
62 | void setEmacsMode(boolean emacsMode);
|
---|
63 |
|
---|
64 | /**
|
---|
65 | * Sets the output stream to which this logger is to send error messages.
|
---|
66 | *
|
---|
67 | * @param err The error stream for the logger.
|
---|
68 | * Must not be <code>null</code>.
|
---|
69 | */
|
---|
70 | void setErrorPrintStream(PrintStream err);
|
---|
71 | }
|
---|