public class EventListenerRegisterHelper {
  
    public static void registerEventListener(SessionFactoryImplementor sessionFactoryImplementor, HibernateEventListener eventListener) {
        EventListenerRegistry eventListenerRegistry = sessionFactoryImplementor
                .getServiceRegistry().getService(EventListenerRegistry.class);

        eventListenerRegistry.appendListeners(EventType.POST_UPDATE, eventListener);
        eventListenerRegistry.appendListeners(EventType.POST_DELETE, eventListener);
    }

  
    /**
    * Base for the event listener to send topic message using custom topic connection.
    */
    public static class HibernateEventListener implements PostUpdateEventListener, PostDeleteEventListener {
        @Override
        public void onPostUpdate(PostUpdateEvent event) {
            //Send topic message
        }

        @Override
        public void onPostDelete(PostDeleteEvent event) {
            //Send topic message
        }

        @Override
        public boolean requiresPostCommitHanding(EntityPersister persister) {
            return false;
        }

        @Override
        public boolean requiresPostCommitHandling(EntityPersister persister) {
            return false;
        }
    }
}