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

com.pulumi.azure.orbital.outputs.SpacecraftLink 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.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
import java.lang.String;
import java.util.Objects;

@CustomType
public final class SpacecraftLink {
    /**
     * @return Bandwidth in Mhz.
     * 
     */
    private Double bandwidthMhz;
    /**
     * @return Center frequency in Mhz.
     * 
     * > **Note:** The value of `center_frequency_mhz +/- bandwidth_mhz / 2` should fall in one of these ranges: `Uplink/LHCP`: [2025, 2120]; `Uplink/Linear`: [399, 403],[435, 438],[449, 451]; `Uplink/RHCP`: [399, 403],[435, 438],[449, 451],[2025, 2120]; `Downlink/LHCP`: [2200, 2300], [7500, 8400]; `Downlink/Linear`: [399, 403], [435, 438], [449, 451]; Downlink/Linear`: [399, 403], [435, 438], [449, 451], [2200, 2300], [7500, 8400]
     * 
     */
    private Double centerFrequencyMhz;
    /**
     * @return Direction if the communication. Possible values are `Uplink` and `Downlink`.
     * 
     */
    private String direction;
    /**
     * @return Name of the link.
     * 
     */
    private String name;
    /**
     * @return Polarization. Possible values are `RHCP`, `LHCP`, `linearVertical` and `linearHorizontal`.
     * 
     */
    private String polarization;

    private SpacecraftLink() {}
    /**
     * @return Bandwidth in Mhz.
     * 
     */
    public Double bandwidthMhz() {
        return this.bandwidthMhz;
    }
    /**
     * @return Center frequency in Mhz.
     * 
     * > **Note:** The value of `center_frequency_mhz +/- bandwidth_mhz / 2` should fall in one of these ranges: `Uplink/LHCP`: [2025, 2120]; `Uplink/Linear`: [399, 403],[435, 438],[449, 451]; `Uplink/RHCP`: [399, 403],[435, 438],[449, 451],[2025, 2120]; `Downlink/LHCP`: [2200, 2300], [7500, 8400]; `Downlink/Linear`: [399, 403], [435, 438], [449, 451]; Downlink/Linear`: [399, 403], [435, 438], [449, 451], [2200, 2300], [7500, 8400]
     * 
     */
    public Double centerFrequencyMhz() {
        return this.centerFrequencyMhz;
    }
    /**
     * @return Direction if the communication. Possible values are `Uplink` and `Downlink`.
     * 
     */
    public String direction() {
        return this.direction;
    }
    /**
     * @return Name of the link.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Polarization. Possible values are `RHCP`, `LHCP`, `linearVertical` and `linearHorizontal`.
     * 
     */
    public String polarization() {
        return this.polarization;
    }

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

    public static Builder builder(SpacecraftLink defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private Double bandwidthMhz;
        private Double centerFrequencyMhz;
        private String direction;
        private String name;
        private String polarization;
        public Builder() {}
        public Builder(SpacecraftLink defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.bandwidthMhz = defaults.bandwidthMhz;
    	      this.centerFrequencyMhz = defaults.centerFrequencyMhz;
    	      this.direction = defaults.direction;
    	      this.name = defaults.name;
    	      this.polarization = defaults.polarization;
        }

        @CustomType.Setter
        public Builder bandwidthMhz(Double bandwidthMhz) {
            if (bandwidthMhz == null) {
              throw new MissingRequiredPropertyException("SpacecraftLink", "bandwidthMhz");
            }
            this.bandwidthMhz = bandwidthMhz;
            return this;
        }
        @CustomType.Setter
        public Builder centerFrequencyMhz(Double centerFrequencyMhz) {
            if (centerFrequencyMhz == null) {
              throw new MissingRequiredPropertyException("SpacecraftLink", "centerFrequencyMhz");
            }
            this.centerFrequencyMhz = centerFrequencyMhz;
            return this;
        }
        @CustomType.Setter
        public Builder direction(String direction) {
            if (direction == null) {
              throw new MissingRequiredPropertyException("SpacecraftLink", "direction");
            }
            this.direction = direction;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("SpacecraftLink", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder polarization(String polarization) {
            if (polarization == null) {
              throw new MissingRequiredPropertyException("SpacecraftLink", "polarization");
            }
            this.polarization = polarization;
            return this;
        }
        public SpacecraftLink build() {
            final var _resultValue = new SpacecraftLink();
            _resultValue.bandwidthMhz = bandwidthMhz;
            _resultValue.centerFrequencyMhz = centerFrequencyMhz;
            _resultValue.direction = direction;
            _resultValue.name = name;
            _resultValue.polarization = polarization;
            return _resultValue;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy