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

ch.sourcepond.maven.plugin.jenkins.config.ConfigBuilder Maven / Gradle / Ivy

/*Copyright (C) 2015 Roland Hauser,  pStdinXsltParams);

	/**
	 * Sets the {@link File} where to redirect the standard output, see
	 * {@link Config#getStdoutOrNull()}.
	 * 
	 * @param pStdout
	 *            {@link File} or {@code null}
	 * @return This builder, never {@code null}
	 */
	ConfigBuilder setStdout(File pStdout);

	/**
	 * Sets the XSLT {@link File} to be used to transform the standard output,
	 * see {@link Config#getStdoutXsltOrNull()}.
	 * 
	 * @param pStdoutXslt
	 *            {@link File} or {@code null}
	 * @return This builder, never {@code null}
	 */
	ConfigBuilder setStdoutXslt(File pStdoutXslt);

	/**
	 * Sets the custom parameters which should be passed to the XSLT specified
	 * by {@link #setStdoutXslt(File)}. See
	 * {@link Config#getStdoutXsltParamsOrNull()}
	 * 
	 * @param pStdoutXsltParams
	 *            Parameters or {@code null}
	 * @return This builder, never {@code null}
	 */
	ConfigBuilder setStdoutXsltParams(Map pStdoutXsltParams);

	/**
	 * Sets whether the standard output shall be appended to the file specified
	 * by {@link #setStdout(File)}. See {@link Config#isAppending()}
	 * 
	 * @param pAppend
	 * @return
	 */
	ConfigBuilder setAppend(boolean pAppend);

	/**
	 * Sets the proxy if any specified, see {@link Config#getProxyOrNull()}.
	 * 
	 * @param pProxy
	 *            {@link Proxy} instance or {@code null}
	 * @return This builder, never {@code null}
	 */
	ConfigBuilder setProxy(Proxy pProxy);

	/**
	 * Sets the trust-store if an SSL connection is used, see
	 * {@link Config#getTrustStoreOrNull()}.
	 * 
	 * @param pTrustStore
	 *            Trust-store {@link File} or {@code null}
	 * @return This builder, never {@code null}
	 */
	ConfigBuilder setTrustStore(File pTrustStore);

	/**
	 * Sets the trust-store password, see
	 * {@link Config#getTrustStorePasswordOrNull()}.
	 * 
	 * @param pPassword
	 *            Trust-store password or {@code null}.
	 * @return This builder, never {@code null}
	 */
	ConfigBuilder setTrustStorePassword(String pPassword);

	/**
	 * Builds a new instance of {@link Config} based on the parameters specified
	 * on this builder.
	 * 
	 * @param pLog
	 *            Logger, must not be {@code null}
	 * @return New {@link Config} instance, never {@code null}.
	 * @throws MojoExecutionException
	 *             Thrown, if the CLI jar cannot be downloaded or if a
	 *             validation fails.
	 */
	Config build(Log pLog) throws MojoExecutionException;
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy