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

com.pulumi.azurenative.network.outputs.BastionShareableLinkResponse Maven / Gradle / Ivy

There is a newer version: 2.78.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.network.outputs;

import com.pulumi.azurenative.network.outputs.VMResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;

@CustomType
public final class BastionShareableLinkResponse {
    /**
     * @return The unique Bastion Shareable Link to the virtual machine.
     * 
     */
    private String bsl;
    /**
     * @return The time when the link was created.
     * 
     */
    private String createdAt;
    /**
     * @return Optional field indicating the warning or error message related to the vm in case of partial failure.
     * 
     */
    private String message;
    /**
     * @return Reference of the virtual machine resource.
     * 
     */
    private VMResponse vm;

    private BastionShareableLinkResponse() {}
    /**
     * @return The unique Bastion Shareable Link to the virtual machine.
     * 
     */
    public String bsl() {
        return this.bsl;
    }
    /**
     * @return The time when the link was created.
     * 
     */
    public String createdAt() {
        return this.createdAt;
    }
    /**
     * @return Optional field indicating the warning or error message related to the vm in case of partial failure.
     * 
     */
    public String message() {
        return this.message;
    }
    /**
     * @return Reference of the virtual machine resource.
     * 
     */
    public VMResponse vm() {
        return this.vm;
    }

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

    public static Builder builder(BastionShareableLinkResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private String bsl;
        private String createdAt;
        private String message;
        private VMResponse vm;
        public Builder() {}
        public Builder(BastionShareableLinkResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.bsl = defaults.bsl;
    	      this.createdAt = defaults.createdAt;
    	      this.message = defaults.message;
    	      this.vm = defaults.vm;
        }

        @CustomType.Setter
        public Builder bsl(String bsl) {
            if (bsl == null) {
              throw new MissingRequiredPropertyException("BastionShareableLinkResponse", "bsl");
            }
            this.bsl = bsl;
            return this;
        }
        @CustomType.Setter
        public Builder createdAt(String createdAt) {
            if (createdAt == null) {
              throw new MissingRequiredPropertyException("BastionShareableLinkResponse", "createdAt");
            }
            this.createdAt = createdAt;
            return this;
        }
        @CustomType.Setter
        public Builder message(String message) {
            if (message == null) {
              throw new MissingRequiredPropertyException("BastionShareableLinkResponse", "message");
            }
            this.message = message;
            return this;
        }
        @CustomType.Setter
        public Builder vm(VMResponse vm) {
            if (vm == null) {
              throw new MissingRequiredPropertyException("BastionShareableLinkResponse", "vm");
            }
            this.vm = vm;
            return this;
        }
        public BastionShareableLinkResponse build() {
            final var _resultValue = new BastionShareableLinkResponse();
            _resultValue.bsl = bsl;
            _resultValue.createdAt = createdAt;
            _resultValue.message = message;
            _resultValue.vm = vm;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy