com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucket Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aws-secure-log-bucket Show documentation
Show all versions of aws-secure-log-bucket Show documentation
secure multiple transition phases in a single lifecycle policy bucket.
package com.gammarer.cdk.aws.secure_log_bucket;
/**
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.97.0 (build 729de35)", date = "2024-04-14T23:00:07.524Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Jsii(module = com.gammarer.cdk.aws.secure_log_bucket.$Module.class, fqn = "@gammarer/aws-secure-log-bucket.SecureLogBucket")
public class SecureLogBucket extends com.gammarer.cdk.aws.secure_bucket.SecureBucket {
protected SecureLogBucket(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected SecureLogBucket(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
/**
* @param scope This parameter is required.
* @param id This parameter is required.
* @param props
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public SecureLogBucket(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.Nullable com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucketProps props) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), props });
}
/**
* @param scope This parameter is required.
* @param id This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public SecureLogBucket(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required") });
}
/**
* A fluent builder for {@link com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucket}.
*/
@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}.
* @param scope This parameter is required.
* @param id This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static Builder create(final software.constructs.Construct scope, final java.lang.String id) {
return new Builder(scope, id);
}
private final software.constructs.Construct scope;
private final java.lang.String id;
private com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucketProps.Builder props;
private Builder(final software.constructs.Construct scope, final java.lang.String id) {
this.scope = scope;
this.id = id;
}
/**
* @return {@code this}
* @param bucketName This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder bucketName(final java.lang.String bucketName) {
this.props().bucketName(bucketName);
return this;
}
/**
* @return {@code this}
* @param changeClassTransition This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder changeClassTransition(final com.gammarer.cdk.aws.secure_log_bucket.StorageClassTransitionProperty changeClassTransition) {
this.props().changeClassTransition(changeClassTransition);
return this;
}
/**
* @return {@code this}
* @param encryption This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder encryption(final com.gammarer.cdk.aws.secure_bucket.SecureBucketEncryption encryption) {
this.props().encryption(encryption);
return this;
}
/**
* @return {@code this}
* @param objectOwnership This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder objectOwnership(final com.gammarer.cdk.aws.secure_bucket.SecureObjectOwnership objectOwnership) {
this.props().objectOwnership(objectOwnership);
return this;
}
/**
* @return a newly built instance of {@link com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucket}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucket build() {
return new com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucket(
this.scope,
this.id,
this.props != null ? this.props.build() : null
);
}
private com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucketProps.Builder props() {
if (this.props == null) {
this.props = new com.gammarer.cdk.aws.secure_log_bucket.SecureLogBucketProps.Builder();
}
return this.props;
}
}
}