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

com.consol.citrus.remote.plugin.config.RunConfiguration Maven / Gradle / Ivy

/*
 * Copyright 2006-2018 the original author or authors.
 *
 * Licensed 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
 *
 *     http://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 com.consol.citrus.remote.plugin.config;

import java.util.List;
import java.util.Map;

import org.apache.maven.plugins.annotations.Parameter;

/**
 * @author Christoph Deppisch
 * @since 2.7.4
 */
public class RunConfiguration {

    @Parameter
    private List classes;

    @Parameter
    private List packages;

    @Parameter
    private List includes;

    @Parameter
    private Map systemProperties;

    @Parameter(property = "citrus.remote.run.async", defaultValue = "false")
    private boolean async;

    @Parameter(property = "citrus.remote.run.polling.interval", defaultValue = "10000")
    private long pollingInterval = 10000L;

    @Parameter(property = "citrus.remote.run.engine", defaultValue = "junit4")
    private String engine;

    /**
     * Gets the classes.
     *
     * @return
     */
    public List getClasses() {
        return classes;
    }

    /**
     * Sets the classes.
     *
     * @param classes
     */
    public void setClasses(List classes) {
        this.classes = classes;
    }

    /**
     * Gets the packages.
     *
     * @return
     */
    public List getPackages() {
        return packages;
    }

    /**
     * Sets the packages.
     *
     * @param packages
     */
    public void setPackages(List packages) {
        this.packages = packages;
    }

    /**
     * Checks existence of classes.
     * @return
     */
    public boolean hasClasses() {
        return getClasses() != null && !getClasses().isEmpty();
    }

    /**
     * Checks existence of packages.
     * @return
     */
    public boolean hasPackages() {
        return getPackages() != null && !getPackages().isEmpty();
    }

    /**
     * Gets the includes.
     *
     * @return
     */
    public List getIncludes() {
        return includes;
    }

    /**
     * Sets the includes.
     *
     * @param includes
     */
    public void setIncludes(List includes) {
        this.includes = includes;
    }

    /**
     * Gets the system properties.
     *
     * @return
     */
    public Map getSystemProperties() {
        return systemProperties;
    }

    /**
     * Sets the system properties.
     *
     * @param properties
     */
    public void setSystemProperties(Map properties) {
        this.systemProperties = properties;
    }

    /**
     * Gets the async.
     *
     * @return
     */
    public boolean isAsync() {
        return async;
    }

    /**
     * Sets the async.
     *
     * @param async
     */
    public void setAsync(boolean async) {
        this.async = async;
    }

    /**
     * Gets the pollingInterval.
     *
     * @return
     */
    public long getPollingInterval() {
        return pollingInterval;
    }

    /**
     * Sets the pollingInterval.
     *
     * @param pollingInterval
     */
    public void setPollingInterval(long pollingInterval) {
        this.pollingInterval = pollingInterval;
    }

    /**
     * Gets the engine.
     * @return
     */
    public String getEngine() {
        return engine;
    }

    /**
     * Sets the engine.
     * @param engine
     */
    public void setEngine(String engine) {
        this.engine = engine;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy