package ch.sla.jdbcperflogger.console.ui;
import java.awt.Desktop;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Properties;
import org.eclipse.jdt.annotation.Nullable;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class GuiUtils {
private final static Logger LOGGER = LoggerFactory.getLogger(WelcomePanel.class);
static String getAppVersion() {
final Properties mavenProps = new Properties();
try (@Nullable
InputStream pomPropsFile = WelcomePanel.class
.getResourceAsStream("/META-INF/maven/com.github.sylvainlaurent.jdbcperflogger/jdbc-perf-logger-gui/pom.properties")) {
if (pomPropsFile != null) {
mavenProps.load(pomPropsFile);
}
return mavenProps.getProperty("version");
} catch (final IOException e) {
LOGGER.warn("", e);
return "unknown";
}
}
static void openWebSite(final String address) {
if (Desktop.isDesktopSupported()) {
try {
final URI uri = new URI(address);
Desktop.getDesktop().browse(uri);
} catch (URISyntaxException | IOException e) {
throw new RuntimeException("unexpected", e);
}
}
}
}