File: JavaProperties.java

package info (click to toggle)
imagej 1.46a-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 4,248 kB
  • sloc: java: 89,778; sh: 311; xml: 51; makefile: 6
file content (135 lines) | stat: -rw-r--r-- 4,673 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
package ij.plugin;
import ij.*;
import ij.text.*;
import ij.io.OpenDialog;
import java.awt.*;
import java.util.*;
import java.applet.Applet;

/** Displays the Java system properties in a text window. */
public class JavaProperties implements PlugIn {

	StringBuffer sb = new StringBuffer();
	
	public void run(String arg) {
		show("java.version");
		show("java.vendor");
		if (IJ.isMacintosh()) show("mrj.version");
		show("os.name");
		show("os.version");
		show("os.arch");
		show("file.separator");
		show("path.separator");
		
		String s = System.getProperty("line.separator");
		char ch1, ch2;
		String str1, str2="";
		ch1 = s.charAt(0);
		if (ch1=='\r')
			str1 = "<cr>";
		else
			str1 = "<lf>";
		if (s.length()==2) {
			ch2 = s.charAt(1);
			if (ch2=='\r')
				str2 = "<cr>";
			else
				str2 = "<lf>";
		}
		sb.append("  line.separator: " + str1 + str2+"\n");
			
		Applet applet = IJ.getApplet();
		if (applet!=null) {
			sb.append("\n");
			sb.append("  code base: "+applet.getCodeBase()+"\n");
			sb.append("  document base: "+applet.getDocumentBase()+"\n");
			sb.append("  sample images dir: "+Prefs.getImagesURL()+"\n");
			TextWindow tw = new TextWindow("Properties", new String(sb), 400, 400);
			return;
		}
		sb.append("\n");
		show("user.name");
		show("user.home");
		show("user.dir");
		show("user.country");
		show("file.encoding");
		show("java.home");
		show("java.compiler");
		show("java.class.path");
		show("java.ext.dirs");
		show("java.io.tmpdir");
		
		sb.append("\n");
		String userDir = System.getProperty("user.dir");
		String userHome = System.getProperty("user.home");
		String osName = System.getProperty("os.name");
		sb.append("  IJ.getVersion: "+IJ.getVersion()+"\n");
		sb.append("  IJ.isJava2: "+IJ.isJava2()+"\n");
		sb.append("  IJ.isJava15: "+IJ.isJava15()+"\n");
		sb.append("  IJ.isJava16: "+IJ.isJava16()+"\n");
		sb.append("  IJ.isLinux: "+IJ.isLinux()+"\n");
		sb.append("  IJ.isMacintosh: "+IJ.isMacintosh()+"\n");
		sb.append("  IJ.isMacOSX: "+IJ.isMacOSX()+"\n");
		sb.append("  IJ.isWindows: "+IJ.isWindows()+"\n");
		sb.append("  IJ.isVista: "+IJ.isVista()+"\n");
		sb.append("  IJ.is64Bit: "+IJ.is64Bit()+"\n");
		sb.append("  Menus.getPlugInsPath: "+Menus.getPlugInsPath()+"\n");
		sb.append("  Menus.getMacrosPath: "+Menus.getMacrosPath()+"\n");
		sb.append("  Prefs.getHomeDir: "+Prefs.getHomeDir()+"\n");
		sb.append("  Prefs.getThreads: "+Prefs.getThreads()+cores());	
		sb.append("  Prefs.open100Percent: "+Prefs.open100Percent+"\n");		
		sb.append("  Prefs.blackBackground: "+Prefs.blackBackground+"\n");		
		sb.append("  Prefs.useJFileChooser: "+Prefs.useJFileChooser+"\n");		
		sb.append("  Prefs.weightedColor: "+Prefs.weightedColor+"\n");		
		sb.append("  Prefs.blackCanvas: "+Prefs.blackCanvas+"\n");		
		sb.append("  Prefs.pointAutoMeasure: "+Prefs.pointAutoMeasure+"\n");		
		sb.append("  Prefs.pointAutoNextSlice: "+Prefs.pointAutoNextSlice+"\n");		
		sb.append("  Prefs.requireControlKey: "+Prefs.requireControlKey+"\n");		
		sb.append("  Prefs.useInvertingLut: "+Prefs.useInvertingLut+"\n");		
		sb.append("  Prefs.antialiasedTools: "+Prefs.antialiasedTools+"\n");		
		sb.append("  Prefs.useInvertingLut: "+Prefs.useInvertingLut+"\n");		
		sb.append("  Prefs.intelByteOrder: "+Prefs.intelByteOrder+"\n");		
		sb.append("  Prefs.doubleBuffer: "+Prefs.doubleBuffer+"\n");		
		sb.append("  Prefs.noPointLabels: "+Prefs.noPointLabels+"\n");		
		sb.append("  Prefs.disableUndo: "+Prefs.disableUndo+"\n");		
		sb.append("  Prefs.runSocketListener: "+Prefs.runSocketListener+"\n");		
		sb.append("  Prefs dir: "+Prefs.getPrefsDir()+"\n");
		sb.append("  Current dir: "+OpenDialog.getDefaultDirectory()+"\n");
		sb.append("  Sample images dir: "+Prefs.getImagesURL()+"\n");
		Dimension d = IJ.getScreenSize();
		sb.append("  Screen size: " + d.width + "x" + d.height+"\n");
		System.gc();
		sb.append("  Memory in use: "+IJ.freeMemory()+"\n");	
		if (IJ.altKeyDown())
			doFullDump();
		if (IJ.getInstance()==null)
			IJ.log(new String(sb));
		else
			new TextWindow("Properties", new String(sb), 400, 500);
	}
	
	String cores() {
		int cores = Runtime.getRuntime().availableProcessors();
		if (cores==1)
			return " (1 core)\n";
		else
			return " ("+cores+" cores)\n";
	}
	
	void show(String property) {
		String p = System.getProperty(property);
		if (p!=null)
			sb.append("  " + property + ": " + p+"\n");
	}
	
	void doFullDump() {
		sb.append("\n");
		sb.append("All Properties:\n");
		Properties props = System.getProperties();
		for (Enumeration en=props.keys(); en.hasMoreElements();) {
			String key = (String)en.nextElement();
			sb.append("  "+key+": "+(String)props.get(key)+"\n");
		}
	}

}