private void setupHomeDir(String homeString) { if (homeString == null) { homeString = sysProps.getProperty("swingri.home"); } if (homeString != null) { dataDir = new File(homeString); } else { userHome = new File(sysProps.getProperty("user.home")); String dataDirStr = props.getString("application.datadir", DEFAULT_HOME_DIR); dataDir = new File(userHome, dataDirStr); } if (!dataDir.isDirectory()) { String path = dataDir.getAbsolutePath(); boolean create; if (props.hasUserRejectedCreatingLocalDataDir()) { create = false; } else if (getBoolean("application.showLocalStorageDialogs", true)) { create = Resources.showConfirmDialog( null, messageBundle, "fontManager.properties.title", "manager.properties.createNewDirectory", path); if (!create) props.setUserRejectedCreatingLocalDataDir(); } else { // Always create local-storage directory if show user prompt dialog setting is false. create = true; } if (!create) { dataDir = null; } else { dataDir.mkdirs(); if (!dataDir.isDirectory()) { // check to make sure that dialog should be shown on the error. if (getBoolean("application.showLocalStorageDialogs", true)) { Resources.showMessageDialog( null, JOptionPane.ERROR_MESSAGE, messageBundle, "fontManager.properties.title", "manager.properties.failedCreation", dataDir.getAbsolutePath()); } dataDir = null; } } } }
private Boolean getBooleanImpl(String propertyName) { String value = props.getString(propertyName); if (value != null) { Boolean result = Parse.parseBoolean(value, messageBundle); if (result != null) { return result; } props.remove(propertyName); } value = props.getString(propertyName); if (value != null) { Boolean result = Parse.parseBoolean(value, null); if (result != null) { return result; } throwBrokenDefault(propertyName, value); } return null; }