io.github.cdklabs.projen.awscdk.AwsCdkDepsJava Maven / Gradle / Ivy
Show all versions of projen Show documentation
package io.github.cdklabs.projen.awscdk;
/**
* (experimental) Manages dependencies on the AWS CDK for Java projects.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.105.0 (build 0a2adcb)", date = "2024-11-15T17:03:54.925Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@software.amazon.jsii.Jsii(module = io.github.cdklabs.projen.$Module.class, fqn = "projen.awscdk.AwsCdkDepsJava")
public class AwsCdkDepsJava extends io.github.cdklabs.projen.awscdk.AwsCdkDeps {
protected AwsCdkDepsJava(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected AwsCdkDepsJava(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
/**
* @param project This parameter is required.
* @param options This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public AwsCdkDepsJava(final @org.jetbrains.annotations.NotNull io.github.cdklabs.projen.Project project, final @org.jetbrains.annotations.NotNull io.github.cdklabs.projen.awscdk.AwsCdkDepsOptions options) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(project, "project is required"), java.util.Objects.requireNonNull(options, "options is required") });
}
/**
* (experimental) Return a configuration object with information about package naming in various languages.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
protected @org.jetbrains.annotations.NotNull io.github.cdklabs.projen.awscdk.AwsCdkPackageNames packageNames() {
return software.amazon.jsii.Kernel.call(this, "packageNames", software.amazon.jsii.NativeType.forClass(io.github.cdklabs.projen.awscdk.AwsCdkPackageNames.class));
}
/**
* (experimental) A fluent builder for {@link io.github.cdklabs.projen.awscdk.AwsCdkDepsJava}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
* @param project This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public static Builder create(final io.github.cdklabs.projen.Project project) {
return new Builder(project);
}
private final io.github.cdklabs.projen.Project project;
private final io.github.cdklabs.projen.awscdk.AwsCdkDepsOptions.Builder options;
private Builder(final io.github.cdklabs.projen.Project project) {
this.project = project;
this.options = new io.github.cdklabs.projen.awscdk.AwsCdkDepsOptions.Builder();
}
/**
* (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
*
* 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 type of dependency to use for runtime AWS CDK and constructs
modules.
*
* For libraries, use peer dependencies and for apps use runtime dependencies.
*
* @return {@code this}
* @param dependencyType The type of dependency to use for runtime AWS CDK and constructs
modules. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
public Builder dependencyType(final io.github.cdklabs.projen.DependencyType dependencyType) {
this.options.dependencyType(dependencyType);
return this;
}
/**
* @return a newly built instance of {@link io.github.cdklabs.projen.awscdk.AwsCdkDepsJava}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental)
@Override
public io.github.cdklabs.projen.awscdk.AwsCdkDepsJava build() {
return new io.github.cdklabs.projen.awscdk.AwsCdkDepsJava(
this.project,
this.options.build()
);
}
}
}