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

com.pulumi.libvirt.inputs.GetNodeDeviceInfoCapabilityArgs Maven / Gradle / Ivy

There is a newer version: 0.6.0-alpha.1732600491
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.libvirt.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import com.pulumi.libvirt.inputs.GetNodeDeviceInfoCapabilityIommuGroupArgs;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class GetNodeDeviceInfoCapabilityArgs extends com.pulumi.resources.ResourceArgs {

    public static final GetNodeDeviceInfoCapabilityArgs Empty = new GetNodeDeviceInfoCapabilityArgs();

    /**
     * If present, the MAC address of the device
     * 
     */
    @Import(name="address")
    private @Nullable Output address;

    /**
     * @return If present, the MAC address of the device
     * 
     */
    public Optional> address() {
        return Optional.ofNullable(this.address);
    }

    /**
     * Block device name
     * 
     */
    @Import(name="block", required=true)
    private Output block;

    /**
     * @return Block device name
     * 
     */
    public Output block() {
        return this.block;
    }

    /**
     * The bus within the host
     * 
     */
    @Import(name="bus", required=true)
    private Output bus;

    /**
     * @return The bus within the host
     * 
     */
    public Output bus() {
        return this.bus;
    }

    /**
     * Holds key `type` that describes the type of network interface: `80203` for IEEE 802.3 or `80211` for IEEE 802.11
     * 
     */
    @Import(name="capability")
    private @Nullable Output> capability;

    /**
     * @return Holds key `type` that describes the type of network interface: `80203` for IEEE 802.3 or `80211` for IEEE 802.11
     * 
     */
    public Optional>> capability() {
        return Optional.ofNullable(this.capability);
    }

    /**
     * Device class
     * 
     */
    @Import(name="class", required=true)
    private Output class_;

    /**
     * @return Device class
     * 
     */
    public Output class_() {
        return this.class_;
    }

    @Import(name="description", required=true)
    private Output description;

    public Output description() {
        return this.description;
    }

    /**
     * Which device within the \
     * 
     */
    @Import(name="device", required=true)
    private Output device;

    /**
     * @return Which device within the \
     * 
     */
    public Output device() {
        return this.device;
    }

    /**
     * Device PCI domain
     * 
     */
    @Import(name="domain", required=true)
    private Output domain;

    /**
     * @return Device PCI domain
     * 
     */
    public Output domain() {
        return this.domain;
    }

    /**
     * Device drive type
     * 
     */
    @Import(name="driveType", required=true)
    private Output driveType;

    /**
     * @return Device drive type
     * 
     */
    public Output driveType() {
        return this.driveType;
    }

    /**
     * Type of DRM device: `render` or `card`
     * 
     */
    @Import(name="drmType", required=true)
    private Output drmType;

    /**
     * @return Type of DRM device: `render` or `card`
     * 
     */
    public Output drmType() {
        return this.drmType;
    }

    @Import(name="features")
    private @Nullable Output> features;

    public Optional>> features() {
        return Optional.ofNullable(this.features);
    }

    @Import(name="firmware")
    private @Nullable Output> firmware;

    public Optional>> firmware() {
        return Optional.ofNullable(this.firmware);
    }

    /**
     * Device PCI function
     * 
     */
    @Import(name="function", required=true)
    private Output function;

    /**
     * @return Device PCI function
     * 
     */
    public Output function() {
        return this.function;
    }

    @Import(name="hardware")
    private @Nullable Output> hardware;

    public Optional>> hardware() {
        return Optional.ofNullable(this.hardware);
    }

    /**
     * The SCSI host containing the device
     * 
     */
    @Import(name="host", required=true)
    private Output host;

    /**
     * @return The SCSI host containing the device
     * 
     */
    public Output host() {
        return this.host;
    }

    /**
     * The interface name tied to this device
     * 
     */
    @Import(name="interface")
    private @Nullable Output interface_;

    /**
     * @return The interface name tied to this device
     * 
     */
    public Optional> interface_() {
        return Optional.ofNullable(this.interface_);
    }

    /**
     * Structure that holds IOMMU Group `number` and the list of devices that are part of the group
     * 
     */
    @Import(name="iommuGroup", required=true)
    private Output iommuGroup;

    /**
     * @return Structure that holds IOMMU Group `number` and the list of devices that are part of the group
     * 
     */
    public Output iommuGroup() {
        return this.iommuGroup;
    }

    /**
     * Optional to reflect the status of the link via `speed` and `state` keys
     * 
     */
    @Import(name="link")
    private @Nullable Output> link;

    /**
     * @return Optional to reflect the status of the link via `speed` and `state` keys
     * 
     */
    public Optional>> link() {
        return Optional.ofNullable(this.link);
    }

    /**
     * Device logical block size
     * 
     */
    @Import(name="logicalBlockSize", required=true)
    private Output logicalBlockSize;

    /**
     * @return Device logical block size
     * 
     */
    public Output logicalBlockSize() {
        return this.logicalBlockSize;
    }

    /**
     * The lun within the target
     * 
     */
    @Import(name="lun", required=true)
    private Output lun;

    /**
     * @return The lun within the target
     * 
     */
    public Output lun() {
        return this.lun;
    }

    /**
     * Device model
     * 
     */
    @Import(name="model", required=true)
    private Output model;

    /**
     * @return Device model
     * 
     */
    public Output model() {
        return this.model;
    }

    /**
     * Number of blocks on the device
     * 
     */
    @Import(name="numBlocks", required=true)
    private Output numBlocks;

    /**
     * @return Number of blocks on the device
     * 
     */
    public Output numBlocks() {
        return this.numBlocks;
    }

    /**
     * Device number
     * 
     */
    @Import(name="number", required=true)
    private Output number;

    /**
     * @return Device number
     * 
     */
    public Output number() {
        return this.number;
    }

    /**
     * If present, the product `id` and `name` from the device ROM
     * 
     */
    @Import(name="product")
    private @Nullable Output> product;

    /**
     * @return If present, the product `id` and `name` from the device ROM
     * 
     */
    public Optional>> product() {
        return Optional.ofNullable(this.product);
    }

    /**
     * Device protocol
     * 
     */
    @Import(name="protocol", required=true)
    private Output protocol;

    /**
     * @return Device protocol
     * 
     */
    public Output protocol() {
        return this.protocol;
    }

    /**
     * The type of SCSI device
     * 
     */
    @Import(name="scsiType", required=true)
    private Output scsiType;

    /**
     * @return The type of SCSI device
     * 
     */
    public Output scsiType() {
        return this.scsiType;
    }

    /**
     * Device serial number
     * 
     */
    @Import(name="serial", required=true)
    private Output serial;

    /**
     * @return Device serial number
     * 
     */
    public Output serial() {
        return this.serial;
    }

    /**
     * Device size in bytes
     * 
     */
    @Import(name="size", required=true)
    private Output size;

    /**
     * @return Device size in bytes
     * 
     */
    public Output size() {
        return this.size;
    }

    /**
     * Device PCI slot
     * 
     */
    @Import(name="slot", required=true)
    private Output slot;

    /**
     * @return Device PCI slot
     * 
     */
    public Output slot() {
        return this.slot;
    }

    /**
     * Device subclass
     * 
     */
    @Import(name="subclass", required=true)
    private Output subclass;

    /**
     * @return Device subclass
     * 
     */
    public Output subclass() {
        return this.subclass;
    }

    /**
     * The target within the bus
     * 
     */
    @Import(name="target", required=true)
    private Output target;

    /**
     * @return The target within the bus
     * 
     */
    public Output target() {
        return this.target;
    }

    /**
     * Device type: `pci`, `storage`, `usb`
     * 
     */
    @Import(name="type", required=true)
    private Output type;

    /**
     * @return Device type: `pci`, `storage`, `usb`
     * 
     */
    public Output type() {
        return this.type;
    }

    /**
     * This optionally provides the value from the 'unique_id' file found in the scsi_host's directory
     * 
     */
    @Import(name="uniqueId", required=true)
    private Output uniqueId;

    /**
     * @return This optionally provides the value from the 'unique_id' file found in the scsi_host's directory
     * 
     */
    public Output uniqueId() {
        return this.uniqueId;
    }

    /**
     * If present, the vendor `id` and `name` from the device ROM
     * 
     */
    @Import(name="vendor")
    private @Nullable Output> vendor;

    /**
     * @return If present, the vendor `id` and `name` from the device ROM
     * 
     */
    public Optional>> vendor() {
        return Optional.ofNullable(this.vendor);
    }

    private GetNodeDeviceInfoCapabilityArgs() {}

    private GetNodeDeviceInfoCapabilityArgs(GetNodeDeviceInfoCapabilityArgs $) {
        this.address = $.address;
        this.block = $.block;
        this.bus = $.bus;
        this.capability = $.capability;
        this.class_ = $.class_;
        this.description = $.description;
        this.device = $.device;
        this.domain = $.domain;
        this.driveType = $.driveType;
        this.drmType = $.drmType;
        this.features = $.features;
        this.firmware = $.firmware;
        this.function = $.function;
        this.hardware = $.hardware;
        this.host = $.host;
        this.interface_ = $.interface_;
        this.iommuGroup = $.iommuGroup;
        this.link = $.link;
        this.logicalBlockSize = $.logicalBlockSize;
        this.lun = $.lun;
        this.model = $.model;
        this.numBlocks = $.numBlocks;
        this.number = $.number;
        this.product = $.product;
        this.protocol = $.protocol;
        this.scsiType = $.scsiType;
        this.serial = $.serial;
        this.size = $.size;
        this.slot = $.slot;
        this.subclass = $.subclass;
        this.target = $.target;
        this.type = $.type;
        this.uniqueId = $.uniqueId;
        this.vendor = $.vendor;
    }

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

    public static final class Builder {
        private GetNodeDeviceInfoCapabilityArgs $;

        public Builder() {
            $ = new GetNodeDeviceInfoCapabilityArgs();
        }

        public Builder(GetNodeDeviceInfoCapabilityArgs defaults) {
            $ = new GetNodeDeviceInfoCapabilityArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param address If present, the MAC address of the device
         * 
         * @return builder
         * 
         */
        public Builder address(@Nullable Output address) {
            $.address = address;
            return this;
        }

        /**
         * @param address If present, the MAC address of the device
         * 
         * @return builder
         * 
         */
        public Builder address(String address) {
            return address(Output.of(address));
        }

        /**
         * @param block Block device name
         * 
         * @return builder
         * 
         */
        public Builder block(Output block) {
            $.block = block;
            return this;
        }

        /**
         * @param block Block device name
         * 
         * @return builder
         * 
         */
        public Builder block(String block) {
            return block(Output.of(block));
        }

        /**
         * @param bus The bus within the host
         * 
         * @return builder
         * 
         */
        public Builder bus(Output bus) {
            $.bus = bus;
            return this;
        }

        /**
         * @param bus The bus within the host
         * 
         * @return builder
         * 
         */
        public Builder bus(String bus) {
            return bus(Output.of(bus));
        }

        /**
         * @param capability Holds key `type` that describes the type of network interface: `80203` for IEEE 802.3 or `80211` for IEEE 802.11
         * 
         * @return builder
         * 
         */
        public Builder capability(@Nullable Output> capability) {
            $.capability = capability;
            return this;
        }

        /**
         * @param capability Holds key `type` that describes the type of network interface: `80203` for IEEE 802.3 or `80211` for IEEE 802.11
         * 
         * @return builder
         * 
         */
        public Builder capability(Map capability) {
            return capability(Output.of(capability));
        }

        /**
         * @param class_ Device class
         * 
         * @return builder
         * 
         */
        public Builder class_(Output class_) {
            $.class_ = class_;
            return this;
        }

        /**
         * @param class_ Device class
         * 
         * @return builder
         * 
         */
        public Builder class_(String class_) {
            return class_(Output.of(class_));
        }

        public Builder description(Output description) {
            $.description = description;
            return this;
        }

        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param device Which device within the \
         * 
         * @return builder
         * 
         */
        public Builder device(Output device) {
            $.device = device;
            return this;
        }

        /**
         * @param device Which device within the \
         * 
         * @return builder
         * 
         */
        public Builder device(String device) {
            return device(Output.of(device));
        }

        /**
         * @param domain Device PCI domain
         * 
         * @return builder
         * 
         */
        public Builder domain(Output domain) {
            $.domain = domain;
            return this;
        }

        /**
         * @param domain Device PCI domain
         * 
         * @return builder
         * 
         */
        public Builder domain(String domain) {
            return domain(Output.of(domain));
        }

        /**
         * @param driveType Device drive type
         * 
         * @return builder
         * 
         */
        public Builder driveType(Output driveType) {
            $.driveType = driveType;
            return this;
        }

        /**
         * @param driveType Device drive type
         * 
         * @return builder
         * 
         */
        public Builder driveType(String driveType) {
            return driveType(Output.of(driveType));
        }

        /**
         * @param drmType Type of DRM device: `render` or `card`
         * 
         * @return builder
         * 
         */
        public Builder drmType(Output drmType) {
            $.drmType = drmType;
            return this;
        }

        /**
         * @param drmType Type of DRM device: `render` or `card`
         * 
         * @return builder
         * 
         */
        public Builder drmType(String drmType) {
            return drmType(Output.of(drmType));
        }

        public Builder features(@Nullable Output> features) {
            $.features = features;
            return this;
        }

        public Builder features(List features) {
            return features(Output.of(features));
        }

        public Builder features(String... features) {
            return features(List.of(features));
        }

        public Builder firmware(@Nullable Output> firmware) {
            $.firmware = firmware;
            return this;
        }

        public Builder firmware(Map firmware) {
            return firmware(Output.of(firmware));
        }

        /**
         * @param function Device PCI function
         * 
         * @return builder
         * 
         */
        public Builder function(Output function) {
            $.function = function;
            return this;
        }

        /**
         * @param function Device PCI function
         * 
         * @return builder
         * 
         */
        public Builder function(String function) {
            return function(Output.of(function));
        }

        public Builder hardware(@Nullable Output> hardware) {
            $.hardware = hardware;
            return this;
        }

        public Builder hardware(Map hardware) {
            return hardware(Output.of(hardware));
        }

        /**
         * @param host The SCSI host containing the device
         * 
         * @return builder
         * 
         */
        public Builder host(Output host) {
            $.host = host;
            return this;
        }

        /**
         * @param host The SCSI host containing the device
         * 
         * @return builder
         * 
         */
        public Builder host(String host) {
            return host(Output.of(host));
        }

        /**
         * @param interface_ The interface name tied to this device
         * 
         * @return builder
         * 
         */
        public Builder interface_(@Nullable Output interface_) {
            $.interface_ = interface_;
            return this;
        }

        /**
         * @param interface_ The interface name tied to this device
         * 
         * @return builder
         * 
         */
        public Builder interface_(String interface_) {
            return interface_(Output.of(interface_));
        }

        /**
         * @param iommuGroup Structure that holds IOMMU Group `number` and the list of devices that are part of the group
         * 
         * @return builder
         * 
         */
        public Builder iommuGroup(Output iommuGroup) {
            $.iommuGroup = iommuGroup;
            return this;
        }

        /**
         * @param iommuGroup Structure that holds IOMMU Group `number` and the list of devices that are part of the group
         * 
         * @return builder
         * 
         */
        public Builder iommuGroup(GetNodeDeviceInfoCapabilityIommuGroupArgs iommuGroup) {
            return iommuGroup(Output.of(iommuGroup));
        }

        /**
         * @param link Optional to reflect the status of the link via `speed` and `state` keys
         * 
         * @return builder
         * 
         */
        public Builder link(@Nullable Output> link) {
            $.link = link;
            return this;
        }

        /**
         * @param link Optional to reflect the status of the link via `speed` and `state` keys
         * 
         * @return builder
         * 
         */
        public Builder link(Map link) {
            return link(Output.of(link));
        }

        /**
         * @param logicalBlockSize Device logical block size
         * 
         * @return builder
         * 
         */
        public Builder logicalBlockSize(Output logicalBlockSize) {
            $.logicalBlockSize = logicalBlockSize;
            return this;
        }

        /**
         * @param logicalBlockSize Device logical block size
         * 
         * @return builder
         * 
         */
        public Builder logicalBlockSize(String logicalBlockSize) {
            return logicalBlockSize(Output.of(logicalBlockSize));
        }

        /**
         * @param lun The lun within the target
         * 
         * @return builder
         * 
         */
        public Builder lun(Output lun) {
            $.lun = lun;
            return this;
        }

        /**
         * @param lun The lun within the target
         * 
         * @return builder
         * 
         */
        public Builder lun(String lun) {
            return lun(Output.of(lun));
        }

        /**
         * @param model Device model
         * 
         * @return builder
         * 
         */
        public Builder model(Output model) {
            $.model = model;
            return this;
        }

        /**
         * @param model Device model
         * 
         * @return builder
         * 
         */
        public Builder model(String model) {
            return model(Output.of(model));
        }

        /**
         * @param numBlocks Number of blocks on the device
         * 
         * @return builder
         * 
         */
        public Builder numBlocks(Output numBlocks) {
            $.numBlocks = numBlocks;
            return this;
        }

        /**
         * @param numBlocks Number of blocks on the device
         * 
         * @return builder
         * 
         */
        public Builder numBlocks(String numBlocks) {
            return numBlocks(Output.of(numBlocks));
        }

        /**
         * @param number Device number
         * 
         * @return builder
         * 
         */
        public Builder number(Output number) {
            $.number = number;
            return this;
        }

        /**
         * @param number Device number
         * 
         * @return builder
         * 
         */
        public Builder number(String number) {
            return number(Output.of(number));
        }

        /**
         * @param product If present, the product `id` and `name` from the device ROM
         * 
         * @return builder
         * 
         */
        public Builder product(@Nullable Output> product) {
            $.product = product;
            return this;
        }

        /**
         * @param product If present, the product `id` and `name` from the device ROM
         * 
         * @return builder
         * 
         */
        public Builder product(Map product) {
            return product(Output.of(product));
        }

        /**
         * @param protocol Device protocol
         * 
         * @return builder
         * 
         */
        public Builder protocol(Output protocol) {
            $.protocol = protocol;
            return this;
        }

        /**
         * @param protocol Device protocol
         * 
         * @return builder
         * 
         */
        public Builder protocol(String protocol) {
            return protocol(Output.of(protocol));
        }

        /**
         * @param scsiType The type of SCSI device
         * 
         * @return builder
         * 
         */
        public Builder scsiType(Output scsiType) {
            $.scsiType = scsiType;
            return this;
        }

        /**
         * @param scsiType The type of SCSI device
         * 
         * @return builder
         * 
         */
        public Builder scsiType(String scsiType) {
            return scsiType(Output.of(scsiType));
        }

        /**
         * @param serial Device serial number
         * 
         * @return builder
         * 
         */
        public Builder serial(Output serial) {
            $.serial = serial;
            return this;
        }

        /**
         * @param serial Device serial number
         * 
         * @return builder
         * 
         */
        public Builder serial(String serial) {
            return serial(Output.of(serial));
        }

        /**
         * @param size Device size in bytes
         * 
         * @return builder
         * 
         */
        public Builder size(Output size) {
            $.size = size;
            return this;
        }

        /**
         * @param size Device size in bytes
         * 
         * @return builder
         * 
         */
        public Builder size(String size) {
            return size(Output.of(size));
        }

        /**
         * @param slot Device PCI slot
         * 
         * @return builder
         * 
         */
        public Builder slot(Output slot) {
            $.slot = slot;
            return this;
        }

        /**
         * @param slot Device PCI slot
         * 
         * @return builder
         * 
         */
        public Builder slot(String slot) {
            return slot(Output.of(slot));
        }

        /**
         * @param subclass Device subclass
         * 
         * @return builder
         * 
         */
        public Builder subclass(Output subclass) {
            $.subclass = subclass;
            return this;
        }

        /**
         * @param subclass Device subclass
         * 
         * @return builder
         * 
         */
        public Builder subclass(String subclass) {
            return subclass(Output.of(subclass));
        }

        /**
         * @param target The target within the bus
         * 
         * @return builder
         * 
         */
        public Builder target(Output target) {
            $.target = target;
            return this;
        }

        /**
         * @param target The target within the bus
         * 
         * @return builder
         * 
         */
        public Builder target(String target) {
            return target(Output.of(target));
        }

        /**
         * @param type Device type: `pci`, `storage`, `usb`
         * 
         * @return builder
         * 
         */
        public Builder type(Output type) {
            $.type = type;
            return this;
        }

        /**
         * @param type Device type: `pci`, `storage`, `usb`
         * 
         * @return builder
         * 
         */
        public Builder type(String type) {
            return type(Output.of(type));
        }

        /**
         * @param uniqueId This optionally provides the value from the 'unique_id' file found in the scsi_host's directory
         * 
         * @return builder
         * 
         */
        public Builder uniqueId(Output uniqueId) {
            $.uniqueId = uniqueId;
            return this;
        }

        /**
         * @param uniqueId This optionally provides the value from the 'unique_id' file found in the scsi_host's directory
         * 
         * @return builder
         * 
         */
        public Builder uniqueId(String uniqueId) {
            return uniqueId(Output.of(uniqueId));
        }

        /**
         * @param vendor If present, the vendor `id` and `name` from the device ROM
         * 
         * @return builder
         * 
         */
        public Builder vendor(@Nullable Output> vendor) {
            $.vendor = vendor;
            return this;
        }

        /**
         * @param vendor If present, the vendor `id` and `name` from the device ROM
         * 
         * @return builder
         * 
         */
        public Builder vendor(Map vendor) {
            return vendor(Output.of(vendor));
        }

        public GetNodeDeviceInfoCapabilityArgs build() {
            if ($.block == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "block");
            }
            if ($.bus == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "bus");
            }
            if ($.class_ == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "class_");
            }
            if ($.description == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "description");
            }
            if ($.device == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "device");
            }
            if ($.domain == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "domain");
            }
            if ($.driveType == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "driveType");
            }
            if ($.drmType == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "drmType");
            }
            if ($.function == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "function");
            }
            if ($.host == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "host");
            }
            if ($.iommuGroup == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "iommuGroup");
            }
            if ($.logicalBlockSize == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "logicalBlockSize");
            }
            if ($.lun == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "lun");
            }
            if ($.model == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "model");
            }
            if ($.numBlocks == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "numBlocks");
            }
            if ($.number == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "number");
            }
            if ($.protocol == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "protocol");
            }
            if ($.scsiType == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "scsiType");
            }
            if ($.serial == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "serial");
            }
            if ($.size == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "size");
            }
            if ($.slot == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "slot");
            }
            if ($.subclass == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "subclass");
            }
            if ($.target == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "target");
            }
            if ($.type == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "type");
            }
            if ($.uniqueId == null) {
                throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapabilityArgs", "uniqueId");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy