diff --git a/src/main/org/apache/tools/ant/DefaultLogger.java b/src/main/org/apache/tools/ant/DefaultLogger.java index af503ea215..6c3cef6fc0 100644 --- a/src/main/org/apache/tools/ant/DefaultLogger.java +++ b/src/main/org/apache/tools/ant/DefaultLogger.java @@ -36,7 +36,7 @@ * any messages that get logged. * */ -public class DefaultLogger implements BuildLogger { +public class DefaultLogger implements BuildLogger, Logger { /** * Size of left-hand column for right-justified task name. * @see #messageLogged(BuildEvent) @@ -326,7 +326,7 @@ protected void printMessage(final String message, * * @param message Message being logged. Should not be null. */ - protected void log(String message) { + public void log(String message) { } /** diff --git a/src/main/org/apache/tools/ant/Logger.java b/src/main/org/apache/tools/ant/Logger.java new file mode 100644 index 0000000000..3fcab4ab39 --- /dev/null +++ b/src/main/org/apache/tools/ant/Logger.java @@ -0,0 +1,30 @@ +/* + * 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 + * + * https://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; + +/** + * A generic logger interface. + */ +public interface Logger { + /** + * Log a message. + * + * @param message String to be logged + */ + void log(String message); +} diff --git a/src/main/org/apache/tools/ant/Project.java b/src/main/org/apache/tools/ant/Project.java index 5b20ca0c2c..2c2956a72e 100644 --- a/src/main/org/apache/tools/ant/Project.java +++ b/src/main/org/apache/tools/ant/Project.java @@ -62,7 +62,7 @@ * file paths at runtime. * */ -public class Project implements ResourceFactory { +public class Project implements ResourceFactory, Logger { /** Message priority of "error". */ public static final int MSG_ERR = 0; /** Message priority of "warning". */ diff --git a/src/main/org/apache/tools/ant/ProjectComponent.java b/src/main/org/apache/tools/ant/ProjectComponent.java index 8b5f5a7dc7..7f4216148e 100644 --- a/src/main/org/apache/tools/ant/ProjectComponent.java +++ b/src/main/org/apache/tools/ant/ProjectComponent.java @@ -22,7 +22,7 @@ * Provides common facilities. * */ -public abstract class ProjectComponent implements Cloneable { +public abstract class ProjectComponent implements Cloneable, Logger { // CheckStyle:VisibilityModifier OFF - bc /** diff --git a/src/main/org/apache/tools/ant/Task.java b/src/main/org/apache/tools/ant/Task.java index ed22c0a342..a92110c059 100644 --- a/src/main/org/apache/tools/ant/Task.java +++ b/src/main/org/apache/tools/ant/Task.java @@ -270,15 +270,6 @@ protected void handleErrorFlush(String output) { handleErrorOutput(output); } - /** - * Logs a message with the default (INFO) priority. - * - * @param msg The message to be logged. Should not be null. - */ - public void log(String msg) { - log(msg, Project.MSG_INFO); - } - /** * Logs a message with the given priority. This delegates * the actual logging to the project. @@ -287,6 +278,7 @@ public void log(String msg) { * @param msgLevel The message priority at which this message is to * be logged. */ + @Override public void log(String msg, int msgLevel) { if (getProject() == null) { super.log(msg, msgLevel); diff --git a/src/main/org/apache/tools/ant/listener/MailLogger.java b/src/main/org/apache/tools/ant/listener/MailLogger.java index de9cda0c6c..19644c2437 100644 --- a/src/main/org/apache/tools/ant/listener/MailLogger.java +++ b/src/main/org/apache/tools/ant/listener/MailLogger.java @@ -307,7 +307,7 @@ public Values starttls(boolean starttls) { * @param message the message being logger */ @Override - protected void log(String message) { + public void log(String message) { buffer.append(message).append(System.lineSeparator()); } diff --git a/src/main/org/apache/tools/ant/taskdefs/XSLTLogger.java b/src/main/org/apache/tools/ant/taskdefs/XSLTLogger.java index 411160dffb..5cd804ff30 100644 --- a/src/main/org/apache/tools/ant/taskdefs/XSLTLogger.java +++ b/src/main/org/apache/tools/ant/taskdefs/XSLTLogger.java @@ -21,7 +21,9 @@ /** * Interface to log messages for XSLT * @since Ant 1.5 + * @deprecated replaced by Logger */ +@Deprecated public interface XSLTLogger { /** * Log a message. diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java b/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java index 1be941ce79..d4867dec4a 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/TraXLiaison.java @@ -50,6 +50,7 @@ import javax.xml.transform.stream.StreamSource; import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Logger; import org.apache.tools.ant.Project; import org.apache.tools.ant.taskdefs.XSLTLiaison4; import org.apache.tools.ant.taskdefs.XSLTLogger; @@ -100,7 +101,7 @@ public class TraXLiaison implements XSLTLiaison4, ErrorListener, XSLTLoggerAware /** stylesheet to use for transformation */ private Resource stylesheet; - private XSLTLogger logger; + private Logger logger; /** possible resolver for publicIds */ private EntityResolver entityResolver; @@ -514,10 +515,20 @@ public void addParam(final String name, final Object value) { * Set a logger. * @param l a logger. */ - public void setLogger(final XSLTLogger l) { + public void setLogger(final Logger l) { logger = l; } + /** + * Set a logger. + * @param l a logger. + * @deprecated XSLTLogger replaced by Logger + */ + @Deprecated + public void setLogger(final XSLTLogger l) { + logger = (Logger) l; + } + /** * Log an error. * @param e the exception to log. diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/EchoTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/EchoTest.java index 9c71eb9bb5..99454199a5 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/EchoTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/EchoTest.java @@ -97,7 +97,8 @@ public EchoTestLogger() { /** * {@inheritDoc} */ - protected void log(String message) { + @Override + public void log(String message) { this.lastLoggedMessage = message; } diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapterTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapterTest.java index 581d10a04a..56aebeeb1a 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapterTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapterTest.java @@ -50,6 +50,7 @@ public class DefaultCompilerAdapterTest { private static class LogCapturingJavac extends Javac { private StringBuilder sb = new StringBuilder(); + @Override public void log(String msg, int msgLevel) { sb.append(msg); } diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/RpmTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/RpmTest.java index 7291a9e0cc..8b00df8fb1 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/RpmTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/RpmTest.java @@ -63,6 +63,7 @@ public int execute() { }; } + @Override public void log(String msg, int msgLevel) { } } diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/TraXLiaisonTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/TraXLiaisonTest.java index 9ea6089c80..5ef2179529 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/TraXLiaisonTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/TraXLiaisonTest.java @@ -33,8 +33,8 @@ import javax.xml.transform.TransformerFactoryConfigurationError; import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Logger; import org.apache.tools.ant.taskdefs.XSLTLiaison; -import org.apache.tools.ant.taskdefs.XSLTLogger; import org.apache.tools.ant.util.JAXPUtils; import org.junit.After; import org.junit.Test; @@ -42,7 +42,7 @@ /** * TraX XSLTLiaison testcase */ -public class TraXLiaisonTest extends AbstractXSLTLiaisonTest implements XSLTLogger { +public class TraXLiaisonTest extends AbstractXSLTLiaisonTest implements Logger { @After public void tearDown() {