in src/main/java/org/jutils/jhardware/info/os/unix/UnixOSInfo.java [66:104]
protected Map<String, String> parseInfo() {
Map<String, String> osDataMap = new HashMap<>();
String lsbRelease = getOSLsbReleaseData();
String[] dataStringLines = lsbRelease.split(LINE_BREAK_REGEX);
for (final String dataLine : dataStringLines) {
String[] dataStringInfo = dataLine.split(":");
osDataMap.put(
dataStringInfo[0].trim(), (dataStringInfo.length == 2) ? dataStringInfo[1].trim() : "");
}
String osRelease = getOSReleaseData();
dataStringLines = osRelease.split(LINE_BREAK_REGEX);
for (final String dataLine : dataStringLines) {
String[] dataStringInfo = dataLine.split("=");
osDataMap.put(
HardwareInfoUtils.toCamelCase("OS_" + dataStringInfo[0].trim()),
(dataStringInfo.length == 2) ? dataStringInfo[1].trim().replaceAll("\"", "") : "");
}
String startTimeFullData = getOSStartTimeData();
dataStringLines = startTimeFullData.split(LINE_BREAK_REGEX);
for (final String dataLine : dataStringLines) {
if (dataLine.startsWith("reboot")) {
osDataMap.put("LastBootTime", normalizeBootUpDate(dataLine.substring(39, 55)));
break;
}
}
// Set named data
osDataMap.put("Manufacturer", osDataMap.get("Distributor ID"));
osDataMap.put("Name", osDataMap.get("Description"));
osDataMap.put("Version", osDataMap.get("Release"));
return osDataMap;
}