
uk.ac.ebi.interpro.scan.jms.stats.SystemInfo Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jms-implementation Show documentation
Show all versions of jms-implementation Show documentation
InterProScan JMS Implementation Module
The newest version!
package uk.ac.ebi.interpro.scan.jms.stats;
//class to get the System information
import java.io.File;
import java.text.NumberFormat;
//class to get the System information
public class SystemInfo {
private Runtime runtime = Runtime.getRuntime();
long MEGA_BYTE = (1024l * 1024l);
public String Info() {
StringBuilder sb = new StringBuilder();
sb.append(this.OsInfo());
sb.append(this.MemInfo());
sb.append(this.DiskInfo());
return sb.toString();
}
public String OSname() {
return System.getProperty("os.name");
}
public String OSversion() {
return System.getProperty("os.version");
}
public String OsArch() {
return System.getProperty("os.arch");
}
public long totalMem() {
return Runtime.getRuntime().totalMemory();
}
public long usedMem() {
return Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory();
}
public String MemInfo() {
NumberFormat format = NumberFormat.getInstance();
StringBuilder sb = new StringBuilder();
long maxMemory = runtime.maxMemory();
long allocatedMemory = runtime.totalMemory();
long freeMemory = runtime.freeMemory();
sb.append("Free memory: ");
sb.append(format.format(freeMemory / MEGA_BYTE));
sb.append("MB ");
sb.append("Allocated memory: ");
sb.append(format.format(allocatedMemory / MEGA_BYTE));
sb.append("MB ");
sb.append("Max memory: ");
sb.append(format.format(maxMemory / MEGA_BYTE));
sb.append("MB ");
sb.append("Total free memory: ");
sb.append(format.format((freeMemory + (maxMemory - allocatedMemory)) / MEGA_BYTE));
sb.append("MB ");
return sb.toString();
}
public String OsInfo() {
StringBuilder sb = new StringBuilder();
sb.append("OS: ");
sb.append(this.OSname());
sb.append("
");
sb.append("Version: ");
sb.append(this.OSversion());
sb.append("\n");
sb.append(": ");
sb.append(this.OsArch());
sb.append("\n");
sb.append("Available processors (cores): ");
sb.append(runtime.availableProcessors());
sb.append("\n\n>");
return sb.toString();
}
public String DiskInfo() {
/* Get a list of all filesystem roots on this system */
File[] roots = File.listRoots();
StringBuilder sb = new StringBuilder();
/* For each filesystem root, print some info */
for (File root : roots) {
sb.append("File system root: ");
sb.append(root.getAbsolutePath());
sb.append("
");
sb.append("Total space (bytes): ");
sb.append(root.getTotalSpace());
sb.append("\n");
sb.append("Free space (bytes): ");
sb.append(root.getFreeSpace());
sb.append("\n");
sb.append("Usable space (bytes): ");
sb.append(root.getUsableSpace());
sb.append("\n\n");
}
return sb.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy