@TransactionalEventListener(fallbackExecution = true)
 public void blogAddedTransactionalWithFallback(BlogAddedEvent blogAddedEvent) {
   log.info(
       "Transactional (with fallback) sending external notification for added blog: {}",
       blogAddedEvent.getBlog());
   notificationSender.blogAddedTransactionalWithFallback(blogAddedEvent);
 }
 private void internalSendBlogAddedNotification(BlogAddedEvent blogAddedEvent) {
   log.info(
       "Transactional old-school sending external notification for added blog: {}",
       blogAddedEvent.getBlog());
   notificationSender.blogAddedTransactionalOldSchool(blogAddedEvent);
 }
 @TransactionalEventListener
 public void blogAddedTransactional(BlogAddedEvent blogAddedEvent) {
   log.info(
       "Transactional sending external notification for added blog: {}", blogAddedEvent.getBlog());
   notificationSender.blogAddedTransactional(blogAddedEvent);
 }
 @EventListener
 public void blogAdded(BlogAddedEvent blogAddedEvent) {
   log.info("Sending standard external notification for added blog: {}", blogAddedEvent.getBlog());
   notificationSender.blogAdded(blogAddedEvent);
 }