# HG changeset patch # User František Kučera # Date 1388019195 -3600 # Node ID 10c9b9e546225d7275e349dd9886d76e6b9cf73d # Parent 6e28893eaada793e3a38152d158a50c7279a99f3 option --list-formatters – list configured and built-in formatters diff -r 6e28893eaada -r 10c9b9e54622 java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java --- a/java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java Thu Dec 26 01:29:29 2013 +0100 +++ b/java/sql-dk/src/info/globalcode/sql/dk/InfoLister.java Thu Dec 26 01:53:15 2013 +0100 @@ -17,9 +17,12 @@ */ package info.globalcode.sql.dk; +import info.globalcode.sql.dk.configuration.Configuration; import info.globalcode.sql.dk.configuration.ConfigurationException; import info.globalcode.sql.dk.configuration.ConfigurationProvider; import info.globalcode.sql.dk.configuration.DatabaseDefinition; +import info.globalcode.sql.dk.configuration.FormatterDefinition; +import static info.globalcode.sql.dk.Functions.rpad; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintStream; @@ -53,7 +56,24 @@ * TODO: implement show info */ case FORMATTERS: - println("TODO: list available formatters"); + for (FormatterDefinition fd : configurationProvider.getConfiguration().getBuildInFormatters()) { + log.log(Level.INFO, "Built-in formatter: {0} implemented by class: {1}", new Object[]{rpad(fd.getName(), 16), fd.getClassName()}); + } + + List configuredFormatters = configurationProvider.getConfiguration().getFormatters(); + for (FormatterDefinition fd : configuredFormatters) { + log.log(Level.INFO, "Configured formatter: {0} implemented by class: {1}", new Object[]{rpad(fd.getName(), 16), fd.getClassName()}); + } + if (configuredFormatters.isEmpty()) { + log.log(Level.INFO, "No other formatters are configured"); + } + + String configuredDefaultFormatter = configurationProvider.getConfiguration().getDefaultFormatter(); + if (configuredDefaultFormatter == null) { + log.log(Level.INFO, "Built-in default formatter: {0}", Configuration.DEFAULT_FORMATTER); + } else { + log.log(Level.INFO, "Configured default formatter: {0}", configuredDefaultFormatter); + } break; case HELP: printResource(Constants.HELP_FILE); diff -r 6e28893eaada -r 10c9b9e54622 java/sql-dk/src/info/globalcode/sql/dk/configuration/Configuration.java --- a/java/sql-dk/src/info/globalcode/sql/dk/configuration/Configuration.java Thu Dec 26 01:29:29 2013 +0100 +++ b/java/sql-dk/src/info/globalcode/sql/dk/configuration/Configuration.java Thu Dec 26 01:53:15 2013 +0100 @@ -29,6 +29,7 @@ import java.util.List; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlTransient; /** * @@ -99,6 +100,11 @@ } } + @XmlTransient + public Collection getBuildInFormatters() { + return buildInFormatters; + } + /** * @return name of default formatter, is used if name is not specified on CLI */