Search in sources :

Example 1 with EventNotificationConfig

use of org.graylog.events.notifications.EventNotificationConfig 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();
    }
}
Also used : LegacyAlarmCallbackEventNotificationConfig(org.graylog.events.legacy.LegacyAlarmCallbackEventNotificationConfig) EventNotificationConfig(org.graylog.events.notifications.EventNotificationConfig) HTTPEventNotificationConfig(org.graylog.events.notifications.types.HTTPEventNotificationConfig) LegacyAlarmCallbackEventNotificationConfig(org.graylog.events.legacy.LegacyAlarmCallbackEventNotificationConfig) HTTPEventNotificationConfig(org.graylog.events.notifications.types.HTTPEventNotificationConfig)

Aggregations

LegacyAlarmCallbackEventNotificationConfig (org.graylog.events.legacy.LegacyAlarmCallbackEventNotificationConfig)1 EventNotificationConfig (org.graylog.events.notifications.EventNotificationConfig)1 HTTPEventNotificationConfig (org.graylog.events.notifications.types.HTTPEventNotificationConfig)1