aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--jacoco-maven-plugin/src/org/jacoco/maven/AgentMojo.java1
-rw-r--r--org.jacoco.agent.rt.test/src/org/jacoco/agent/rt/internal/AgentTest.java5
-rw-r--r--org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/Agent.java3
-rw-r--r--org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/controller/NopController.java34
-rw-r--r--org.jacoco.core/src/org/jacoco/core/runtime/AgentOptions.java9
-rw-r--r--org.jacoco.doc/docroot/doc/ant.html1
-rw-r--r--org.jacoco.doc/docroot/doc/changes.html1
7 files changed, 53 insertions, 1 deletions
diff --git a/jacoco-maven-plugin/src/org/jacoco/maven/AgentMojo.java b/jacoco-maven-plugin/src/org/jacoco/maven/AgentMojo.java
index 95c1eb3f..2913da3d 100644
--- a/jacoco-maven-plugin/src/org/jacoco/maven/AgentMojo.java
+++ b/jacoco-maven-plugin/src/org/jacoco/maven/AgentMojo.java
@@ -126,6 +126,7 @@ public class AgentMojo extends AbstractJacocoMojo {
* <li>tcpclient: At startup the agent connects to the TCP port specified by
* the {@link #address} and {@link #port}. Execution data is written to this
* TCP connection.</li>
+ * <li>none: Do not produce any output.</li>
* </ul>
*
* @parameter expression="${jacoco.output}"
diff --git a/org.jacoco.agent.rt.test/src/org/jacoco/agent/rt/internal/AgentTest.java b/org.jacoco.agent.rt.test/src/org/jacoco/agent/rt/internal/AgentTest.java
index 8616763d..5d01c4c7 100644
--- a/org.jacoco.agent.rt.test/src/org/jacoco/agent/rt/internal/AgentTest.java
+++ b/org.jacoco.agent.rt.test/src/org/jacoco/agent/rt/internal/AgentTest.java
@@ -29,6 +29,7 @@ import javax.management.ObjectName;
import org.jacoco.agent.rt.internal.controller.IAgentController;
import org.jacoco.agent.rt.internal.controller.LocalController;
+import org.jacoco.agent.rt.internal.controller.NopController;
import org.jacoco.agent.rt.internal.controller.TcpClientController;
import org.jacoco.agent.rt.internal.controller.TcpServerController;
import org.jacoco.core.JaCoCo;
@@ -79,6 +80,10 @@ public class AgentTest implements IExceptionLogger {
options.setOutput(OutputMode.tcpclient);
assertEquals(TcpClientController.class, agent.createAgentController()
.getClass());
+
+ options.setOutput(OutputMode.none);
+ assertEquals(NopController.class, agent.createAgentController()
+ .getClass());
}
@Test
diff --git a/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/Agent.java b/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/Agent.java
index 68ac3c63..20f511bd 100644
--- a/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/Agent.java
+++ b/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/Agent.java
@@ -23,6 +23,7 @@ import javax.management.StandardMBean;
import org.jacoco.agent.rt.IAgent;
import org.jacoco.agent.rt.internal.controller.IAgentController;
import org.jacoco.agent.rt.internal.controller.LocalController;
+import org.jacoco.agent.rt.internal.controller.NopController;
import org.jacoco.agent.rt.internal.controller.TcpClientController;
import org.jacoco.agent.rt.internal.controller.TcpServerController;
import org.jacoco.core.JaCoCo;
@@ -165,6 +166,8 @@ public class Agent implements IAgent {
return new TcpServerController(logger);
case tcpclient:
return new TcpClientController(logger);
+ case none:
+ return new NopController();
default:
throw new AssertionError(controllerType);
}
diff --git a/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/controller/NopController.java b/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/controller/NopController.java
new file mode 100644
index 00000000..379f307c
--- /dev/null
+++ b/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/controller/NopController.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2013 Mountainminds GmbH & Co. KG and Contributors
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Mandrikov Evgeny - initial API and implementation
+ *
+ *******************************************************************************/
+package org.jacoco.agent.rt.internal.controller;
+
+import org.jacoco.core.runtime.AgentOptions;
+import org.jacoco.core.runtime.RuntimeData;
+
+/**
+ * Controller that does nothing.
+ */
+public class NopController implements IAgentController {
+
+ public final void startup(final AgentOptions options, final RuntimeData data) {
+ // Nothing to do
+ }
+
+ public void writeExecutionData(final boolean reset) {
+ // Nothing to do
+ }
+
+ public void shutdown() {
+ // Nothing to do
+ }
+
+}
diff --git a/org.jacoco.core/src/org/jacoco/core/runtime/AgentOptions.java b/org.jacoco.core/src/org/jacoco/core/runtime/AgentOptions.java
index 0912584f..16b9b829 100644
--- a/org.jacoco.core/src/org/jacoco/core/runtime/AgentOptions.java
+++ b/org.jacoco.core/src/org/jacoco/core/runtime/AgentOptions.java
@@ -88,6 +88,7 @@ public final class AgentOptions {
* @see OutputMode#file
* @see OutputMode#tcpserver
* @see OutputMode#tcpclient
+ * @see OutputMode#none
*/
public static final String OUTPUT = "output";
@@ -115,7 +116,13 @@ public final class AgentOptions {
* agent connects to a TCP port specified by the
* {@link AgentOptions#ADDRESS} and {@link AgentOptions#PORT} attribute.
*/
- tcpclient
+ tcpclient,
+
+ /**
+ * Value for the {@link AgentOptions#OUTPUT} parameter: Do not produce
+ * any output.
+ */
+ none
}
diff --git a/org.jacoco.doc/docroot/doc/ant.html b/org.jacoco.doc/docroot/doc/ant.html
index c0e84e4f..2eb8aa79 100644
--- a/org.jacoco.doc/docroot/doc/ant.html
+++ b/org.jacoco.doc/docroot/doc/ant.html
@@ -231,6 +231,7 @@
<li><code>tcpclient</code>: At startup the agent connects to the TCP
port specified by the <code>address</code> and <code>port</code>
attribute. Execution data is written to this TCP connection.</li>
+ <li><code>none</code>: Do not produce any output.</li>
</ul>
</td>
<td><code>file</code></td>
diff --git a/org.jacoco.doc/docroot/doc/changes.html b/org.jacoco.doc/docroot/doc/changes.html
index 4bca02b0..03c2f37f 100644
--- a/org.jacoco.doc/docroot/doc/changes.html
+++ b/org.jacoco.doc/docroot/doc/changes.html
@@ -27,6 +27,7 @@
under test (GitHub #61).</li>
<li>Support for parallel test execution: Different agents can now safely write
to the same <code>*.exec</code> file (GitHub #52).</li>
+ <li>New output mode - 'none' (GitHub #63).</li>
</ul>
<h3>Fixed Bugs</h3>