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

com.pulumi.scm.outputs.GetIkeCryptoProfileListData 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.scm.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import com.pulumi.scm.outputs.GetIkeCryptoProfileListDataLifetime;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;

@CustomType
public final class GetIkeCryptoProfileListData {
    /**
     * @return IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled. Value must be less than or equal to 50. Default: `0`.
     * 
     */
    private Integer authenticationMultiple;
    /**
     * @return The DhGroups param. Individual elements in this list are subject to additional validation. String must be one of these: `"group1"`, `"group2"`, `"group5"`, `"group14"`, `"group19"`, `"group20"`.
     * 
     */
    private List dhGroups;
    /**
     * @return Encryption algorithm. Individual elements in this list are subject to additional validation. String must be one of these: `"des"`, `"3des"`, `"aes-128-cbc"`, `"aes-192-cbc"`, `"aes-256-cbc"`, `"aes-128-gcm"`, `"aes-256-gcm"`.
     * 
     */
    private List encryptions;
    /**
     * @return The Hashes param. Individual elements in this list are subject to additional validation. String must be one of these: `"md5"`, `"sha1"`, `"sha256"`, `"sha384"`, `"sha512"`.
     * 
     */
    private List hashes;
    /**
     * @return UUID of the resource.
     * 
     */
    private String id;
    /**
     * @return The Lifetime param.
     * 
     */
    private GetIkeCryptoProfileListDataLifetime lifetime;
    /**
     * @return Alphanumeric string begin with letter: [0-9a-zA-Z._-]. String length must not exceed 31 characters.
     * 
     */
    private String name;

    private GetIkeCryptoProfileListData() {}
    /**
     * @return IKEv2 SA reauthentication interval equals authetication-multiple * rekey-lifetime; 0 means reauthentication disabled. Value must be less than or equal to 50. Default: `0`.
     * 
     */
    public Integer authenticationMultiple() {
        return this.authenticationMultiple;
    }
    /**
     * @return The DhGroups param. Individual elements in this list are subject to additional validation. String must be one of these: `"group1"`, `"group2"`, `"group5"`, `"group14"`, `"group19"`, `"group20"`.
     * 
     */
    public List dhGroups() {
        return this.dhGroups;
    }
    /**
     * @return Encryption algorithm. Individual elements in this list are subject to additional validation. String must be one of these: `"des"`, `"3des"`, `"aes-128-cbc"`, `"aes-192-cbc"`, `"aes-256-cbc"`, `"aes-128-gcm"`, `"aes-256-gcm"`.
     * 
     */
    public List encryptions() {
        return this.encryptions;
    }
    /**
     * @return The Hashes param. Individual elements in this list are subject to additional validation. String must be one of these: `"md5"`, `"sha1"`, `"sha256"`, `"sha384"`, `"sha512"`.
     * 
     */
    public List hashes() {
        return this.hashes;
    }
    /**
     * @return UUID of the resource.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return The Lifetime param.
     * 
     */
    public GetIkeCryptoProfileListDataLifetime lifetime() {
        return this.lifetime;
    }
    /**
     * @return Alphanumeric string begin with letter: [0-9a-zA-Z._-]. String length must not exceed 31 characters.
     * 
     */
    public String name() {
        return this.name;
    }

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

    public static Builder builder(GetIkeCryptoProfileListData defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private Integer authenticationMultiple;
        private List dhGroups;
        private List encryptions;
        private List hashes;
        private String id;
        private GetIkeCryptoProfileListDataLifetime lifetime;
        private String name;
        public Builder() {}
        public Builder(GetIkeCryptoProfileListData defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.authenticationMultiple = defaults.authenticationMultiple;
    	      this.dhGroups = defaults.dhGroups;
    	      this.encryptions = defaults.encryptions;
    	      this.hashes = defaults.hashes;
    	      this.id = defaults.id;
    	      this.lifetime = defaults.lifetime;
    	      this.name = defaults.name;
        }

        @CustomType.Setter
        public Builder authenticationMultiple(Integer authenticationMultiple) {
            if (authenticationMultiple == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "authenticationMultiple");
            }
            this.authenticationMultiple = authenticationMultiple;
            return this;
        }
        @CustomType.Setter
        public Builder dhGroups(List dhGroups) {
            if (dhGroups == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "dhGroups");
            }
            this.dhGroups = dhGroups;
            return this;
        }
        public Builder dhGroups(String... dhGroups) {
            return dhGroups(List.of(dhGroups));
        }
        @CustomType.Setter
        public Builder encryptions(List encryptions) {
            if (encryptions == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "encryptions");
            }
            this.encryptions = encryptions;
            return this;
        }
        public Builder encryptions(String... encryptions) {
            return encryptions(List.of(encryptions));
        }
        @CustomType.Setter
        public Builder hashes(List hashes) {
            if (hashes == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "hashes");
            }
            this.hashes = hashes;
            return this;
        }
        public Builder hashes(String... hashes) {
            return hashes(List.of(hashes));
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder lifetime(GetIkeCryptoProfileListDataLifetime lifetime) {
            if (lifetime == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "lifetime");
            }
            this.lifetime = lifetime;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetIkeCryptoProfileListData", "name");
            }
            this.name = name;
            return this;
        }
        public GetIkeCryptoProfileListData build() {
            final var _resultValue = new GetIkeCryptoProfileListData();
            _resultValue.authenticationMultiple = authenticationMultiple;
            _resultValue.dhGroups = dhGroups;
            _resultValue.encryptions = encryptions;
            _resultValue.hashes = hashes;
            _resultValue.id = id;
            _resultValue.lifetime = lifetime;
            _resultValue.name = name;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy