@Override protected void doNotify(Record notification) { for (Object event : Notifications.getLifecycleEvents(notification)) { if (event == Notifications.LifecycleEvent.BEGIN_TRANSACTION) { try { loader.beginTransaction(); } catch (IOException e) { throw new MorphlineRuntimeException(e); } } else if (event == Notifications.LifecycleEvent.COMMIT_TRANSACTION) { try { loader.commitTransaction(); } catch (Exception e) { throw new MorphlineRuntimeException(e); } } else if (event == Notifications.LifecycleEvent.ROLLBACK_TRANSACTION) { try { loader.rollbackTransaction(); } catch (IOException e) { throw new MorphlineRuntimeException(e); } } else if (event == Notifications.LifecycleEvent.SHUTDOWN) { try { loader.shutdown(); } catch (Exception e) { throw new MorphlineRuntimeException(e); } } } super.doNotify(notification); }