/** * Saves the passed {@link IBusinessContextDefinition}. * * @param businessContextDefinition * {@link IBusinessContextDefinition} to save * @throws IOException * If {@link IOException} occurs. * @throws JAXBException * If {@link JAXBException} occurs. If saving fails. */ private void saveBusinessContext(BusinessContextDefinition businessContextDefinition) throws JAXBException, IOException { businessContextDefinitionReference.set(businessContextDefinition); transformator.marshall(pathResolver.getBusinessContextFilePath(), businessContextDefinition, getRelativeToSchemaPath(pathResolver.getDefaultCiPath()).toString(), ISchemaVersionAware.ConfigurationInterface.SCHEMA_VERSION); }
/** * Loads the business context definition if it is not already loaded. If successfully loaded * definition will be placed in the {@link #businessContextDefinition} field. */ private void loadBusinessContextDefinition() { log.info("|-Loading the business context definition"); Path path = pathResolver.getBusinessContextFilePath(); BusinessContextDefinition businessContextDefinition = null; if (Files.exists(path)) { try { businessContextDefinition = transformator.unmarshall(path, pathResolver.getSchemaPath(), ISchemaVersionAware.ConfigurationInterface.SCHEMA_VERSION, pathResolver.getMigrationPath(), BusinessContextDefinition.class); } catch (JAXBException | IOException | SAXException e) { log.error("Error loading Configuration interface business context file. File path: " + path.toString() + ".", e); } } if (null == businessContextDefinition) { businessContextDefinition = new BusinessContextDefinition(); try { saveBusinessContext(businessContextDefinition); } catch (JAXBException | IOException e) { log.error("Error saving Configuration interface business context file. File path: " + path.toString() + ".", e); } } businessContextDefinitionReference.set(businessContextDefinition); }
when(pathResolver.getProfilesPath()).thenReturn(Paths.get(TEST_FOLDER).resolve(EXT_RESOURCES_PATH.relativize(resolverHelper.getProfilesPath()))); when(pathResolver.getSchemaPath()).thenReturn(Paths.get(TEST_FOLDER).resolve(EXT_RESOURCES_PATH.relativize(resolverHelper.getSchemaPath()))); when(pathResolver.getBusinessContextFilePath()).thenReturn(Paths.get(TEST_FOLDER).resolve(EXT_RESOURCES_PATH.relativize(resolverHelper.getBusinessContextFilePath()))); when(pathResolver.getAlertingDefinitionsPath()).thenReturn(Paths.get(TEST_FOLDER).resolve(EXT_RESOURCES_PATH.relativize(resolverHelper.getAlertingDefinitionsPath()))); doAnswer(new Answer<Path>() {