Package oshi.hardware
Interface HardwareAbstractionLayer
-
- All Known Implementing Classes:
AbstractHardwareAbstractionLayer
,AixHardwareAbstractionLayer
,FreeBsdHardwareAbstractionLayer
,LinuxHardwareAbstractionLayer
,MacHardwareAbstractionLayer
,OpenBsdHardwareAbstractionLayer
,SolarisHardwareAbstractionLayer
,WindowsHardwareAbstractionLayer
@ThreadSafe public interface HardwareAbstractionLayer
A hardware abstraction layer. Provides access to hardware items such as processors, memory, battery, and disks.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description ComputerSystem
getComputerSystem()
Instantiates aComputerSystem
object.java.util.List<HWDiskStore>
getDiskStores()
Instantiates a list ofHWDiskStore
objects, representing physical hard disks or other similar storage devices.java.util.List<Display>
getDisplays()
Instantiates a list ofDisplay
objects, representing monitors or other video output devices.java.util.List<GraphicsCard>
getGraphicsCards()
Instantiates a list ofGraphicsCard
objects, representing the Graphics cards.default java.util.List<LogicalVolumeGroup>
getLogicalVolumeGroups()
Instantiates a list ofLogicalVolumeGroup
objects, representing a storage pool or group of devices, partitions, volumes, or other implementation specific means of file storage.GlobalMemory
getMemory()
Instantiates aGlobalMemory
object.java.util.List<NetworkIF>
getNetworkIFs()
Gets a list of non-localNetworkIF
objects, representing a network interface.java.util.List<NetworkIF>
getNetworkIFs(boolean includeLocalInterfaces)
Gets a listNetworkIF
objects, representing a network interface.java.util.List<PowerSource>
getPowerSources()
Instantiates a list ofPowerSource
objects, representing batteries, etc.CentralProcessor
getProcessor()
Instantiates aCentralProcessor
object.Sensors
getSensors()
Instantiates aSensors
object, representing CPU temperature and fan speed.java.util.List<SoundCard>
getSoundCards()
Instantiates a list ofSoundCard
objects, representing the Sound cards.java.util.List<UsbDevice>
getUsbDevices(boolean tree)
Instantiates a list ofUsbDevice
objects, representing devices connected via a usb port (including internal devices).
-
-
-
Method Detail
-
getComputerSystem
ComputerSystem getComputerSystem()
Instantiates aComputerSystem
object. This represents the physical hardware, including components such as BIOS/Firmware and a motherboard, logic board, etc.- Returns:
- a
ComputerSystem
object.
-
getProcessor
CentralProcessor getProcessor()
Instantiates aCentralProcessor
object. This represents one or more Logical CPUs.- Returns:
- A
CentralProcessor
object.
-
getMemory
GlobalMemory getMemory()
Instantiates aGlobalMemory
object.- Returns:
- A memory object.
-
getPowerSources
java.util.List<PowerSource> getPowerSources()
Instantiates a list ofPowerSource
objects, representing batteries, etc.- Returns:
- A list of PowerSource objects or an empty list if none are present.
-
getDiskStores
java.util.List<HWDiskStore> getDiskStores()
Instantiates a list ofHWDiskStore
objects, representing physical hard disks or other similar storage devices.- Returns:
- A list of HWDiskStore objects or an empty list if none are present.
-
getLogicalVolumeGroups
default java.util.List<LogicalVolumeGroup> getLogicalVolumeGroups()
Instantiates a list ofLogicalVolumeGroup
objects, representing a storage pool or group of devices, partitions, volumes, or other implementation specific means of file storage.If not yet implemented or if logical volume groups do not exist, returns an empty list.
Currently implemented for Linux (LVM2), macOS (Core Storage), and Windows (Storage Spaces).
- Returns:
- A list of
LogicalVolumeGroup
objects or an empty list if none are present.
-
getNetworkIFs
java.util.List<NetworkIF> getNetworkIFs()
Gets a list of non-localNetworkIF
objects, representing a network interface. The list excludes local interfaces.- Returns:
- A list of
NetworkIF
objects representing the interfaces
-
getNetworkIFs
java.util.List<NetworkIF> getNetworkIFs(boolean includeLocalInterfaces)
Gets a listNetworkIF
objects, representing a network interface.- Parameters:
includeLocalInterfaces
- whether to include local interfaces (loopback or no hardware address) in the result- Returns:
- A list of
NetworkIF
objects representing the interfaces
-
getDisplays
java.util.List<Display> getDisplays()
Instantiates a list ofDisplay
objects, representing monitors or other video output devices.- Returns:
- A list of Display objects or an empty list if none are present.
-
getSensors
Sensors getSensors()
Instantiates aSensors
object, representing CPU temperature and fan speed.- Returns:
- A Sensors object
-
getUsbDevices
java.util.List<UsbDevice> getUsbDevices(boolean tree)
Instantiates a list ofUsbDevice
objects, representing devices connected via a usb port (including internal devices).If the value of
tree
is true, the top level devices returned from this method are the USB Controllers; connected hubs and devices in its device tree share that controller's bandwidth. If the value oftree
is false, USB devices (not controllers) are listed in a single flat list.- Parameters:
tree
- Iftrue
, returns devices connected to the existing device, accessible viaUsbDevice.getConnectedDevices()
. Iffalse
returns devices as a flat list with no connected device information.- Returns:
- A list of UsbDevice objects representing (optionally) the USB Controllers and devices connected to them, or an empty list if none are present
-
getSoundCards
java.util.List<SoundCard> getSoundCards()
Instantiates a list ofSoundCard
objects, representing the Sound cards.- Returns:
- A list of SoundCard objects or an empty list if none are present.
-
getGraphicsCards
java.util.List<GraphicsCard> getGraphicsCards()
Instantiates a list ofGraphicsCard
objects, representing the Graphics cards.- Returns:
- A list of objects or an empty list if none are present.
-
-