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

com.pulumi.azure.orbital.outputs.ContactProfileLinkChannel Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

There is a newer version: 6.10.0-alpha.1731737215
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.azure.orbital.outputs;

import com.pulumi.azure.orbital.outputs.ContactProfileLinkChannelEndPoint;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class ContactProfileLinkChannel {
    /**
     * @return Bandwidth in MHz.
     * 
     */
    private Double bandwidthMhz;
    /**
     * @return Center frequency in MHz.
     * 
     */
    private Double centerFrequencyMhz;
    /**
     * @return Copy of the modem configuration file such as Kratos QRadio or Kratos QuantumRx. Only valid for downlink directions. If provided, the modem connects to the customer endpoint and sends demodulated data instead of a VITA.49 stream.
     * 
     */
    private @Nullable String demodulationConfiguration;
    /**
     * @return Customer End point to store/retrieve data during a contact. An `end_point` block as defined below.
     * 
     */
    private List endPoints;
    /**
     * @return Copy of the modem configuration file such as Kratos QRadio. Only valid for uplink directions. If provided, the modem connects to the customer endpoint and accepts commands from the customer instead of a VITA.49 stream.
     * 
     */
    private @Nullable String modulationConfiguration;
    /**
     * @return Name of the channel.
     * 
     */
    private String name;

    private ContactProfileLinkChannel() {}
    /**
     * @return Bandwidth in MHz.
     * 
     */
    public Double bandwidthMhz() {
        return this.bandwidthMhz;
    }
    /**
     * @return Center frequency in MHz.
     * 
     */
    public Double centerFrequencyMhz() {
        return this.centerFrequencyMhz;
    }
    /**
     * @return Copy of the modem configuration file such as Kratos QRadio or Kratos QuantumRx. Only valid for downlink directions. If provided, the modem connects to the customer endpoint and sends demodulated data instead of a VITA.49 stream.
     * 
     */
    public Optional demodulationConfiguration() {
        return Optional.ofNullable(this.demodulationConfiguration);
    }
    /**
     * @return Customer End point to store/retrieve data during a contact. An `end_point` block as defined below.
     * 
     */
    public List endPoints() {
        return this.endPoints;
    }
    /**
     * @return Copy of the modem configuration file such as Kratos QRadio. Only valid for uplink directions. If provided, the modem connects to the customer endpoint and accepts commands from the customer instead of a VITA.49 stream.
     * 
     */
    public Optional modulationConfiguration() {
        return Optional.ofNullable(this.modulationConfiguration);
    }
    /**
     * @return Name of the channel.
     * 
     */
    public String name() {
        return this.name;
    }

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

    public static Builder builder(ContactProfileLinkChannel defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private Double bandwidthMhz;
        private Double centerFrequencyMhz;
        private @Nullable String demodulationConfiguration;
        private List endPoints;
        private @Nullable String modulationConfiguration;
        private String name;
        public Builder() {}
        public Builder(ContactProfileLinkChannel defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.bandwidthMhz = defaults.bandwidthMhz;
    	      this.centerFrequencyMhz = defaults.centerFrequencyMhz;
    	      this.demodulationConfiguration = defaults.demodulationConfiguration;
    	      this.endPoints = defaults.endPoints;
    	      this.modulationConfiguration = defaults.modulationConfiguration;
    	      this.name = defaults.name;
        }

        @CustomType.Setter
        public Builder bandwidthMhz(Double bandwidthMhz) {
            if (bandwidthMhz == null) {
              throw new MissingRequiredPropertyException("ContactProfileLinkChannel", "bandwidthMhz");
            }
            this.bandwidthMhz = bandwidthMhz;
            return this;
        }
        @CustomType.Setter
        public Builder centerFrequencyMhz(Double centerFrequencyMhz) {
            if (centerFrequencyMhz == null) {
              throw new MissingRequiredPropertyException("ContactProfileLinkChannel", "centerFrequencyMhz");
            }
            this.centerFrequencyMhz = centerFrequencyMhz;
            return this;
        }
        @CustomType.Setter
        public Builder demodulationConfiguration(@Nullable String demodulationConfiguration) {

            this.demodulationConfiguration = demodulationConfiguration;
            return this;
        }
        @CustomType.Setter
        public Builder endPoints(List endPoints) {
            if (endPoints == null) {
              throw new MissingRequiredPropertyException("ContactProfileLinkChannel", "endPoints");
            }
            this.endPoints = endPoints;
            return this;
        }
        public Builder endPoints(ContactProfileLinkChannelEndPoint... endPoints) {
            return endPoints(List.of(endPoints));
        }
        @CustomType.Setter
        public Builder modulationConfiguration(@Nullable String modulationConfiguration) {

            this.modulationConfiguration = modulationConfiguration;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("ContactProfileLinkChannel", "name");
            }
            this.name = name;
            return this;
        }
        public ContactProfileLinkChannel build() {
            final var _resultValue = new ContactProfileLinkChannel();
            _resultValue.bandwidthMhz = bandwidthMhz;
            _resultValue.centerFrequencyMhz = centerFrequencyMhz;
            _resultValue.demodulationConfiguration = demodulationConfiguration;
            _resultValue.endPoints = endPoints;
            _resultValue.modulationConfiguration = modulationConfiguration;
            _resultValue.name = name;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy