diff -r 88de2602deb3 -r 2e351d7c26c4 java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java --- a/java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java Sun May 24 18:45:46 2015 +0200 +++ b/java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java Sun May 24 19:10:25 2015 +0200 @@ -42,6 +42,7 @@ import java.util.EnumSet; import java.util.HashSet; import java.util.List; +import java.util.Map.Entry; import java.util.ServiceLoader; import java.util.Set; import java.util.concurrent.ExecutorService; @@ -88,6 +89,8 @@ case DATABASES: case FORMATTERS: case TYPES: + case JAVA_PROPERTIES: + case ENVIRONMENT_VARIABLES: formattinNeeded = true; break; } @@ -116,6 +119,24 @@ } } + private void listJavaProperties() throws FormatterException, ConfigurationException { + ColumnsHeader header = constructHeader(new HeaderField("name", SQLType.VARCHAR), new HeaderField("value", SQLType.VARCHAR)); + List data = new ArrayList<>(); + for (Entry e : System.getProperties().entrySet()) { + data.add(new Object[]{e.getKey(), e.getValue()}); + } + printTable(formatter, header, "-- Java system properties", null, data); + } + + private void listEnvironmentVariables() throws FormatterException, ConfigurationException { + ColumnsHeader header = constructHeader(new HeaderField("name", SQLType.VARCHAR), new HeaderField("value", SQLType.VARCHAR)); + List data = new ArrayList<>(); + for (Entry e : System.getenv().entrySet()) { + data.add(new Object[]{e.getKey(), e.getValue()}); + } + printTable(formatter, header, "-- environment variables", null, data); + } + private void listFormatters() throws ConfigurationException, FormatterException { ColumnsHeader header = constructHeader( new HeaderField("name", SQLType.VARCHAR), @@ -497,6 +518,18 @@ infoLister.printResource(Constants.LICENSE_FILE); } }, + JAVA_PROPERTIES { + @Override + public void showInfo(InfoLister infoLister) throws FormatterException, ConfigurationException { + infoLister.listJavaProperties(); + } + }, + ENVIRONMENT_VARIABLES { + @Override + public void showInfo(InfoLister infoLister) throws FormatterException, ConfigurationException { + infoLister.listEnvironmentVariables(); + } + }, FORMATTERS { @Override public void showInfo(InfoLister infoLister) throws FormatterException, ConfigurationException {