use of com.synopsys.integration.alert.database.configuration.DescriptorConfigEntity in project hub-alert by blackducksoftware.
the class DefaultConfigurationModelConfigurationAccessor method updateConfiguration.
/**
* @return the config after update
*/
@Override
public ConfigurationModel updateConfiguration(Long descriptorConfigId, Collection<ConfigurationFieldModel> configuredFields) throws AlertConfigurationException {
DescriptorConfigEntity descriptorConfigEntity = descriptorConfigsRepository.findById(descriptorConfigId).orElseThrow(() -> new AlertConfigurationException(String.format("Config with id '%d' did not exist", descriptorConfigId)));
List<FieldValueEntity> oldValues = fieldValueRepository.findByConfigId(descriptorConfigId);
fieldValueRepository.deleteAll(oldValues);
fieldValueRepository.flush();
ConfigurationModelMutable updatedConfig = createEmptyConfigModel(descriptorConfigEntity.getDescriptorId(), descriptorConfigEntity.getId(), descriptorConfigEntity.getCreatedAt(), descriptorConfigEntity.getLastUpdated(), descriptorConfigEntity.getContextId());
if (configuredFields != null && !configuredFields.isEmpty()) {
List<FieldValueEntity> fieldValuesToSave = new ArrayList<>(configuredFields.size());
for (ConfigurationFieldModel configFieldModel : configuredFields) {
String fieldKey = configFieldModel.getFieldKey();
Long fieldId = getFieldIdOrThrowException(fieldKey);
boolean isSensitive = isFieldSensitive(fieldKey);
for (String value : configFieldModel.getFieldValues()) {
FieldValueEntity newFieldValue = new FieldValueEntity(descriptorConfigId, fieldId, encrypt(value, isSensitive));
fieldValuesToSave.add(newFieldValue);
}
updatedConfig.put(configFieldModel);
}
fieldValueRepository.saveAll(fieldValuesToSave);
fieldValueRepository.flush();
}
descriptorConfigEntity.setLastUpdated(DateUtils.createCurrentDateTimestamp());
descriptorConfigsRepository.save(descriptorConfigEntity);
return updatedConfig;
}
use of com.synopsys.integration.alert.database.configuration.DescriptorConfigEntity in project hub-alert by blackducksoftware.
the class DefaultConfigurationModelConfigurationAccessor method getConfigurationsByDescriptorNameAndContext.
@Override
public List<ConfigurationModel> getConfigurationsByDescriptorNameAndContext(String descriptorName, ConfigContextEnum context) {
Long contextId = getConfigContextIdOrThrowException(context);
Long descriptorId = getDescriptorIdOrThrowException(descriptorName);
List<DescriptorConfigEntity> descriptorConfigEntities = descriptorConfigsRepository.findByDescriptorIdAndContextId(descriptorId, contextId);
List<ConfigurationModel> configurationModels = new ArrayList<>();
for (DescriptorConfigEntity descriptorConfigEntity : descriptorConfigEntities) {
configurationModels.add(createConfigModel(descriptorConfigEntity.getDescriptorId(), descriptorConfigEntity.getId(), descriptorConfigEntity.getCreatedAt(), descriptorConfigEntity.getLastUpdated(), contextId));
}
return configurationModels;
}
use of com.synopsys.integration.alert.database.configuration.DescriptorConfigEntity in project hub-alert by blackducksoftware.
the class FieldValueRepositoryTestIT method findByConfigIdTest.
@Test
public void findByConfigIdTest() {
RegisteredDescriptorEntity descriptorEntity = new RegisteredDescriptorEntity(DESCRIPTOR_NAME, 1L);
RegisteredDescriptorEntity savedDescriptorEntity = registeredDescriptorRepository.save(descriptorEntity);
DefinedFieldEntity definedFieldEntity1 = new DefinedFieldEntity("fieldKey1", Boolean.FALSE);
DefinedFieldEntity definedFieldEntity2 = new DefinedFieldEntity("fieldKey2", Boolean.FALSE);
DefinedFieldEntity definedFieldEntity3 = new DefinedFieldEntity("fieldKey3", Boolean.FALSE);
DefinedFieldEntity definedFieldEntity4 = new DefinedFieldEntity("fieldKey4", Boolean.FALSE);
DefinedFieldEntity savedEntity1 = definedFieldRepository.save(definedFieldEntity1);
DefinedFieldEntity savedEntity2 = definedFieldRepository.save(definedFieldEntity2);
DefinedFieldEntity savedEntity3 = definedFieldRepository.save(definedFieldEntity3);
DefinedFieldEntity savedEntity4 = definedFieldRepository.save(definedFieldEntity4);
assertEquals(4, definedFieldRepository.findAll().size());
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity1.getId()));
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity2.getId()));
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity3.getId()));
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity4.getId()));
ConfigContextEntity configContextEntity = new ConfigContextEntity(CONTEXT_NAME);
ConfigContextEntity savedContextEntity = configContextRepository.save(configContextEntity);
OffsetDateTime currentTime = DateUtils.createCurrentDateTimestamp();
DescriptorConfigEntity descriptorConfigEntity1 = new DescriptorConfigEntity(savedDescriptorEntity.getId(), savedContextEntity.getId(), currentTime, currentTime);
DescriptorConfigEntity descriptorConfigEntity2 = new DescriptorConfigEntity(savedDescriptorEntity.getId(), savedContextEntity.getId(), currentTime, currentTime);
descriptorConfigRepository.save(descriptorConfigEntity1);
descriptorConfigRepository.save(descriptorConfigEntity2);
assertEquals(2, descriptorConfigRepository.findAll().size());
FieldValueEntity fieldValueEntity1 = new FieldValueEntity(descriptorConfigEntity1.getId(), savedEntity1.getId(), "value1");
FieldValueEntity fieldValueEntity2 = new FieldValueEntity(descriptorConfigEntity1.getId(), savedEntity2.getId(), "value2");
FieldValueEntity fieldValueEntity3 = new FieldValueEntity(descriptorConfigEntity2.getId(), savedEntity3.getId(), "value3");
FieldValueEntity fieldValueEntity4 = new FieldValueEntity(descriptorConfigEntity2.getId(), savedEntity4.getId(), "value4");
fieldValueRepository.save(fieldValueEntity1);
fieldValueRepository.save(fieldValueEntity2);
fieldValueRepository.save(fieldValueEntity3);
fieldValueRepository.save(fieldValueEntity4);
assertEquals(4, fieldValueRepository.findAll().size());
List<FieldValueEntity> fieldValueEntityList1 = fieldValueRepository.findByConfigId(descriptorConfigEntity1.getId());
assertEquals(2, fieldValueEntityList1.size());
List<FieldValueEntity> fieldValueEntityList2 = fieldValueRepository.findByConfigId(descriptorConfigEntity2.getId());
assertEquals(2, fieldValueEntityList2.size());
}
use of com.synopsys.integration.alert.database.configuration.DescriptorConfigEntity in project hub-alert by blackducksoftware.
the class FieldValueRepositoryTestIT method onDeleteCascadeTest.
@Test
public void onDeleteCascadeTest() {
RegisteredDescriptorEntity descriptorEntity = new RegisteredDescriptorEntity(DESCRIPTOR_NAME, 1L);
RegisteredDescriptorEntity savedDescriptorEntity = registeredDescriptorRepository.save(descriptorEntity);
DefinedFieldEntity definedFieldEntity1 = new DefinedFieldEntity("fieldKey1", Boolean.FALSE);
DefinedFieldEntity definedFieldEntity2 = new DefinedFieldEntity("fieldKey2", Boolean.FALSE);
DefinedFieldEntity definedFieldEntity3 = new DefinedFieldEntity("fieldKey3", Boolean.FALSE);
DefinedFieldEntity definedFieldEntity4 = new DefinedFieldEntity("fieldKey4", Boolean.FALSE);
DefinedFieldEntity savedEntity1 = definedFieldRepository.save(definedFieldEntity1);
DefinedFieldEntity savedEntity2 = definedFieldRepository.save(definedFieldEntity2);
DefinedFieldEntity savedEntity3 = definedFieldRepository.save(definedFieldEntity3);
DefinedFieldEntity savedEntity4 = definedFieldRepository.save(definedFieldEntity4);
assertEquals(4, definedFieldRepository.findAll().size());
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity1.getId()));
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity2.getId()));
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity3.getId()));
descriptorFieldRepository.save(new DescriptorFieldRelation(descriptorEntity.getId(), savedEntity4.getId()));
ConfigContextEntity configContextEntity = new ConfigContextEntity(CONTEXT_NAME);
ConfigContextEntity savedContextEntity = configContextRepository.save(configContextEntity);
OffsetDateTime currentTime = DateUtils.createCurrentDateTimestamp();
DescriptorConfigEntity descriptorConfigEntity1 = new DescriptorConfigEntity(savedDescriptorEntity.getId(), savedContextEntity.getId(), currentTime, currentTime);
DescriptorConfigEntity descriptorConfigEntity2 = new DescriptorConfigEntity(savedDescriptorEntity.getId(), savedContextEntity.getId(), currentTime, currentTime);
DescriptorConfigEntity descriptorConfigEntity3 = new DescriptorConfigEntity(savedDescriptorEntity.getId(), savedContextEntity.getId(), currentTime, currentTime);
descriptorConfigRepository.save(descriptorConfigEntity1);
descriptorConfigRepository.save(descriptorConfigEntity2);
descriptorConfigRepository.save(descriptorConfigEntity3);
assertEquals(3, descriptorConfigRepository.findAll().size());
FieldValueEntity fieldValueEntity1 = new FieldValueEntity(descriptorConfigEntity1.getId(), savedEntity1.getId(), "value1");
FieldValueEntity fieldValueEntity2 = new FieldValueEntity(descriptorConfigEntity1.getId(), savedEntity2.getId(), "value2");
FieldValueEntity fieldValueEntity3 = new FieldValueEntity(descriptorConfigEntity2.getId(), savedEntity3.getId(), "value3");
FieldValueEntity fieldValueEntity4 = new FieldValueEntity(descriptorConfigEntity3.getId(), savedEntity4.getId(), "value4");
fieldValueRepository.save(fieldValueEntity1);
fieldValueRepository.save(fieldValueEntity2);
fieldValueRepository.save(fieldValueEntity3);
fieldValueRepository.save(fieldValueEntity4);
assertEquals(4, fieldValueRepository.findAll().size());
// Delete a configuration (deletes 1 & 2)
descriptorConfigRepository.deleteById(descriptorConfigEntity1.getId());
descriptorConfigRepository.flush();
assertEquals(2, fieldValueRepository.findAll().size());
// Delete a descriptor field (deletes 3)
definedFieldRepository.deleteById(savedEntity3.getId());
definedFieldRepository.flush();
assertEquals(1, fieldValueRepository.findAll().size());
// Delete a descriptor (deletes 4)
registeredDescriptorRepository.deleteById(savedDescriptorEntity.getId());
registeredDescriptorRepository.flush();
assertEquals(0, fieldValueRepository.findAll().size());
}
Aggregations