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

com.pulumi.azurenative.videoanalyzer.inputs.VideoArchivalArgs Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show newest version
// *** 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.azurenative.videoanalyzer.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * Video archival properties.
 * 
 */
public final class VideoArchivalArgs extends com.pulumi.resources.ResourceArgs {

    public static final VideoArchivalArgs Empty = new VideoArchivalArgs();

    /**
     * Video retention period indicates the maximum age of the video archive segments which are intended to be kept in storage. It must be provided in the ISO8601 duration format in the granularity of days, up to a maximum of 10 years. For example, if this is set to P30D (30 days), content older than 30 days will be periodically deleted. This value can be updated at any time and the new desired retention period will be effective within 24 hours.
     * 
     */
    @Import(name="retentionPeriod")
    private @Nullable Output retentionPeriod;

    /**
     * @return Video retention period indicates the maximum age of the video archive segments which are intended to be kept in storage. It must be provided in the ISO8601 duration format in the granularity of days, up to a maximum of 10 years. For example, if this is set to P30D (30 days), content older than 30 days will be periodically deleted. This value can be updated at any time and the new desired retention period will be effective within 24 hours.
     * 
     */
    public Optional> retentionPeriod() {
        return Optional.ofNullable(this.retentionPeriod);
    }

    private VideoArchivalArgs() {}

    private VideoArchivalArgs(VideoArchivalArgs $) {
        this.retentionPeriod = $.retentionPeriod;
    }

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

    public static final class Builder {
        private VideoArchivalArgs $;

        public Builder() {
            $ = new VideoArchivalArgs();
        }

        public Builder(VideoArchivalArgs defaults) {
            $ = new VideoArchivalArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param retentionPeriod Video retention period indicates the maximum age of the video archive segments which are intended to be kept in storage. It must be provided in the ISO8601 duration format in the granularity of days, up to a maximum of 10 years. For example, if this is set to P30D (30 days), content older than 30 days will be periodically deleted. This value can be updated at any time and the new desired retention period will be effective within 24 hours.
         * 
         * @return builder
         * 
         */
        public Builder retentionPeriod(@Nullable Output retentionPeriod) {
            $.retentionPeriod = retentionPeriod;
            return this;
        }

        /**
         * @param retentionPeriod Video retention period indicates the maximum age of the video archive segments which are intended to be kept in storage. It must be provided in the ISO8601 duration format in the granularity of days, up to a maximum of 10 years. For example, if this is set to P30D (30 days), content older than 30 days will be periodically deleted. This value can be updated at any time and the new desired retention period will be effective within 24 hours.
         * 
         * @return builder
         * 
         */
        public Builder retentionPeriod(String retentionPeriod) {
            return retentionPeriod(Output.of(retentionPeriod));
        }

        public VideoArchivalArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy