Class AbstractDMISystem

java.lang.Object
io.github.eggy03.dmidecode.entity.system.AbstractDMISystem
Direct Known Subclasses:
DMISystem, DMISystem.Json

@Immutable @NullMarked public abstract class AbstractDMISystem extends Object
Immutable representation of system information retrieved via DMI.

Fields correspond to properties reported by dmidecode for the System Information (Type 1) SMBIOS structure.

Instances of this class are thread-safe.

Usage example


 DMISystem system = new DMISystem.Builder()
     .manufacturer("LENOVO")
     .productName("ThinkPad T14 Gen 3")
     .serialNumber("PF123ABC")
     .uuid("4C4C4544-0038-4D10-8051-CAC04F4A1234")
     .build();

 // Create a modified copy
 DMISystem updated = system
     .withSkuNumber("21CFCTO1WW");
 
Since:
0.2.0
  • Constructor Details

    • AbstractDMISystem

      public AbstractDMISystem()
  • Method Details

    • manufacturer

      public abstract @Nullable String manufacturer()
    • productName

      public abstract @Nullable String productName()
    • version

      public abstract @Nullable String version()
    • serialNumber

      public abstract @Nullable String serialNumber()
    • uuid

      public abstract @Nullable String uuid()
    • wakeupType

      public abstract @Nullable String wakeupType()
    • skuNumber

      public abstract @Nullable String skuNumber()
    • family

      public abstract @Nullable String family()
    • toString

      public String toString()
      Overrides:
      toString in class Object