private static void loadAndInitUserConfigFile(File userConfigFile) { try { UserConfigTO userConfigTO = UserConfigTO.load(userConfigFile); // System properties for (Map.Entry<String, String> systemProperty : userConfigTO.getSystemProperties().entrySet()) { String propertyValue = (systemProperty.getValue() != null) ? systemProperty.getValue() : ""; System.setProperty(systemProperty.getKey(), propertyValue); } // Other options preventStandby = userConfigTO.isPreventStandby(); configEncryptionKey = userConfigTO.getConfigEncryptionKey(); } catch (ConfigException e) { System.err.println("ERROR: " + e.getMessage()); System.err.println(" Ignoring user config file!"); System.err.println(); } }
private static void writeExampleUserConfigFile(File userConfigFile) { UserConfigTO userConfigTO = new UserConfigTO(); try { System.out.println("First launch, creating a secret key (could take a sec)..."); SaltedSecretKey configEncryptionKey = CipherUtil.createMasterKey(CipherUtil.createRandomAlphabeticString(USER_CONFIG_ENCRYPTION_KEY_LENGTH)); userConfigTO.setConfigEncryptionKey(configEncryptionKey); userConfigTO.save(userConfigFile); } catch (CipherException e) { System.err.println("ERROR: " + e.getMessage()); System.err.println(" Failed to create masterkey."); System.err.println(); } catch (ConfigException e) { System.err.println("ERROR: " + e.getMessage()); System.err.println(" Failed to save to file."); System.err.println(); } }
@Subscribe public void onAddWatchRequestReceived(AddWatchManagementRequest request) { File rootFolder = request.getWatch(); if (watchOperations.containsKey(rootFolder)) { eventBus.post(new AddWatchManagementResponse(AddWatchManagementResponse.ERR_ALREADY_EXISTS, request.getId(), "Watch already exists.")); } else { try { boolean folderAdded = DaemonConfigHelper.addFolder(rootFolder); if (folderAdded) { eventBus.post(new AddWatchManagementResponse(AddWatchManagementResponse.OKAY, request.getId(), "Successfully added.")); } else { eventBus.post(new AddWatchManagementResponse(AddWatchManagementResponse.ERR_ALREADY_EXISTS, request.getId(), "Watch already exists (inactive/disabled).")); } } catch (ConfigException e) { logger.log(Level.WARNING, "Error adding watch to daemon config.", e); eventBus.post(new AddWatchManagementResponse(AddWatchManagementResponse.ERR_OTHER, request.getId(), "Error adding to config: " + e.getMessage())); } } }
@Subscribe public void onRemoveWatchRequestReceived(RemoveWatchManagementRequest request) { File rootFolder = request.getWatch(); if (!watchOperations.containsKey(rootFolder)) { eventBus.post(new RemoveWatchManagementResponse(RemoveWatchManagementResponse.ERR_DOES_NOT_EXIST, request.getId(), "Watch does not exist.")); } else { try { boolean folderRemoved = DaemonConfigHelper.removeFolder(rootFolder); if (folderRemoved) { eventBus.post(new RemoveWatchManagementResponse(RemoveWatchManagementResponse.OKAY, request.getId(), "Successfully removed.")); } else { eventBus.post(new RemoveWatchManagementResponse(RemoveWatchManagementResponse.ERR_DOES_NOT_EXIST, request.getId(), "Watch does not exist (inactive/disabled).")); } } catch (ConfigException e) { logger.log(Level.WARNING, "Error removing watch from daemon config.", e); eventBus.post(new RemoveWatchManagementResponse(RemoveWatchManagementResponse.ERR_OTHER, request.getId(), "Error removing to config: " + e.getMessage())); } } } }