All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.atlassian.clover.api.ci.Integrator Maven / Gradle / Ivy

Go to download

Clover is an award winning code coverage and testing tool for Java and Groovy. It integrates easily with Maven (1, 2 and 3), Ant, Grails, Eclipse and IntelliJ IDEA as well as with continuous integration servers such as Bamboo, Jenkins or Hudson. Note: before Clover 4.0 this artifact was named com.cenqua.clover:clover.

There is a newer version: 4.1.10
Show newest version
package com.atlassian.clover.api.ci;

import com.atlassian.clover.ci.MavenIntegrator;
import com.atlassian.clover.ci.AntIntegrator;

import java.util.List;

/**
 * An Integrator is designed to provied a simple means to enable Clover for a build from a CI environment.
 *
 * This interface also contains a Factory for creating new instances of implementing Integrator classes.
 */
public interface Integrator {
    /**
     * Takes a modifiable List of arguments, and decorates them with arguments that will enable Clover for the build.
     *
     * @param args a modifiable List of arguments to decorate.
     */
    void decorateArguments(List args);

    public static class Factory {

        /**
         * Creates an integrator for Ant, using the given options.
         *
         * @param options the options the Integrator should use
         *
         * @return an Integrator to be used with Ant 1.7+ configured with the given options.
         */
        public static Integrator newAntIntegrator(CIOptions options) {
            return new AntIntegrator(options);
        }

        /**
         * Creates an integrator for Maven, using the given options.
         *
         * @param options the options the Integrator should use
         * @return an Integrator to be used with Maven2 configured with the given options.
         */
        public static Integrator newMavenIntegrator(CIOptions options) {
            return new MavenIntegrator(options);
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy