use of io.gravitee.repository.management.model.GenericNotificationConfig in project gravitee-management-rest-api by gravitee-io.
the class GenericNotificationConfigServiceImpl method create.
@Override
public GenericNotificationConfigEntity create(GenericNotificationConfigEntity entity) {
if (entity.getNotifier() == null || entity.getNotifier().isEmpty() || entity.getName() == null || entity.getName().isEmpty()) {
throw new BadNotificationConfigException("Name or notifier is missing !");
}
try {
GenericNotificationConfig notificationConfig = convert(entity);
notificationConfig.setId(UUID.toString(UUID.random()));
notificationConfig.setCreatedAt(new Date());
notificationConfig.setUpdatedAt(notificationConfig.getCreatedAt());
return convert(genericNotificationConfigRepository.create(notificationConfig));
} catch (TechnicalException te) {
LOGGER.error("An error occurs while trying to save the generic notification settings {}", entity, te);
throw new TechnicalManagementException("An error occurs while trying to save the generic notification settings " + entity, te);
}
}
use of io.gravitee.repository.management.model.GenericNotificationConfig in project gravitee-management-rest-api by gravitee-io.
the class GenericNotificationConfigServiceImpl method convert.
private GenericNotificationConfig convert(GenericNotificationConfigEntity entity) {
GenericNotificationConfig model = new GenericNotificationConfig();
model.setId(entity.getId());
model.setName(entity.getName());
model.setReferenceType(NotificationReferenceType.valueOf(entity.getReferenceType()));
model.setReferenceId(entity.getReferenceId());
model.setNotifier(entity.getNotifier());
model.setConfig(entity.getConfig());
model.setHooks(entity.getHooks());
return model;
}
use of io.gravitee.repository.management.model.GenericNotificationConfig in project gravitee-management-rest-api by gravitee-io.
the class GenericNotificationConfigServiceImpl method update.
@Override
public GenericNotificationConfigEntity update(GenericNotificationConfigEntity entity) {
try {
if (entity.getNotifier() == null || entity.getNotifier().isEmpty() || entity.getName() == null || entity.getName().isEmpty()) {
throw new BadNotificationConfigException("Name or notifier is missing !");
}
if (entity.getId() == null || entity.getId().isEmpty()) {
throw new NotificationConfigNotFoundException();
}
Optional<GenericNotificationConfig> optionalConfig = genericNotificationConfigRepository.findById(entity.getId());
if (!optionalConfig.isPresent()) {
throw new NotificationConfigNotFoundException();
}
GenericNotificationConfig notificationConfig = convert(entity);
notificationConfig.setCreatedAt(optionalConfig.get().getCreatedAt());
notificationConfig.setUpdatedAt(new Date());
return convert(genericNotificationConfigRepository.update(notificationConfig));
} catch (TechnicalException te) {
LOGGER.error("An error occurs while trying to save the generic notification settings {}", entity, te);
throw new TechnicalManagementException("An error occurs while trying to save the generic notification settings " + entity, te);
}
}
Aggregations