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

com.pulumi.azurenative.appplatform.outputs.IngressSettingsResponse 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.azurenative.appplatform.outputs;

import com.pulumi.azurenative.appplatform.outputs.IngressSettingsResponseClientAuth;
import com.pulumi.core.annotations.CustomType;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class IngressSettingsResponse {
    /**
     * @return How ingress should communicate with this app backend service.
     * 
     */
    private @Nullable String backendProtocol;
    /**
     * @return Client-Certification Authentication.
     * 
     */
    private @Nullable IngressSettingsResponseClientAuth clientAuth;
    /**
     * @return Ingress read time out in seconds.
     * 
     */
    private @Nullable Integer readTimeoutInSeconds;
    /**
     * @return Ingress send time out in seconds.
     * 
     */
    private @Nullable Integer sendTimeoutInSeconds;
    /**
     * @return Type of the affinity, set this to Cookie to enable session affinity.
     * 
     */
    private @Nullable String sessionAffinity;
    /**
     * @return Time in seconds until the cookie expires.
     * 
     */
    private @Nullable Integer sessionCookieMaxAge;

    private IngressSettingsResponse() {}
    /**
     * @return How ingress should communicate with this app backend service.
     * 
     */
    public Optional backendProtocol() {
        return Optional.ofNullable(this.backendProtocol);
    }
    /**
     * @return Client-Certification Authentication.
     * 
     */
    public Optional clientAuth() {
        return Optional.ofNullable(this.clientAuth);
    }
    /**
     * @return Ingress read time out in seconds.
     * 
     */
    public Optional readTimeoutInSeconds() {
        return Optional.ofNullable(this.readTimeoutInSeconds);
    }
    /**
     * @return Ingress send time out in seconds.
     * 
     */
    public Optional sendTimeoutInSeconds() {
        return Optional.ofNullable(this.sendTimeoutInSeconds);
    }
    /**
     * @return Type of the affinity, set this to Cookie to enable session affinity.
     * 
     */
    public Optional sessionAffinity() {
        return Optional.ofNullable(this.sessionAffinity);
    }
    /**
     * @return Time in seconds until the cookie expires.
     * 
     */
    public Optional sessionCookieMaxAge() {
        return Optional.ofNullable(this.sessionCookieMaxAge);
    }

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

    public static Builder builder(IngressSettingsResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String backendProtocol;
        private @Nullable IngressSettingsResponseClientAuth clientAuth;
        private @Nullable Integer readTimeoutInSeconds;
        private @Nullable Integer sendTimeoutInSeconds;
        private @Nullable String sessionAffinity;
        private @Nullable Integer sessionCookieMaxAge;
        public Builder() {}
        public Builder(IngressSettingsResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.backendProtocol = defaults.backendProtocol;
    	      this.clientAuth = defaults.clientAuth;
    	      this.readTimeoutInSeconds = defaults.readTimeoutInSeconds;
    	      this.sendTimeoutInSeconds = defaults.sendTimeoutInSeconds;
    	      this.sessionAffinity = defaults.sessionAffinity;
    	      this.sessionCookieMaxAge = defaults.sessionCookieMaxAge;
        }

        @CustomType.Setter
        public Builder backendProtocol(@Nullable String backendProtocol) {

            this.backendProtocol = backendProtocol;
            return this;
        }
        @CustomType.Setter
        public Builder clientAuth(@Nullable IngressSettingsResponseClientAuth clientAuth) {

            this.clientAuth = clientAuth;
            return this;
        }
        @CustomType.Setter
        public Builder readTimeoutInSeconds(@Nullable Integer readTimeoutInSeconds) {

            this.readTimeoutInSeconds = readTimeoutInSeconds;
            return this;
        }
        @CustomType.Setter
        public Builder sendTimeoutInSeconds(@Nullable Integer sendTimeoutInSeconds) {

            this.sendTimeoutInSeconds = sendTimeoutInSeconds;
            return this;
        }
        @CustomType.Setter
        public Builder sessionAffinity(@Nullable String sessionAffinity) {

            this.sessionAffinity = sessionAffinity;
            return this;
        }
        @CustomType.Setter
        public Builder sessionCookieMaxAge(@Nullable Integer sessionCookieMaxAge) {

            this.sessionCookieMaxAge = sessionCookieMaxAge;
            return this;
        }
        public IngressSettingsResponse build() {
            final var _resultValue = new IngressSettingsResponse();
            _resultValue.backendProtocol = backendProtocol;
            _resultValue.clientAuth = clientAuth;
            _resultValue.readTimeoutInSeconds = readTimeoutInSeconds;
            _resultValue.sendTimeoutInSeconds = sendTimeoutInSeconds;
            _resultValue.sessionAffinity = sessionAffinity;
            _resultValue.sessionCookieMaxAge = sessionCookieMaxAge;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy