| package org.apache.maven.plugins.pmd.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.File; |
| import java.io.Serializable; |
| import java.util.ArrayList; |
| import java.util.Collection; |
| import java.util.List; |
| |
| /** |
| * Data object to store all configuration options needed to execute PMD |
| * as a separate process. |
| * |
| * <p>This class is intended to be serialized and read back. |
| * |
| * <p>Some properties might be optional and can be <code>null</code>. |
| */ |
| public class PmdRequest implements Serializable |
| { |
| private static final long serialVersionUID = -6324416880563476455L; |
| |
| private String javaExecutable; |
| |
| private String language; |
| private String languageVersion; |
| private int minimumPriority; |
| private String auxClasspath; |
| private String suppressMarker; |
| private String analysisCacheLocation; |
| private List<String> rulesets; |
| private String sourceEncoding; |
| private List<File> files = new ArrayList<>(); |
| |
| private boolean showPmdLog; |
| private String logLevel; |
| private boolean skipPmdError; |
| |
| private String excludeFromFailureFile; |
| private String targetDirectory; |
| private String outputEncoding; |
| private String format; |
| private String benchmarkOutputLocation; |
| private boolean includeXmlInSite; |
| private String reportOutputDirectory; |
| |
| /** |
| * Configure language and language version. |
| * |
| * @param language the language |
| * @param targetJdk the language version, optional, can be <code>null</code> |
| */ |
| public void setLanguageAndVersion( String language, String targetJdk ) |
| { |
| if ( "java".equals( language ) || null == language ) |
| { |
| this.language = "java"; |
| this.languageVersion = targetJdk; |
| } |
| else if ( "javascript".equals( language ) || "ecmascript".equals( language ) ) |
| { |
| this.language = "ecmascript"; |
| } |
| else if ( "jsp".equals( language ) ) |
| { |
| this.language = "jsp"; |
| } |
| else |
| { |
| this.language = language; |
| } |
| } |
| |
| public void setJavaExecutable( String javaExecutable ) |
| { |
| this.javaExecutable = javaExecutable; |
| } |
| |
| public void setMinimumPriority( int minimumPriority ) |
| { |
| this.minimumPriority = minimumPriority; |
| } |
| |
| public void setAuxClasspath( String auxClasspath ) |
| { |
| this.auxClasspath = auxClasspath; |
| } |
| |
| public void setSuppressMarker( String suppressMarker ) |
| { |
| this.suppressMarker = suppressMarker; |
| } |
| |
| public void setAnalysisCacheLocation( String analysisCacheLocation ) |
| { |
| this.analysisCacheLocation = analysisCacheLocation; |
| } |
| |
| public void setRulesets( List<String> rulesets ) |
| { |
| this.rulesets = rulesets; |
| } |
| |
| public void setSourceEncoding( String sourceEncoding ) |
| { |
| this.sourceEncoding = sourceEncoding; |
| } |
| |
| public void addFiles( Collection<File> files ) |
| { |
| this.files.addAll( files ); |
| } |
| |
| public void setBenchmarkOutputLocation( String benchmarkOutputLocation ) |
| { |
| this.benchmarkOutputLocation = benchmarkOutputLocation; |
| } |
| |
| public void setTargetDirectory( String targetDirectory ) |
| { |
| this.targetDirectory = targetDirectory; |
| } |
| |
| public void setOutputEncoding( String outputEncoding ) |
| { |
| this.outputEncoding = outputEncoding; |
| } |
| |
| public void setFormat( String format ) |
| { |
| this.format = format; |
| } |
| |
| public void setShowPmdLog( boolean showPmdLog ) |
| { |
| this.showPmdLog = showPmdLog; |
| } |
| |
| public void setLogLevel( String logLevel ) |
| { |
| this.logLevel = logLevel; |
| } |
| |
| public void setSkipPmdError( boolean skipPmdError ) |
| { |
| this.skipPmdError = skipPmdError; |
| } |
| |
| public void setIncludeXmlInSite( boolean includeXmlInSite ) |
| { |
| this.includeXmlInSite = includeXmlInSite; |
| } |
| |
| public void setReportOutputDirectory( String reportOutputDirectory ) |
| { |
| this.reportOutputDirectory = reportOutputDirectory; |
| } |
| |
| public void setExcludeFromFailureFile( String excludeFromFailureFile ) |
| { |
| this.excludeFromFailureFile = excludeFromFailureFile; |
| } |
| |
| |
| |
| |
| |
| public String getJavaExecutable() |
| { |
| return javaExecutable; |
| } |
| |
| public String getLanguage() |
| { |
| return language; |
| } |
| |
| public String getLanguageVersion() |
| { |
| return languageVersion; |
| } |
| |
| public int getMinimumPriority() |
| { |
| return minimumPriority; |
| } |
| |
| public String getAuxClasspath() |
| { |
| return auxClasspath; |
| } |
| |
| public String getSuppressMarker() |
| { |
| return suppressMarker; |
| } |
| |
| public String getAnalysisCacheLocation() |
| { |
| return analysisCacheLocation; |
| } |
| |
| public List<String> getRulesets() |
| { |
| return rulesets; |
| } |
| |
| public String getSourceEncoding() |
| { |
| return sourceEncoding; |
| } |
| |
| public List<File> getFiles() |
| { |
| return files; |
| } |
| |
| public String getBenchmarkOutputLocation() |
| { |
| return benchmarkOutputLocation; |
| } |
| |
| public String getTargetDirectory() |
| { |
| return targetDirectory; |
| } |
| |
| public String getOutputEncoding() |
| { |
| return outputEncoding; |
| } |
| |
| public String getFormat() |
| { |
| return format; |
| } |
| |
| public boolean isShowPmdLog() |
| { |
| return showPmdLog; |
| } |
| |
| public String getLogLevel() |
| { |
| return logLevel; |
| } |
| |
| public boolean isDebugEnabled() |
| { |
| return "debug".equals( logLevel ); |
| } |
| |
| public boolean isSkipPmdError() |
| { |
| return skipPmdError; |
| } |
| |
| public boolean isIncludeXmlInSite() |
| { |
| return includeXmlInSite; |
| } |
| |
| public String getReportOutputDirectory() |
| { |
| return reportOutputDirectory; |
| } |
| |
| public String getExcludeFromFailureFile() |
| { |
| return excludeFromFailureFile; |
| } |
| } |