class NotificationProcessingServiceImpl implements NotificationProcessingService {

    @Override
    public void processNotification(@Nonnull final Long notificationId, @Nonnull final Map<String, String> secureProperties) {
        Assert.notNull(notificationId, "Notification id should not be null");
        Assert.notNull(secureProperties, "Secure properties map should not be null");
        LOGGER.debug("Processing notification with id - {}", notificationId);
        final Notification notification = notificationService.getNotificationById(notificationId);
        final NotificationProcessor notificationProcessor = getNotificationProcessorForType(notification.getType());
        // Process notification
        notificationProcessor.processNotification(notification.getId(), secureProperties);
        LOGGER.debug("Successfully processed notification with id - {}, notification - {}", notificationId, notification);
    }

      NotificationProcessingServiceImpl();

}