From 5698e6e90967624e98769dd45fa6cddd04dacffa Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Fri, 4 Oct 2002 10:06:28 +0000 Subject: [PATCH] Suppress "ignoring compiler setting" warning in javac if the user hasn't set the compiler. PR: 13246 git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@273402 13f79535-47bb-0310-9956-ffa450edef68 --- src/main/org/apache/tools/ant/taskdefs/Javac.java | 6 ++++-- .../tools/ant/util/facade/FacadeTaskHelper.java | 10 ++++++++++ .../tools/ant/util/facade/FacadeTaskHelperTest.java | 13 +++++++++++++ 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/src/main/org/apache/tools/ant/taskdefs/Javac.java b/src/main/org/apache/tools/ant/taskdefs/Javac.java index dcfda7026..ab456f0bf 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Javac.java +++ b/src/main/org/apache/tools/ant/taskdefs/Javac.java @@ -755,8 +755,10 @@ public class Javac extends MatchingTask { String compilerImpl = getCompilerVersion(); if (fork) { if (isJdkCompiler(compilerImpl)) { - log("Since fork is true, ignoring compiler setting.", - Project.MSG_WARN); + if (facade.hasBeenSet()) { + log("Since fork is true, ignoring compiler setting.", + Project.MSG_WARN); + } compilerImpl = "extJavac"; } else { log("Since compiler setting isn't classic or modern," diff --git a/src/main/org/apache/tools/ant/util/facade/FacadeTaskHelper.java b/src/main/org/apache/tools/ant/util/facade/FacadeTaskHelper.java index 73ac32e14..50dd995d8 100644 --- a/src/main/org/apache/tools/ant/util/facade/FacadeTaskHelper.java +++ b/src/main/org/apache/tools/ant/util/facade/FacadeTaskHelper.java @@ -164,4 +164,14 @@ public class FacadeTaskHelper { tmp.copyInto(res); return res; } + + /** + * Tests whether the implementation has been chosen by the user + * (either via a magic property or explicitly. + * + * @since Ant 1.5.2 + */ + public boolean hasBeenSet() { + return userChoice != null || magicValue != null; + } } diff --git a/src/testcases/org/apache/tools/ant/util/facade/FacadeTaskHelperTest.java b/src/testcases/org/apache/tools/ant/util/facade/FacadeTaskHelperTest.java index 68f4310f5..f08631610 100644 --- a/src/testcases/org/apache/tools/ant/util/facade/FacadeTaskHelperTest.java +++ b/src/testcases/org/apache/tools/ant/util/facade/FacadeTaskHelperTest.java @@ -84,4 +84,17 @@ public class FacadeTaskHelperTest extends TestCase { fth.setImplementation("baz"); assertEquals("baz", fth.getImplementation()); } + + public void testHasBeenSet() { + FacadeTaskHelper fth = new FacadeTaskHelper("foo"); + assertTrue("nothing set", !fth.hasBeenSet()); + fth.setMagicValue(null); + assertTrue("magic has not been set", !fth.hasBeenSet()); + fth.setMagicValue("foo"); + assertTrue("magic has been set", fth.hasBeenSet()); + fth.setMagicValue(null); + assertTrue(!fth.hasBeenSet()); + fth.setImplementation("baz"); + assertTrue("set explicitly", fth.hasBeenSet()); + } }