Class Win32DesktopMonitor

java.lang.Object
io.github.eggy03.ferrumx.windows.entity.display.Win32DesktopMonitor

@ShallowImmutable public class Win32DesktopMonitor extends Object
Immutable representation of a monitor device on a Windows system.

Fields correspond to properties retrieved from the Win32_DesktopMonitor WMI class.

Usage example

// Build a new instance
Win32DesktopMonitor monitor = Win32DesktopMonitor.builder()
    .deviceId("MON1")
    .name("Generic PnP Monitor")
    .pixelsPerXLogicalInch(96)
    .build();

// Modify using toBuilder (copy-on-write)
Win32DesktopMonitor updated = monitor.toBuilder()
    .pixelsPerXLogicalInch(120)
    .build();
Since:
3.0.0
See Also:
  • Field Details

    • deviceId

      @SerializedName("DeviceID") @Nullable @Nullable String deviceId
      Unique identifier of the desktop monitor on the system.

      Example: "DesktopMonitor1"

    • name

      @SerializedName("Name") @Nullable @Nullable String name
      Label by which the object is known.

      Example: "Default Monitor"

    • pnpDeviceId

      @SerializedName("PNPDeviceID") @Nullable @Nullable String pnpDeviceId
      Windows Plug and Play device identifier of the monitor.

      Example: "DISPLAY\\DELA0D1\\4&273ACF3E&0&UID1048858"

    • status

      @SerializedName("Status") @Nullable @Nullable String status
      Current operational status of the monitor device.

      Possible OPERATIONAL values:

      • "OK"
      • "Degraded"
      • "Pred Fail"

      Possible NON-OPERATIONAL values:

      • "Unknown"
      • "Error"
      • "Starting"
      • "Stopping"
      • "Service"

      Possible OTHER values:

      • "Stressed"
      • "NonRecover"
      • "No Contact"
      • "Lost Comm"
    • monitorManufacturer

      @SerializedName("MonitorManufacturer") @Nullable @Nullable String monitorManufacturer
      Name of the manufacturer of the monitor.

      Example: "NEC"

    • monitorType

      @SerializedName("MonitorType") @Nullable @Nullable String monitorType
      Type of monitor.

      Example: "NEC 5FGp"

    • pixelsPerXLogicalInch

      @SerializedName("PixelsPerXLogicalInch") @Nullable @Nullable Integer pixelsPerXLogicalInch
      Resolution along the x-axis (horizontal direction) of the monitor.
    • pixelsPerYLogicalInch

      @SerializedName("PixelsPerYLogicalInch") @Nullable @Nullable Integer pixelsPerYLogicalInch
      Resolution along the y-axis (vertical direction) of the monitor.
  • Constructor Details

    • Win32DesktopMonitor

      public Win32DesktopMonitor()
  • Method Details

    • toString

      @NotNull public @NotNull String toString()
      Retrieves the entity in a JSON pretty-print formatted string
      Overrides:
      toString in class Object
      Returns:
      the String value of the object in JSON pretty-print format