Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.libvirt.inputs.GetNodeDeviceInfoCapability Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing libvirt cloud resources.
// *** 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.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import com.pulumi.libvirt.inputs.GetNodeDeviceInfoCapabilityIommuGroup;
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 GetNodeDeviceInfoCapability extends com.pulumi.resources.InvokeArgs {
public static final GetNodeDeviceInfoCapability Empty = new GetNodeDeviceInfoCapability();
/**
* If present, the MAC address of the device
*
*/
@Import(name="address")
private @Nullable String 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 String block;
/**
* @return Block device name
*
*/
public String block() {
return this.block;
}
/**
* The bus within the host
*
*/
@Import(name="bus", required=true)
private String bus;
/**
* @return The bus within the host
*
*/
public String 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 Map 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 String class_;
/**
* @return Device class
*
*/
public String class_() {
return this.class_;
}
@Import(name="description", required=true)
private String description;
public String description() {
return this.description;
}
/**
* Which device within the \
*
*/
@Import(name="device", required=true)
private String device;
/**
* @return Which device within the \
*
*/
public String device() {
return this.device;
}
/**
* Device PCI domain
*
*/
@Import(name="domain", required=true)
private String domain;
/**
* @return Device PCI domain
*
*/
public String domain() {
return this.domain;
}
/**
* Device drive type
*
*/
@Import(name="driveType", required=true)
private String driveType;
/**
* @return Device drive type
*
*/
public String driveType() {
return this.driveType;
}
/**
* Type of DRM device: `render` or `card`
*
*/
@Import(name="drmType", required=true)
private String drmType;
/**
* @return Type of DRM device: `render` or `card`
*
*/
public String drmType() {
return this.drmType;
}
@Import(name="features")
private @Nullable List features;
public Optional> features() {
return Optional.ofNullable(this.features);
}
@Import(name="firmware")
private @Nullable Map firmware;
public Optional> firmware() {
return Optional.ofNullable(this.firmware);
}
/**
* Device PCI function
*
*/
@Import(name="function", required=true)
private String function;
/**
* @return Device PCI function
*
*/
public String function() {
return this.function;
}
@Import(name="hardware")
private @Nullable Map hardware;
public Optional> hardware() {
return Optional.ofNullable(this.hardware);
}
/**
* The SCSI host containing the device
*
*/
@Import(name="host", required=true)
private String host;
/**
* @return The SCSI host containing the device
*
*/
public String host() {
return this.host;
}
/**
* The interface name tied to this device
*
*/
@Import(name="interface")
private @Nullable String 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 GetNodeDeviceInfoCapabilityIommuGroup iommuGroup;
/**
* @return Structure that holds IOMMU Group `number` and the list of devices that are part of the group
*
*/
public GetNodeDeviceInfoCapabilityIommuGroup iommuGroup() {
return this.iommuGroup;
}
/**
* Optional to reflect the status of the link via `speed` and `state` keys
*
*/
@Import(name="link")
private @Nullable Map 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 String logicalBlockSize;
/**
* @return Device logical block size
*
*/
public String logicalBlockSize() {
return this.logicalBlockSize;
}
/**
* The lun within the target
*
*/
@Import(name="lun", required=true)
private String lun;
/**
* @return The lun within the target
*
*/
public String lun() {
return this.lun;
}
/**
* Device model
*
*/
@Import(name="model", required=true)
private String model;
/**
* @return Device model
*
*/
public String model() {
return this.model;
}
/**
* Number of blocks on the device
*
*/
@Import(name="numBlocks", required=true)
private String numBlocks;
/**
* @return Number of blocks on the device
*
*/
public String numBlocks() {
return this.numBlocks;
}
/**
* Device number
*
*/
@Import(name="number", required=true)
private String number;
/**
* @return Device number
*
*/
public String number() {
return this.number;
}
/**
* If present, the product `id` and `name` from the device ROM
*
*/
@Import(name="product")
private @Nullable Map 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 String protocol;
/**
* @return Device protocol
*
*/
public String protocol() {
return this.protocol;
}
/**
* The type of SCSI device
*
*/
@Import(name="scsiType", required=true)
private String scsiType;
/**
* @return The type of SCSI device
*
*/
public String scsiType() {
return this.scsiType;
}
/**
* Device serial number
*
*/
@Import(name="serial", required=true)
private String serial;
/**
* @return Device serial number
*
*/
public String serial() {
return this.serial;
}
/**
* Device size in bytes
*
*/
@Import(name="size", required=true)
private String size;
/**
* @return Device size in bytes
*
*/
public String size() {
return this.size;
}
/**
* Device PCI slot
*
*/
@Import(name="slot", required=true)
private String slot;
/**
* @return Device PCI slot
*
*/
public String slot() {
return this.slot;
}
/**
* Device subclass
*
*/
@Import(name="subclass", required=true)
private String subclass;
/**
* @return Device subclass
*
*/
public String subclass() {
return this.subclass;
}
/**
* The target within the bus
*
*/
@Import(name="target", required=true)
private String target;
/**
* @return The target within the bus
*
*/
public String target() {
return this.target;
}
/**
* Device type: `pci`, `storage`, `usb`
*
*/
@Import(name="type", required=true)
private String type;
/**
* @return Device type: `pci`, `storage`, `usb`
*
*/
public String 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 String uniqueId;
/**
* @return This optionally provides the value from the 'unique_id' file found in the scsi_host's directory
*
*/
public String uniqueId() {
return this.uniqueId;
}
/**
* If present, the vendor `id` and `name` from the device ROM
*
*/
@Import(name="vendor")
private @Nullable Map vendor;
/**
* @return If present, the vendor `id` and `name` from the device ROM
*
*/
public Optional> vendor() {
return Optional.ofNullable(this.vendor);
}
private GetNodeDeviceInfoCapability() {}
private GetNodeDeviceInfoCapability(GetNodeDeviceInfoCapability $) {
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(GetNodeDeviceInfoCapability defaults) {
return new Builder(defaults);
}
public static final class Builder {
private GetNodeDeviceInfoCapability $;
public Builder() {
$ = new GetNodeDeviceInfoCapability();
}
public Builder(GetNodeDeviceInfoCapability defaults) {
$ = new GetNodeDeviceInfoCapability(Objects.requireNonNull(defaults));
}
/**
* @param address If present, the MAC address of the device
*
* @return builder
*
*/
public Builder address(@Nullable String address) {
$.address = address;
return this;
}
/**
* @param block Block device name
*
* @return builder
*
*/
public Builder block(String block) {
$.block = block;
return this;
}
/**
* @param bus The bus within the host
*
* @return builder
*
*/
public Builder bus(String bus) {
$.bus = bus;
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(@Nullable Map capability) {
$.capability = capability;
return this;
}
/**
* @param class_ Device class
*
* @return builder
*
*/
public Builder class_(String class_) {
$.class_ = class_;
return this;
}
public Builder description(String description) {
$.description = description;
return this;
}
/**
* @param device Which device within the \
*
* @return builder
*
*/
public Builder device(String device) {
$.device = device;
return this;
}
/**
* @param domain Device PCI domain
*
* @return builder
*
*/
public Builder domain(String domain) {
$.domain = domain;
return this;
}
/**
* @param driveType Device drive type
*
* @return builder
*
*/
public Builder driveType(String driveType) {
$.driveType = driveType;
return this;
}
/**
* @param drmType Type of DRM device: `render` or `card`
*
* @return builder
*
*/
public Builder drmType(String drmType) {
$.drmType = drmType;
return this;
}
public Builder features(@Nullable List features) {
$.features = features;
return this;
}
public Builder features(String... features) {
return features(List.of(features));
}
public Builder firmware(@Nullable Map firmware) {
$.firmware = firmware;
return this;
}
/**
* @param function Device PCI function
*
* @return builder
*
*/
public Builder function(String function) {
$.function = function;
return this;
}
public Builder hardware(@Nullable Map hardware) {
$.hardware = hardware;
return this;
}
/**
* @param host The SCSI host containing the device
*
* @return builder
*
*/
public Builder host(String host) {
$.host = host;
return this;
}
/**
* @param interface_ The interface name tied to this device
*
* @return builder
*
*/
public Builder interface_(@Nullable String interface_) {
$.interface_ = interface_;
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(GetNodeDeviceInfoCapabilityIommuGroup iommuGroup) {
$.iommuGroup = iommuGroup;
return this;
}
/**
* @param link Optional to reflect the status of the link via `speed` and `state` keys
*
* @return builder
*
*/
public Builder link(@Nullable Map link) {
$.link = link;
return this;
}
/**
* @param logicalBlockSize Device logical block size
*
* @return builder
*
*/
public Builder logicalBlockSize(String logicalBlockSize) {
$.logicalBlockSize = logicalBlockSize;
return this;
}
/**
* @param lun The lun within the target
*
* @return builder
*
*/
public Builder lun(String lun) {
$.lun = lun;
return this;
}
/**
* @param model Device model
*
* @return builder
*
*/
public Builder model(String model) {
$.model = model;
return this;
}
/**
* @param numBlocks Number of blocks on the device
*
* @return builder
*
*/
public Builder numBlocks(String numBlocks) {
$.numBlocks = numBlocks;
return this;
}
/**
* @param number Device number
*
* @return builder
*
*/
public Builder number(String number) {
$.number = number;
return this;
}
/**
* @param product If present, the product `id` and `name` from the device ROM
*
* @return builder
*
*/
public Builder product(@Nullable Map product) {
$.product = product;
return this;
}
/**
* @param protocol Device protocol
*
* @return builder
*
*/
public Builder protocol(String protocol) {
$.protocol = protocol;
return this;
}
/**
* @param scsiType The type of SCSI device
*
* @return builder
*
*/
public Builder scsiType(String scsiType) {
$.scsiType = scsiType;
return this;
}
/**
* @param serial Device serial number
*
* @return builder
*
*/
public Builder serial(String serial) {
$.serial = serial;
return this;
}
/**
* @param size Device size in bytes
*
* @return builder
*
*/
public Builder size(String size) {
$.size = size;
return this;
}
/**
* @param slot Device PCI slot
*
* @return builder
*
*/
public Builder slot(String slot) {
$.slot = slot;
return this;
}
/**
* @param subclass Device subclass
*
* @return builder
*
*/
public Builder subclass(String subclass) {
$.subclass = subclass;
return this;
}
/**
* @param target The target within the bus
*
* @return builder
*
*/
public Builder target(String target) {
$.target = target;
return this;
}
/**
* @param type Device type: `pci`, `storage`, `usb`
*
* @return builder
*
*/
public Builder type(String type) {
$.type = type;
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) {
$.uniqueId = uniqueId;
return this;
}
/**
* @param vendor If present, the vendor `id` and `name` from the device ROM
*
* @return builder
*
*/
public Builder vendor(@Nullable Map vendor) {
$.vendor = vendor;
return this;
}
public GetNodeDeviceInfoCapability build() {
if ($.block == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "block");
}
if ($.bus == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "bus");
}
if ($.class_ == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "class_");
}
if ($.description == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "description");
}
if ($.device == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "device");
}
if ($.domain == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "domain");
}
if ($.driveType == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "driveType");
}
if ($.drmType == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "drmType");
}
if ($.function == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "function");
}
if ($.host == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "host");
}
if ($.iommuGroup == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "iommuGroup");
}
if ($.logicalBlockSize == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "logicalBlockSize");
}
if ($.lun == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "lun");
}
if ($.model == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "model");
}
if ($.numBlocks == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "numBlocks");
}
if ($.number == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "number");
}
if ($.protocol == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "protocol");
}
if ($.scsiType == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "scsiType");
}
if ($.serial == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "serial");
}
if ($.size == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "size");
}
if ($.slot == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "slot");
}
if ($.subclass == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "subclass");
}
if ($.target == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "target");
}
if ($.type == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "type");
}
if ($.uniqueId == null) {
throw new MissingRequiredPropertyException("GetNodeDeviceInfoCapability", "uniqueId");
}
return $;
}
}
}