blob: 39c9f9484052af3ef6d0a2a665e8b2c54ab9caed [file] [log] [blame]
package org.apache.maven.plugins.checkstyle.exec;
/*
* 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
*
* 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.
*/
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.util.Collection;
import java.util.List;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.model.Resource;
import org.apache.maven.project.MavenProject;
import com.puppycrawl.tools.checkstyle.DefaultLogger;
import com.puppycrawl.tools.checkstyle.api.AuditListener;
/**
* @author Olivier Lamy
* @since 2.5
*
*/
public class CheckstyleExecutorRequest
{
/**
* Specifies the names filter of the source files to be used for Checkstyle.
*/
private String includes;
/**
* Specifies the names filter of the source files to be excluded for Checkstyle.
*/
private String excludes;
/**
* Specifies names filter for resources.
*/
private String resourceIncludes;
/**
* Specifies names filter for resources.
*/
private String resourceExcludes;
private MavenProject project;
private String suppressionsLocation;
private boolean includeTestSourceDirectory;
private Collection<File> testSourceDirectories;
private Collection<File> sourceDirectories;
private boolean includeResources;
private boolean includeTestResources;
private List<Resource> resources;
private List<Resource> testResources;
private boolean failsOnError;
private AuditListener listener;
private boolean consoleOutput;
private DefaultLogger defaultLogger;
private ByteArrayOutputStream stringOutputStream;
private String propertiesLocation;
//
private String configLocation;
private String propertyExpansion;
private String headerLocation;
private String cacheFile;
private String suppressionsFileExpression;
private String encoding;
/**
* @since 2.8
*/
private boolean aggregate = false;
/**
* @since 2.8
*/
private List<MavenProject> reactorProjects;
/**
* @since 2.12.1
*/
private List<Artifact> licenseArtifacts;
/**
* @since 2.12.1
*/
private List<Artifact> configurationArtifacts;
/**
* @since 3.0.0
*/
private boolean omitIgnoredModules;
/**
* Constructor.
*/
public CheckstyleExecutorRequest( )
{
//nothing
}
/**
* Returns the includes parameter.
*
* @return The includes parameter.
*/
public String getIncludes()
{
return includes;
}
public CheckstyleExecutorRequest setIncludes( String includes )
{
this.includes = includes;
return this;
}
public String getExcludes()
{
return excludes;
}
public CheckstyleExecutorRequest setExcludes( String excludes )
{
this.excludes = excludes;
return this;
}
public String getResourceIncludes()
{
return resourceIncludes;
}
public CheckstyleExecutorRequest setResourceIncludes( String resourceIncludes )
{
this.resourceIncludes = resourceIncludes;
return this;
}
public String getResourceExcludes()
{
return resourceExcludes;
}
public CheckstyleExecutorRequest setResourceExcludes( String resourceExcludes )
{
this.resourceExcludes = resourceExcludes;
return this;
}
public MavenProject getProject()
{
return project;
}
public CheckstyleExecutorRequest setProject( MavenProject project )
{
this.project = project;
return this;
}
public String getSuppressionsLocation()
{
return suppressionsLocation;
}
public CheckstyleExecutorRequest setSuppressionsLocation( String suppressionsLocation )
{
this.suppressionsLocation = suppressionsLocation;
return this;
}
public boolean isIncludeTestSourceDirectory()
{
return includeTestSourceDirectory;
}
public CheckstyleExecutorRequest setIncludeTestSourceDirectory( boolean includeTestSourceDirectory )
{
this.includeTestSourceDirectory = includeTestSourceDirectory;
return this;
}
public Collection<File> getTestSourceDirectories()
{
return testSourceDirectories;
}
public CheckstyleExecutorRequest setTestSourceDirectories( Collection<File> testSourceDirectories )
{
this.testSourceDirectories = testSourceDirectories;
return this;
}
public Collection<File> getSourceDirectories()
{
return sourceDirectories;
}
public CheckstyleExecutorRequest setSourceDirectories( Collection<File> sourceDirectories )
{
this.sourceDirectories = sourceDirectories;
return this;
}
public List<Resource> getResources()
{
return resources;
}
public CheckstyleExecutorRequest setResources( List<Resource> resources )
{
this.resources = resources;
return this;
}
public List<Resource> getTestResources()
{
return testResources;
}
public CheckstyleExecutorRequest setTestResources( List<Resource> testResources )
{
this.testResources = testResources;
return this;
}
public boolean isFailsOnError()
{
return failsOnError;
}
public CheckstyleExecutorRequest setFailsOnError( boolean failsOnError )
{
this.failsOnError = failsOnError;
return this;
}
public AuditListener getListener()
{
return listener;
}
public CheckstyleExecutorRequest setListener( AuditListener listener )
{
this.listener = listener;
return this;
}
public boolean isConsoleOutput()
{
return consoleOutput;
}
public CheckstyleExecutorRequest setConsoleOutput( boolean consoleOutput )
{
this.consoleOutput = consoleOutput;
return this;
}
public CheckstyleExecutorRequest setConsoleListener( DefaultLogger defaultLogger )
{
this.defaultLogger = defaultLogger;
return this;
}
public DefaultLogger getConsoleListener()
{
return this.defaultLogger;
}
public ByteArrayOutputStream getStringOutputStream()
{
return stringOutputStream;
}
public CheckstyleExecutorRequest setStringOutputStream( ByteArrayOutputStream stringOutputStream )
{
this.stringOutputStream = stringOutputStream;
return this;
}
public String getConfigLocation()
{
return configLocation;
}
public CheckstyleExecutorRequest setConfigLocation( String configLocation )
{
this.configLocation = configLocation;
return this;
}
public String getPropertyExpansion()
{
return propertyExpansion;
}
public CheckstyleExecutorRequest setPropertyExpansion( String propertyExpansion )
{
this.propertyExpansion = propertyExpansion;
return this;
}
public String getHeaderLocation()
{
return headerLocation;
}
public CheckstyleExecutorRequest setHeaderLocation( String headerLocation )
{
this.headerLocation = headerLocation;
return this;
}
public String getCacheFile()
{
return cacheFile;
}
public CheckstyleExecutorRequest setCacheFile( String cacheFile )
{
this.cacheFile = cacheFile;
return this;
}
public String getSuppressionsFileExpression()
{
return suppressionsFileExpression;
}
public CheckstyleExecutorRequest setSuppressionsFileExpression( String suppressionsFileExpression )
{
this.suppressionsFileExpression = suppressionsFileExpression;
return this;
}
public String getEncoding()
{
return encoding;
}
public CheckstyleExecutorRequest setEncoding( String encoding )
{
this.encoding = encoding;
return this;
}
public String getPropertiesLocation()
{
return propertiesLocation;
}
public CheckstyleExecutorRequest setPropertiesLocation( String propertiesLocation )
{
this.propertiesLocation = propertiesLocation;
return this;
}
/**
* Returns true if the report is aggregated.
*
* @return <code>true</code> if the report is aggregated.
*/
public boolean isAggregate()
{
return aggregate;
}
/**
* Sets the aggregate parameter.
*
* @param pAggregate <code>true</code> if an aggregated report is desired.
* @return This object.
*/
public CheckstyleExecutorRequest setAggregate( boolean pAggregate )
{
this.aggregate = pAggregate;
return this;
}
/**
* Returns the list of reactor projects.
*
* @return The reactor projects.
*/
public List<MavenProject> getReactorProjects()
{
return reactorProjects;
}
/**
* Sets the list of reactor projects.
*
* @param pReactorProjects The reactor projects.
* @return This object.
*/
public CheckstyleExecutorRequest setReactorProjects( List<MavenProject> pReactorProjects )
{
this.reactorProjects = pReactorProjects;
return this;
}
/**
* Returns a list of license artifacts, which may contain the license.
*
* @return the license artifacts
*/
public List<Artifact> getLicenseArtifacts()
{
return licenseArtifacts;
}
/**
* Sets a list of license artifacts, which may contain the license.
*
* @param licenseArtifacts List of license artifacts.
* @return This object.
*/
public CheckstyleExecutorRequest setLicenseArtifacts( List<Artifact> licenseArtifacts )
{
this.licenseArtifacts = licenseArtifacts;
return this;
}
/**
* Returns a list of artifacts, which may contain the checkstyle configuration.
*
* @return the license artifacts
*/
public List<Artifact> getConfigurationArtifacts()
{
return configurationArtifacts;
}
/**
* Sets a list of artifacts, which may contain the checkstyle configuration.
*
* @param configArtifacts List of artifacts.
* @return This object.
*/
public CheckstyleExecutorRequest setConfigurationArtifacts( List<Artifact> configArtifacts )
{
this.configurationArtifacts = configArtifacts;
return this;
}
public boolean isIncludeResources()
{
return includeResources;
}
/**
* @param includeResources whether to include the resource directories in the checks.
* @return This object.
*/
public CheckstyleExecutorRequest setIncludeResources( boolean includeResources )
{
this.includeResources = includeResources;
return this;
}
public boolean isIncludeTestResources()
{
return includeTestResources;
}
/**
* @param includeTestResources whether to set the test resource directories in the checks.
* @return This object.
*/
public CheckstyleExecutorRequest setIncludeTestResources( boolean includeTestResources )
{
this.includeTestResources = includeTestResources;
return this;
}
/**
* Returns true if ignored modules (modules with severity 'ignore') should be omitted.
*
* @return <code>true</code> if ignored modules should be omitted.
*/
public boolean isOmitIgnoredModules()
{
return omitIgnoredModules;
}
/**
* @param omitIgnoredModules Whether to omit ignored modules (modules with severity 'ignore').
* @return This object.
*/
public CheckstyleExecutorRequest setOmitIgnoredModules( boolean omitIgnoredModules )
{
this.omitIgnoredModules = omitIgnoredModules;
return this;
}
}