use of org.graylog.events.legacy.LegacyAlarmCallbackEventNotificationConfig in project graylog2-server by Graylog2.
the class V20191129134600_CreateInitialUrlWhitelist method extractFromNotification.
private Optional<WhitelistEntry> extractFromNotification(NotificationDto notificationDto) {
final EventNotificationConfig config = notificationDto.config();
String url = "";
if (config instanceof HTTPEventNotificationConfig) {
url = ((HTTPEventNotificationConfig) config).url();
} else if (config instanceof LegacyAlarmCallbackEventNotificationConfig) {
url = Objects.toString(((LegacyAlarmCallbackEventNotificationConfig) config).configuration().get("url"), "");
}
if (StringUtils.isNotBlank(url)) {
return defaultIfNotMatching(LiteralWhitelistEntry.create(UUID.randomUUID().toString(), "\"" + notificationDto.title() + "\" alert notification", url), url);
} else {
return Optional.empty();
}
}
use of org.graylog.events.legacy.LegacyAlarmCallbackEventNotificationConfig in project graylog2-server by Graylog2.
the class NotificationDtoTest method testValidateLegacyWithEmptyConfigParameters.
@Test
public void testValidateLegacyWithEmptyConfigParameters() {
final LegacyAlarmCallbackEventNotificationConfig emptyConfig = LegacyAlarmCallbackEventNotificationConfig.Builder.create().callbackType("").configuration(new HashMap<>()).build();
final NotificationDto emptyNotification = getLegacyNotification().toBuilder().config(emptyConfig).build();
final ValidationResult validationResult = emptyNotification.validate();
assertThat(validationResult.failed()).isTrue();
assertThat(validationResult.getErrors()).containsOnlyKeys("callback_type");
}
Aggregations