/******************************************************************************* * Copyright (c) 2017 Synopsys, Inc * 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: * Synopsys, Inc - initial implementation and documentation *******************************************************************************/ package jenkins.plugins.coverity.Utils; import jenkins.plugins.coverity.InvocationAssistance; import jenkins.plugins.coverity.JavaWarFile; import jenkins.plugins.coverity.MisraConfig; import jenkins.plugins.coverity.PostCovAnalyze; import jenkins.plugins.coverity.PostCovBuild; import java.util.List; public class InvocationAssistanceBuilder { private String buildArguments; private String analyzeArguments; private String commitArguments; private List<JavaWarFile> javaWarFiles; private boolean csharpMsvsca; private String saOverride; private MisraConfig misraConfig; private boolean isScriptSrc; private PostCovBuild postCovBuild; private PostCovAnalyze postCovAnalyze; private String intermediateDir; private boolean useAdvancedParser; public InvocationAssistanceBuilder withUseAdvancedParser(boolean useAdvancedParser) { this.useAdvancedParser = useAdvancedParser; return this; } public InvocationAssistanceBuilder withIntermediateDir(String intermediateDir) { this.intermediateDir = intermediateDir; return this; } public InvocationAssistanceBuilder withPostAnalyzeCmd(String postCovAnalyzeCmd) { this.postCovAnalyze =new PostCovAnalyze(postCovAnalyzeCmd); return this; } public InvocationAssistanceBuilder withPostCovBuildCmd(String postCovBuildCmd) { this.postCovBuild = new PostCovBuild(postCovBuildCmd); return this; } public InvocationAssistanceBuilder withIsScriptSrc(boolean isScriptSrc) { this.isScriptSrc = isScriptSrc; return this; } public InvocationAssistanceBuilder withMisraConfigFile(String misraConfigFile) { this.misraConfig = new MisraConfig(misraConfigFile); return this; } public InvocationAssistanceBuilder withSaOverride(String saOverride) { this.saOverride = saOverride; return this; } public InvocationAssistanceBuilder withCSharpMsvsca(boolean csharpMsvsca) { this.csharpMsvsca = csharpMsvsca; return this; } public InvocationAssistanceBuilder withJavaWarFiles(List<JavaWarFile> javaWarFiles) { this.javaWarFiles = javaWarFiles; return this; } public InvocationAssistanceBuilder withBuildArguments(String buildArguemtns) { this.buildArguments = buildArguemtns; return this; } public InvocationAssistanceBuilder withAnalyzeArguments(String analyzeArguments) { this.analyzeArguments = analyzeArguments; return this; } public InvocationAssistanceBuilder withCommitArguments(String commitArguments) { this.commitArguments = commitArguments; return this; } public InvocationAssistance build() { return new InvocationAssistance( postCovBuild, postCovAnalyze, isScriptSrc, buildArguments, analyzeArguments, commitArguments, intermediateDir, misraConfig, javaWarFiles, csharpMsvsca, saOverride, useAdvancedParser); } }