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

com.pulumi.aws.s3control.outputs.StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.aws.s3control.outputs;

import com.pulumi.aws.s3control.outputs.StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelActivityMetrics;
import com.pulumi.aws.s3control.outputs.StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedCostOptimizationMetrics;
import com.pulumi.aws.s3control.outputs.StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedDataProtectionMetrics;
import com.pulumi.aws.s3control.outputs.StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelDetailedStatusCodeMetrics;
import com.pulumi.aws.s3control.outputs.StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelPrefixLevel;
import com.pulumi.core.annotations.CustomType;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel {
    /**
     * @return S3 Storage Lens activity metrics. See Activity Metrics above for more details.
     * 
     */
    private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelActivityMetrics activityMetrics;
    /**
     * @return Advanced cost-optimization metrics for S3 Storage Lens. See Advanced Cost-Optimization Metrics above for more details.
     * 
     */
    private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedCostOptimizationMetrics advancedCostOptimizationMetrics;
    /**
     * @return Advanced data-protection metrics for S3 Storage Lens. See Advanced Data-Protection Metrics above for more details.
     * 
     */
    private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedDataProtectionMetrics advancedDataProtectionMetrics;
    /**
     * @return Detailed status code metrics for S3 Storage Lens. See Detailed Status Code Metrics above for more details.
     * 
     */
    private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelDetailedStatusCodeMetrics detailedStatusCodeMetrics;
    /**
     * @return Prefix-level metrics for S3 Storage Lens. See Prefix Level below for more details.
     * 
     */
    private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelPrefixLevel prefixLevel;

    private StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel() {}
    /**
     * @return S3 Storage Lens activity metrics. See Activity Metrics above for more details.
     * 
     */
    public Optional activityMetrics() {
        return Optional.ofNullable(this.activityMetrics);
    }
    /**
     * @return Advanced cost-optimization metrics for S3 Storage Lens. See Advanced Cost-Optimization Metrics above for more details.
     * 
     */
    public Optional advancedCostOptimizationMetrics() {
        return Optional.ofNullable(this.advancedCostOptimizationMetrics);
    }
    /**
     * @return Advanced data-protection metrics for S3 Storage Lens. See Advanced Data-Protection Metrics above for more details.
     * 
     */
    public Optional advancedDataProtectionMetrics() {
        return Optional.ofNullable(this.advancedDataProtectionMetrics);
    }
    /**
     * @return Detailed status code metrics for S3 Storage Lens. See Detailed Status Code Metrics above for more details.
     * 
     */
    public Optional detailedStatusCodeMetrics() {
        return Optional.ofNullable(this.detailedStatusCodeMetrics);
    }
    /**
     * @return Prefix-level metrics for S3 Storage Lens. See Prefix Level below for more details.
     * 
     */
    public Optional prefixLevel() {
        return Optional.ofNullable(this.prefixLevel);
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelActivityMetrics activityMetrics;
        private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedCostOptimizationMetrics advancedCostOptimizationMetrics;
        private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedDataProtectionMetrics advancedDataProtectionMetrics;
        private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelDetailedStatusCodeMetrics detailedStatusCodeMetrics;
        private @Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelPrefixLevel prefixLevel;
        public Builder() {}
        public Builder(StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.activityMetrics = defaults.activityMetrics;
    	      this.advancedCostOptimizationMetrics = defaults.advancedCostOptimizationMetrics;
    	      this.advancedDataProtectionMetrics = defaults.advancedDataProtectionMetrics;
    	      this.detailedStatusCodeMetrics = defaults.detailedStatusCodeMetrics;
    	      this.prefixLevel = defaults.prefixLevel;
        }

        @CustomType.Setter
        public Builder activityMetrics(@Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelActivityMetrics activityMetrics) {

            this.activityMetrics = activityMetrics;
            return this;
        }
        @CustomType.Setter
        public Builder advancedCostOptimizationMetrics(@Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedCostOptimizationMetrics advancedCostOptimizationMetrics) {

            this.advancedCostOptimizationMetrics = advancedCostOptimizationMetrics;
            return this;
        }
        @CustomType.Setter
        public Builder advancedDataProtectionMetrics(@Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelAdvancedDataProtectionMetrics advancedDataProtectionMetrics) {

            this.advancedDataProtectionMetrics = advancedDataProtectionMetrics;
            return this;
        }
        @CustomType.Setter
        public Builder detailedStatusCodeMetrics(@Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelDetailedStatusCodeMetrics detailedStatusCodeMetrics) {

            this.detailedStatusCodeMetrics = detailedStatusCodeMetrics;
            return this;
        }
        @CustomType.Setter
        public Builder prefixLevel(@Nullable StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevelPrefixLevel prefixLevel) {

            this.prefixLevel = prefixLevel;
            return this;
        }
        public StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel build() {
            final var _resultValue = new StorageLensConfigurationStorageLensConfigurationAccountLevelBucketLevel();
            _resultValue.activityMetrics = activityMetrics;
            _resultValue.advancedCostOptimizationMetrics = advancedCostOptimizationMetrics;
            _resultValue.advancedDataProtectionMetrics = advancedDataProtectionMetrics;
            _resultValue.detailedStatusCodeMetrics = detailedStatusCodeMetrics;
            _resultValue.prefixLevel = prefixLevel;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy