public OSDetails probeDetails() {
if (uid == null) {
return new OSDetails();
}
long totalSwapSpaceSize = -1;
if (getTotalSwapSpaceSize != null) {
try {
totalSwapSpaceSize = (Long) getTotalSwapSpaceSize.invoke(operatingSystemMXBean);
} catch (Exception e) {
}
}
long totalPhysicalMemorySize = -1;
if (getTotalPhysicalMemorySize != null) {
try {
totalPhysicalMemorySize = (Long) getTotalPhysicalMemorySize.invoke(operatingSystemMXBean);
} catch (Exception e) {
}
}
OSNetInterfaceDetails[] osNetInterfaceDetailsArray = retrieveOSNetInterfaceDetails();
return new OSDetails(uid, operatingSystemMXBean.getName(), operatingSystemMXBean.getArch(),
operatingSystemMXBean.getVersion(), operatingSystemMXBean.getAvailableProcessors(),
totalSwapSpaceSize, totalPhysicalMemorySize,
localHostName, localHostAddress, osNetInterfaceDetailsArray, null, null);
}