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

software.aws.awsprototypingsdk.pdknag.PDKNagAppProps Maven / Gradle / Ivy

There is a newer version: 0.19.68
Show newest version
package software.aws.awsprototypingsdk.pdknag;

/**
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.82.0 (build 2d2ddd7)", date = "2023-08-09T23:54:33.376Z")
@software.amazon.jsii.Jsii(module = software.aws.awsprototypingsdk.pdknag.$Module.class, fqn = "@aws-prototyping-sdk/pdk-nag.PDKNagAppProps")
@software.amazon.jsii.Jsii.Proxy(PDKNagAppProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface PDKNagAppProps extends software.amazon.jsii.JsiiSerializable, software.amazon.awscdk.AppProps {

    /**
     * Determines whether any errors encountered should trigger a test failure.
     * 

* Default: false */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Boolean getFailOnError() { return null; } /** * Determines whether any warnings encountered should trigger a test failure. *

* Default: false */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Boolean getFailOnWarning() { return null; } /** * Custom nag packs to execute. *

* Default: DEFAULT_NAG_PACKS */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getNagPacks() { return null; } /** * @return a {@link Builder} of {@link PDKNagAppProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link PDKNagAppProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Boolean failOnError; java.lang.Boolean failOnWarning; java.util.List nagPacks; java.lang.Boolean analyticsReporting; java.lang.Boolean autoSynth; java.util.Map context; software.amazon.awscdk.IReusableStackSynthesizer defaultStackSynthesizer; java.lang.String outdir; java.util.List policyValidationBeta1; java.util.Map postCliContext; java.lang.Boolean stackTraces; java.lang.Boolean treeMetadata; /** * Sets the value of {@link PDKNagAppProps#getFailOnError} * @param failOnError Determines whether any errors encountered should trigger a test failure. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder failOnError(java.lang.Boolean failOnError) { this.failOnError = failOnError; return this; } /** * Sets the value of {@link PDKNagAppProps#getFailOnWarning} * @param failOnWarning Determines whether any warnings encountered should trigger a test failure. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder failOnWarning(java.lang.Boolean failOnWarning) { this.failOnWarning = failOnWarning; return this; } /** * Sets the value of {@link PDKNagAppProps#getNagPacks} * @param nagPacks Custom nag packs to execute. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @SuppressWarnings("unchecked") public Builder nagPacks(java.util.List nagPacks) { this.nagPacks = (java.util.List)nagPacks; return this; } /** * Sets the value of {@link PDKNagAppProps#getAnalyticsReporting} * @param analyticsReporting Include runtime versioning information in the Stacks of this app. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder analyticsReporting(java.lang.Boolean analyticsReporting) { this.analyticsReporting = analyticsReporting; return this; } /** * Sets the value of {@link PDKNagAppProps#getAutoSynth} * @param autoSynth Automatically call synth() before the program exits. * If you set this, you don't have to call synth() explicitly. Note that * this feature is only available for certain programming languages, and * calling synth() is still recommended. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder autoSynth(java.lang.Boolean autoSynth) { this.autoSynth = autoSynth; return this; } /** * Sets the value of {@link PDKNagAppProps#getContext} * @param context Additional context values for the application. * Context set by the CLI or the context key in cdk.json has precedence. *

* Context can be read from any construct using node.getContext(key). * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @SuppressWarnings("unchecked") public Builder context(java.util.Map context) { this.context = (java.util.Map)context; return this; } /** * Sets the value of {@link PDKNagAppProps#getDefaultStackSynthesizer} * @param defaultStackSynthesizer The stack synthesizer to use by default for all Stacks in the App. * The Stack Synthesizer controls aspects of synthesis and deployment, * like how assets are referenced and what IAM roles to use. For more * information, see the README of the main CDK package. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder defaultStackSynthesizer(software.amazon.awscdk.IReusableStackSynthesizer defaultStackSynthesizer) { this.defaultStackSynthesizer = defaultStackSynthesizer; return this; } /** * Sets the value of {@link PDKNagAppProps#getOutdir} * @param outdir The output directory into which to emit synthesized artifacts. * You should never need to set this value. By default, the value you pass to * the CLI's --output flag will be used, and if you change it to a different * directory the CLI will fail to pick up the generated Cloud Assembly. *

* This property is intended for internal and testing use. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder outdir(java.lang.String outdir) { this.outdir = outdir; return this; } /** * Sets the value of {@link PDKNagAppProps#getPolicyValidationBeta1} * @param policyValidationBeta1 Validation plugins to run after synthesis. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @SuppressWarnings("unchecked") public Builder policyValidationBeta1(java.util.List policyValidationBeta1) { this.policyValidationBeta1 = (java.util.List)policyValidationBeta1; return this; } /** * Sets the value of {@link PDKNagAppProps#getPostCliContext} * @param postCliContext Additional context values for the application. * Context provided here has precedence over context set by: *

*

    *
  • The CLI via --context
  • *
  • The context key in cdk.json
  • *
  • The AppProps.context property
  • *
*

* This property is recommended over the AppProps.context property since you * can make final decision over which context value to take in your app. *

* Context can be read from any construct using node.getContext(key). * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @SuppressWarnings("unchecked") public Builder postCliContext(java.util.Map postCliContext) { this.postCliContext = (java.util.Map)postCliContext; return this; } /** * Sets the value of {@link PDKNagAppProps#getStackTraces} * @param stackTraces Include construct creation stack trace in the aws:cdk:trace metadata key of all constructs. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder stackTraces(java.lang.Boolean stackTraces) { this.stackTraces = stackTraces; return this; } /** * Sets the value of {@link PDKNagAppProps#getTreeMetadata} * @param treeMetadata Include construct tree metadata as part of the Cloud Assembly. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder treeMetadata(java.lang.Boolean treeMetadata) { this.treeMetadata = treeMetadata; return this; } /** * Builds the configured instance. * @return a new instance of {@link PDKNagAppProps} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public PDKNagAppProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link PDKNagAppProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements PDKNagAppProps { private final java.lang.Boolean failOnError; private final java.lang.Boolean failOnWarning; private final java.util.List nagPacks; private final java.lang.Boolean analyticsReporting; private final java.lang.Boolean autoSynth; private final java.util.Map context; private final software.amazon.awscdk.IReusableStackSynthesizer defaultStackSynthesizer; private final java.lang.String outdir; private final java.util.List policyValidationBeta1; private final java.util.Map postCliContext; private final java.lang.Boolean stackTraces; private final java.lang.Boolean treeMetadata; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.failOnError = software.amazon.jsii.Kernel.get(this, "failOnError", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.failOnWarning = software.amazon.jsii.Kernel.get(this, "failOnWarning", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.nagPacks = software.amazon.jsii.Kernel.get(this, "nagPacks", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(io.github.cdklabs.cdknag.NagPack.class))); this.analyticsReporting = software.amazon.jsii.Kernel.get(this, "analyticsReporting", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.autoSynth = software.amazon.jsii.Kernel.get(this, "autoSynth", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.context = software.amazon.jsii.Kernel.get(this, "context", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))); this.defaultStackSynthesizer = software.amazon.jsii.Kernel.get(this, "defaultStackSynthesizer", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.IReusableStackSynthesizer.class)); this.outdir = software.amazon.jsii.Kernel.get(this, "outdir", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.policyValidationBeta1 = software.amazon.jsii.Kernel.get(this, "policyValidationBeta1", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.IPolicyValidationPluginBeta1.class))); this.postCliContext = software.amazon.jsii.Kernel.get(this, "postCliContext", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))); this.stackTraces = software.amazon.jsii.Kernel.get(this, "stackTraces", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); this.treeMetadata = software.amazon.jsii.Kernel.get(this, "treeMetadata", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ @SuppressWarnings("unchecked") protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.failOnError = builder.failOnError; this.failOnWarning = builder.failOnWarning; this.nagPacks = (java.util.List)builder.nagPacks; this.analyticsReporting = builder.analyticsReporting; this.autoSynth = builder.autoSynth; this.context = (java.util.Map)builder.context; this.defaultStackSynthesizer = builder.defaultStackSynthesizer; this.outdir = builder.outdir; this.policyValidationBeta1 = (java.util.List)builder.policyValidationBeta1; this.postCliContext = (java.util.Map)builder.postCliContext; this.stackTraces = builder.stackTraces; this.treeMetadata = builder.treeMetadata; } @Override public final java.lang.Boolean getFailOnError() { return this.failOnError; } @Override public final java.lang.Boolean getFailOnWarning() { return this.failOnWarning; } @Override public final java.util.List getNagPacks() { return this.nagPacks; } @Override public final java.lang.Boolean getAnalyticsReporting() { return this.analyticsReporting; } @Override public final java.lang.Boolean getAutoSynth() { return this.autoSynth; } @Override public final java.util.Map getContext() { return this.context; } @Override public final software.amazon.awscdk.IReusableStackSynthesizer getDefaultStackSynthesizer() { return this.defaultStackSynthesizer; } @Override public final java.lang.String getOutdir() { return this.outdir; } @Override public final java.util.List getPolicyValidationBeta1() { return this.policyValidationBeta1; } @Override public final java.util.Map getPostCliContext() { return this.postCliContext; } @Override public final java.lang.Boolean getStackTraces() { return this.stackTraces; } @Override public final java.lang.Boolean getTreeMetadata() { return this.treeMetadata; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getFailOnError() != null) { data.set("failOnError", om.valueToTree(this.getFailOnError())); } if (this.getFailOnWarning() != null) { data.set("failOnWarning", om.valueToTree(this.getFailOnWarning())); } if (this.getNagPacks() != null) { data.set("nagPacks", om.valueToTree(this.getNagPacks())); } if (this.getAnalyticsReporting() != null) { data.set("analyticsReporting", om.valueToTree(this.getAnalyticsReporting())); } if (this.getAutoSynth() != null) { data.set("autoSynth", om.valueToTree(this.getAutoSynth())); } if (this.getContext() != null) { data.set("context", om.valueToTree(this.getContext())); } if (this.getDefaultStackSynthesizer() != null) { data.set("defaultStackSynthesizer", om.valueToTree(this.getDefaultStackSynthesizer())); } if (this.getOutdir() != null) { data.set("outdir", om.valueToTree(this.getOutdir())); } if (this.getPolicyValidationBeta1() != null) { data.set("policyValidationBeta1", om.valueToTree(this.getPolicyValidationBeta1())); } if (this.getPostCliContext() != null) { data.set("postCliContext", om.valueToTree(this.getPostCliContext())); } if (this.getStackTraces() != null) { data.set("stackTraces", om.valueToTree(this.getStackTraces())); } if (this.getTreeMetadata() != null) { data.set("treeMetadata", om.valueToTree(this.getTreeMetadata())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-prototyping-sdk/pdk-nag.PDKNagAppProps")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; PDKNagAppProps.Jsii$Proxy that = (PDKNagAppProps.Jsii$Proxy) o; if (this.failOnError != null ? !this.failOnError.equals(that.failOnError) : that.failOnError != null) return false; if (this.failOnWarning != null ? !this.failOnWarning.equals(that.failOnWarning) : that.failOnWarning != null) return false; if (this.nagPacks != null ? !this.nagPacks.equals(that.nagPacks) : that.nagPacks != null) return false; if (this.analyticsReporting != null ? !this.analyticsReporting.equals(that.analyticsReporting) : that.analyticsReporting != null) return false; if (this.autoSynth != null ? !this.autoSynth.equals(that.autoSynth) : that.autoSynth != null) return false; if (this.context != null ? !this.context.equals(that.context) : that.context != null) return false; if (this.defaultStackSynthesizer != null ? !this.defaultStackSynthesizer.equals(that.defaultStackSynthesizer) : that.defaultStackSynthesizer != null) return false; if (this.outdir != null ? !this.outdir.equals(that.outdir) : that.outdir != null) return false; if (this.policyValidationBeta1 != null ? !this.policyValidationBeta1.equals(that.policyValidationBeta1) : that.policyValidationBeta1 != null) return false; if (this.postCliContext != null ? !this.postCliContext.equals(that.postCliContext) : that.postCliContext != null) return false; if (this.stackTraces != null ? !this.stackTraces.equals(that.stackTraces) : that.stackTraces != null) return false; return this.treeMetadata != null ? this.treeMetadata.equals(that.treeMetadata) : that.treeMetadata == null; } @Override public final int hashCode() { int result = this.failOnError != null ? this.failOnError.hashCode() : 0; result = 31 * result + (this.failOnWarning != null ? this.failOnWarning.hashCode() : 0); result = 31 * result + (this.nagPacks != null ? this.nagPacks.hashCode() : 0); result = 31 * result + (this.analyticsReporting != null ? this.analyticsReporting.hashCode() : 0); result = 31 * result + (this.autoSynth != null ? this.autoSynth.hashCode() : 0); result = 31 * result + (this.context != null ? this.context.hashCode() : 0); result = 31 * result + (this.defaultStackSynthesizer != null ? this.defaultStackSynthesizer.hashCode() : 0); result = 31 * result + (this.outdir != null ? this.outdir.hashCode() : 0); result = 31 * result + (this.policyValidationBeta1 != null ? this.policyValidationBeta1.hashCode() : 0); result = 31 * result + (this.postCliContext != null ? this.postCliContext.hashCode() : 0); result = 31 * result + (this.stackTraces != null ? this.stackTraces.hashCode() : 0); result = 31 * result + (this.treeMetadata != null ? this.treeMetadata.hashCode() : 0); return result; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy