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

software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProject Maven / Gradle / Ivy

package software.aws.awsprototypingsdk.pipeline;

/**
 * Synthesizes a Java Project with a CI/CD pipeline.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.71.0 (build f1f58ae)", date = "2022-12-07T01:30:43.827Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Jsii(module = software.aws.awsprototypingsdk.$Module.class, fqn = "aws-prototyping-sdk.pipeline.PDKPipelineJavaProject")
public class PDKPipelineJavaProject extends io.github.cdklabs.projen.awscdk.AwsCdkJavaApp {

    protected PDKPipelineJavaProject(final software.amazon.jsii.JsiiObjectRef objRef) {
        super(objRef);
    }

    protected PDKPipelineJavaProject(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
        super(initializationMode);
    }

    /**
     * @param options This parameter is required.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    public PDKPipelineJavaProject(final @org.jetbrains.annotations.NotNull software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProjectOptions options) {
        super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
        software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(options, "options is required") });
    }

    /**
     * A fluent builder for {@link software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProject}.
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    public static final class Builder implements software.amazon.jsii.Builder {
        /**
         * @return a new instance of {@link Builder}.
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public static Builder create() {
            return new Builder();
        }

        private final software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProjectOptions.Builder options;

        private Builder() {
            this.options = new software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProjectOptions.Builder();
        }

        /**
         * (experimental) This is the name of your project.
         * 

* Default: $BASEDIR *

* @return {@code this} * @param name This is the name of your project. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder name(final java.lang.String name) { this.options.name(name); return this; } /** * (experimental) Whether to commit the managed files by default. *

* Default: true *

* @return {@code this} * @param commitGenerated Whether to commit the managed files by default. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder commitGenerated(final java.lang.Boolean commitGenerated) { this.options.commitGenerated(commitGenerated); return this; } /** * (experimental) Configure logging options such as verbosity. *

* Default: {} *

* @return {@code this} * @param logging Configure logging options such as verbosity. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder logging(final io.github.cdklabs.projen.LoggerOptions logging) { this.options.logging(logging); return this; } /** * (experimental) The root directory of the project. *

* Relative to this directory, all files are synthesized. *

* If this project has a parent, this directory is relative to the parent * directory and it cannot be the same as the parent or any of it's other * sub-projects. *

* Default: "." *

* @return {@code this} * @param outdir The root directory of the project. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder outdir(final java.lang.String outdir) { this.options.outdir(outdir); return this; } /** * (experimental) The parent project, if this project is part of a bigger project. *

* @return {@code this} * @param parent The parent project, if this project is part of a bigger project. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder parent(final io.github.cdklabs.projen.Project parent) { this.options.parent(parent); return this; } /** * (experimental) The shell command to use in order to run the projen CLI. *

* Can be used to customize in special environments. *

* Default: "npx projen" *

* @return {@code this} * @param projenCommand The shell command to use in order to run the projen CLI. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder projenCommand(final java.lang.String projenCommand) { this.options.projenCommand(projenCommand); return this; } /** * (experimental) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. *

* Default: false *

* @return {@code this} * @param projenrcJson Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder projenrcJson(final java.lang.Boolean projenrcJson) { this.options.projenrcJson(projenrcJson); return this; } /** * (experimental) Options for .projenrc.json. *

* Default: - default options *

* @return {@code this} * @param projenrcJsonOptions Options for .projenrc.json. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder projenrcJsonOptions(final io.github.cdklabs.projen.ProjenrcOptions projenrcJsonOptions) { this.options.projenrcJsonOptions(projenrcJsonOptions); return this; } /** * (experimental) Use renovatebot to handle dependency upgrades. *

* Default: false *

* @return {@code this} * @param renovatebot Use renovatebot to handle dependency upgrades. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder renovatebot(final java.lang.Boolean renovatebot) { this.options.renovatebot(renovatebot); return this; } /** * (experimental) Options for renovatebot. *

* Default: - default options *

* @return {@code this} * @param renovatebotOptions Options for renovatebot. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder renovatebotOptions(final io.github.cdklabs.projen.RenovatebotOptions renovatebotOptions) { this.options.renovatebotOptions(renovatebotOptions); return this; } /** * (experimental) Enable and configure the 'auto approve' workflow. *

* Default: - auto approve is disabled *

* @return {@code this} * @param autoApproveOptions Enable and configure the 'auto approve' workflow. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder autoApproveOptions(final io.github.cdklabs.projen.github.AutoApproveOptions autoApproveOptions) { this.options.autoApproveOptions(autoApproveOptions); return this; } /** * (experimental) Enable automatic merging on GitHub. *

* Has no effect if github.mergify * is set to false. *

* Default: true *

* @return {@code this} * @param autoMerge Enable automatic merging on GitHub. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder autoMerge(final java.lang.Boolean autoMerge) { this.options.autoMerge(autoMerge); return this; } /** * (experimental) Configure options for automatic merging on GitHub. *

* Has no effect if * github.mergify or autoMerge is set to false. *

* Default: - see defaults in `AutoMergeOptions` *

* @return {@code this} * @param autoMergeOptions Configure options for automatic merging on GitHub. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder autoMergeOptions(final io.github.cdklabs.projen.github.AutoMergeOptions autoMergeOptions) { this.options.autoMergeOptions(autoMergeOptions); return this; } /** * (experimental) Add a `clobber` task which resets the repo to origin. *

* Default: true *

* @return {@code this} * @param clobber Add a `clobber` task which resets the repo to origin. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder clobber(final java.lang.Boolean clobber) { this.options.clobber(clobber); return this; } /** * (experimental) Add a VSCode development environment (used for GitHub Codespaces). *

* Default: false *

* @return {@code this} * @param devContainer Add a VSCode development environment (used for GitHub Codespaces). This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder devContainer(final java.lang.Boolean devContainer) { this.options.devContainer(devContainer); return this; } /** * (experimental) Enable GitHub integration. *

* Enabled by default for root projects. Disabled for non-root projects. *

* Default: true *

* @return {@code this} * @param github Enable GitHub integration. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder github(final java.lang.Boolean github) { this.options.github(github); return this; } /** * (experimental) Options for GitHub integration. *

* Default: - see GitHubOptions *

* @return {@code this} * @param githubOptions Options for GitHub integration. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder githubOptions(final io.github.cdklabs.projen.github.GitHubOptions githubOptions) { this.options.githubOptions(githubOptions); return this; } /** * (experimental) Add a Gitpod development environment. *

* Default: false *

* @return {@code this} * @param gitpod Add a Gitpod development environment. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder gitpod(final java.lang.Boolean gitpod) { this.options.gitpod(gitpod); return this; } /** * (deprecated) Whether mergify should be enabled on this repository or not. *

* Default: true *

* @return {@code this} * @deprecated use `githubOptions.mergify` instead * @param mergify Whether mergify should be enabled on this repository or not. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder mergify(final java.lang.Boolean mergify) { this.options.mergify(mergify); return this; } /** * (deprecated) Options for mergify. *

* Default: - default options *

* @return {@code this} * @deprecated use `githubOptions.mergifyOptions` instead * @param mergifyOptions Options for mergify. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder mergifyOptions(final io.github.cdklabs.projen.github.MergifyOptions mergifyOptions) { this.options.mergifyOptions(mergifyOptions); return this; } /** * (deprecated) Which type of project this is (library/app). *

* Default: ProjectType.UNKNOWN *

* @return {@code this} * @deprecated no longer supported at the base project level * @param projectType Which type of project this is (library/app). This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder projectType(final io.github.cdklabs.projen.ProjectType projectType) { this.options.projectType(projectType); return this; } /** * (experimental) Choose a method of providing GitHub API access for projen workflows. *

* Default: - use a personal access token named PROJEN_GITHUB_TOKEN *

* @return {@code this} * @param projenCredentials Choose a method of providing GitHub API access for projen workflows. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder projenCredentials(final io.github.cdklabs.projen.github.GithubCredentials projenCredentials) { this.options.projenCredentials(projenCredentials); return this; } /** * (deprecated) The name of a secret which includes a GitHub Personal Access Token to be used by projen workflows. *

* This token needs to have the repo, workflows * and packages scope. *

* Default: "PROJEN_GITHUB_TOKEN" *

* @return {@code this} * @deprecated use `projenCredentials` * @param projenTokenSecret The name of a secret which includes a GitHub Personal Access Token to be used by projen workflows. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder projenTokenSecret(final java.lang.String projenTokenSecret) { this.options.projenTokenSecret(projenTokenSecret); return this; } /** * (experimental) The README setup. *

* Default: - { filename: 'README.md', contents: '# replace this' } *

* Example: *

*

         * "{ filename: 'readme.md', contents: '# title' }"
         * 
*

* @return {@code this} * @param readme The README setup. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder readme(final io.github.cdklabs.projen.SampleReadmeProps readme) { this.options.readme(readme); return this; } /** * (experimental) Auto-close of stale issues and pull request. *

* See staleOptions for options. *

* Default: false *

* @return {@code this} * @param stale Auto-close of stale issues and pull request. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder stale(final java.lang.Boolean stale) { this.options.stale(stale); return this; } /** * (experimental) Auto-close stale issues and pull requests. *

* To disable set stale to false. *

* Default: - see defaults in `StaleOptions` *

* @return {@code this} * @param staleOptions Auto-close stale issues and pull requests. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder staleOptions(final io.github.cdklabs.projen.github.StaleOptions staleOptions) { this.options.staleOptions(staleOptions); return this; } /** * (experimental) Enable VSCode integration. *

* Enabled by default for root projects. Disabled for non-root projects. *

* Default: true *

* @return {@code this} * @param vscode Enable VSCode integration. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder vscode(final java.lang.Boolean vscode) { this.options.vscode(vscode); return this; } /** * (experimental) The artifactId is generally the name that the project is known by. *

* Although * the groupId is important, people within the group will rarely mention the * groupId in discussion (they are often all be the same ID, such as the * MojoHaus project groupId: org.codehaus.mojo). It, along with the groupId, * creates a key that separates this project from every other project in the * world (at least, it should :) ). Along with the groupId, the artifactId * fully defines the artifact's living quarters within the repository. In the * case of the above project, my-project lives in * $M2_REPO/org/codehaus/mojo/my-project. *

* Default: "my-app" *

* @return {@code this} * @param artifactId The artifactId is generally the name that the project is known by. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder artifactId(final java.lang.String artifactId) { this.options.artifactId(artifactId); return this; } /** * (experimental) This is generally unique amongst an organization or a project. *

* For example, * all core Maven artifacts do (well, should) live under the groupId * org.apache.maven. Group ID's do not necessarily use the dot notation, for * example, the junit project. Note that the dot-notated groupId does not have * to correspond to the package structure that the project contains. It is, * however, a good practice to follow. When stored within a repository, the * group acts much like the Java packaging structure does in an operating * system. The dots are replaced by OS specific directory separators (such as * '/' in Unix) which becomes a relative directory structure from the base * repository. In the example given, the org.codehaus.mojo group lives within * the directory $M2_REPO/org/codehaus/mojo. *

* Default: "org.acme" *

* @return {@code this} * @param groupId This is generally unique amongst an organization or a project. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder groupId(final java.lang.String groupId) { this.options.groupId(groupId); return this; } /** * (experimental) This is the last piece of the naming puzzle. *

* groupId:artifactId denotes a * single project but they cannot delineate which incarnation of that project * we are talking about. Do we want the junit:junit of 2018 (version 4.12), or * of 2007 (version 3.8.2)? In short: code changes, those changes should be * versioned, and this element keeps those versions in line. It is also used * within an artifact's repository to separate versions from each other. * my-project version 1.0 files live in the directory structure * $M2_REPO/org/codehaus/mojo/my-project/1.0. *

* Default: "0.1.0" *

* @return {@code this} * @param version This is the last piece of the naming puzzle. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder version(final java.lang.String version) { this.options.version(version); return this; } /** * (experimental) Description of a project is always good. *

* Although this should not replace * formal documentation, a quick comment to any readers of the POM is always * helpful. *

* Default: undefined *

* @return {@code this} * @param description Description of a project is always good. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder description(final java.lang.String description) { this.options.description(description); return this; } /** * (experimental) Project packaging format. *

* Default: "jar" *

* @return {@code this} * @param packaging Project packaging format. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder packaging(final java.lang.String packaging) { this.options.packaging(packaging); return this; } /** * (experimental) The URL, like the name, is not required. *

* This is a nice gesture for * projects users, however, so that they know where the project lives. *

* Default: undefined *

* @return {@code this} * @param url The URL, like the name, is not required. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder url(final java.lang.String url) { this.options.url(url); return this; } /** * (experimental) Compile options. *

* Default: - defaults *

* @return {@code this} * @param compileOptions Compile options. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder compileOptions(final io.github.cdklabs.projen.java.MavenCompileOptions compileOptions) { this.options.compileOptions(compileOptions); return this; } /** * (experimental) List of runtime dependencies for this project. *

* Dependencies use the format: <groupId>/<artifactId>@<semver> *

* Additional dependencies can be added via project.addDependency(). *

* Default: [] *

* @return {@code this} * @param deps List of runtime dependencies for this project. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder deps(final java.util.List deps) { this.options.deps(deps); return this; } /** * (experimental) Final artifact output directory. *

* Default: "dist/java" *

* @return {@code this} * @param distdir Final artifact output directory. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder distdir(final java.lang.String distdir) { this.options.distdir(distdir); return this; } /** * (experimental) Include junit tests. *

* Default: true *

* @return {@code this} * @param junit Include junit tests. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder junit(final java.lang.Boolean junit) { this.options.junit(junit); return this; } /** * (experimental) junit options. *

* Default: - defaults *

* @return {@code this} * @param junitOptions junit options. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder junitOptions(final io.github.cdklabs.projen.java.JunitOptions junitOptions) { this.options.junitOptions(junitOptions); return this; } /** * (experimental) Packaging options. *

* Default: - defaults *

* @return {@code this} * @param packagingOptions Packaging options. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder packagingOptions(final io.github.cdklabs.projen.java.MavenPackagingOptions packagingOptions) { this.options.packagingOptions(packagingOptions); return this; } /** * (experimental) Use projenrc in java. *

* This will install projen as a java dependency and will add a synth task which * will compile & execute main() from src/main/java/projenrc.java. *

* Default: true *

* @return {@code this} * @param projenrcJava Use projenrc in java. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder projenrcJava(final java.lang.Boolean projenrcJava) { this.options.projenrcJava(projenrcJava); return this; } /** * (experimental) Options related to projenrc in java. *

* Default: - default options *

* @return {@code this} * @param projenrcJavaOptions Options related to projenrc in java. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder projenrcJavaOptions(final io.github.cdklabs.projen.java.ProjenrcOptions projenrcJavaOptions) { this.options.projenrcJavaOptions(projenrcJavaOptions); return this; } /** * (experimental) List of test dependencies for this project. *

* Dependencies use the format: <groupId>/<artifactId>@<semver> *

* Additional dependencies can be added via project.addTestDependency(). *

* Default: [] *

* @return {@code this} * @param testDeps List of test dependencies for this project. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder testDeps(final java.util.List testDeps) { this.options.testDeps(testDeps); return this; } /** * (experimental) Include sample code and test if the relevant directories don't exist. *

* Default: true *

* @return {@code this} * @param sample Include sample code and test if the relevant directories don't exist. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder sample(final java.lang.Boolean sample) { this.options.sample(sample); return this; } /** * (experimental) The java package to use for the code sample. *

* Default: "org.acme" *

* @return {@code this} * @param sampleJavaPackage The java package to use for the code sample. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder sampleJavaPackage(final java.lang.String sampleJavaPackage) { this.options.sampleJavaPackage(sampleJavaPackage); return this; } /** * (experimental) A command to execute before synthesis. *

* This command will be called when * running cdk synth or when cdk watch identifies a change in your source * code before redeployment. *

* Default: - no build command *

* @return {@code this} * @param buildCommand A command to execute before synthesis. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder buildCommand(final java.lang.String buildCommand) { this.options.buildCommand(buildCommand); return this; } /** * (experimental) cdk.out directory. *

* Default: "cdk.out" *

* @return {@code this} * @param cdkout cdk.out directory. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder cdkout(final java.lang.String cdkout) { this.options.cdkout(cdkout); return this; } /** * (experimental) Additional context to include in `cdk.json`. *

* Default: - no additional context *

* @return {@code this} * @param context Additional context to include in `cdk.json`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder context(final java.util.Map context) { this.options.context(context); return this; } /** * (experimental) Include all feature flags in cdk.json. *

* Default: true *

* @return {@code this} * @param featureFlags Include all feature flags in cdk.json. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder featureFlags(final java.lang.Boolean featureFlags) { this.options.featureFlags(featureFlags); return this; } /** * (experimental) To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. *

* Default: ApprovalLevel.BROADENING *

* @return {@code this} * @param requireApproval To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder requireApproval(final io.github.cdklabs.projen.awscdk.ApprovalLevel requireApproval) { this.options.requireApproval(requireApproval); return this; } /** * (experimental) Glob patterns to exclude from `cdk watch`. *

* Default: [] *

* @return {@code this} * @param watchExcludes Glob patterns to exclude from `cdk watch`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder watchExcludes(final java.util.List watchExcludes) { this.options.watchExcludes(watchExcludes); return this; } /** * (experimental) Glob patterns to include in `cdk watch`. *

* Default: [] *

* @return {@code this} * @param watchIncludes Glob patterns to include in `cdk watch`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder watchIncludes(final java.util.List watchIncludes) { this.options.watchIncludes(watchIncludes); return this; } /** * (experimental) Minimum version of the AWS CDK to depend on. *

* Default: "2.1.0" *

* @return {@code this} * @param cdkVersion Minimum version of the AWS CDK to depend on. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder cdkVersion(final java.lang.String cdkVersion) { this.options.cdkVersion(cdkVersion); return this; } /** * (deprecated) Warning: NodeJS only. *

* Install the @aws-cdk/assert library? *

* Default: - will be included by default for AWS CDK >= 1.0.0 < 2.0.0 *

* @return {@code this} * @deprecated The * @param cdkAssert Warning: NodeJS only. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder cdkAssert(final java.lang.Boolean cdkAssert) { this.options.cdkAssert(cdkAssert); return this; } /** * (experimental) Install the assertions library? *

* Only needed for CDK 1.x. If using CDK 2.x then * assertions is already included in 'aws-cdk-lib' *

* Default: - will be included by default for AWS CDK >= 1.111.0 < 2.0.0 *

* @return {@code this} * @param cdkAssertions Install the assertions library?. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder cdkAssertions(final java.lang.Boolean cdkAssertions) { this.options.cdkAssertions(cdkAssertions); return this; } /** * (deprecated) Which AWS CDKv1 modules this project requires. *

* @return {@code this} * @deprecated For CDK 2.x use "deps" instead. (or "peerDeps" if you're building a library) * @param cdkDependencies Which AWS CDKv1 modules this project requires. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder cdkDependencies(final java.util.List cdkDependencies) { this.options.cdkDependencies(cdkDependencies); return this; } /** * (deprecated) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). *

* This is to ensure that downstream consumers actually have your CDK dependencies installed * when using npm < 7 or yarn, where peer dependencies are not automatically installed. * If this is disabled, cdkDependencies will be added to devDependencies to ensure * they are present during development. *

* Note: this setting only applies to construct library projects *

* Default: true *

* @return {@code this} * @deprecated Not supported in CDK v2. * @param cdkDependenciesAsDeps If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder cdkDependenciesAsDeps(final java.lang.Boolean cdkDependenciesAsDeps) { this.options.cdkDependenciesAsDeps(cdkDependenciesAsDeps); return this; } /** * (deprecated) AWS CDK modules required for testing. *

* @return {@code this} * @deprecated For CDK 2.x use 'devDeps' (in node.js projects) or 'testDeps' (in java projects) instead * @param cdkTestDependencies AWS CDK modules required for testing. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Deprecated) @Deprecated public Builder cdkTestDependencies(final java.util.List cdkTestDependencies) { this.options.cdkTestDependencies(cdkTestDependencies); return this; } /** * (experimental) Use pinned version instead of caret version for CDK. *

* You can use this to prevent mixed versions for your CDK dependencies and to prevent auto-updates. * If you use experimental features this will let you define the moment you include breaking changes. *

* @return {@code this} * @param cdkVersionPinning Use pinned version instead of caret version for CDK. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder cdkVersionPinning(final java.lang.Boolean cdkVersionPinning) { this.options.cdkVersionPinning(cdkVersionPinning); return this; } /** * (experimental) Minimum version of the `constructs` library to depend on. *

* Default: - for CDK 1.x the default is "3.2.27", for CDK 2.x the default is * "10.0.5". *

* @return {@code this} * @param constructsVersion Minimum version of the `constructs` library to depend on. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder constructsVersion(final java.lang.String constructsVersion) { this.options.constructsVersion(constructsVersion); return this; } /** * (experimental) The name of the Java class with the static `main()` method. *

* This method * should call app.synth() on the CDK app. *

* Default: "org.acme.MyApp" *

* @return {@code this} * @param mainClass The name of the Java class with the static `main()` method. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder mainClass(final java.lang.String mainClass) { this.options.mainClass(mainClass); return this; } /** * @returns a newly built instance of {@link software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProject}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProject build() { return new software.aws.awsprototypingsdk.pipeline.PDKPipelineJavaProject( this.options.build() ); } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy