Example usage for org.hibernate.event.service.spi EventListenerRegistry addDuplicationStrategy

List of usage examples for org.hibernate.event.service.spi EventListenerRegistry addDuplicationStrategy

Introduction

In this page you can find the example usage for org.hibernate.event.service.spi EventListenerRegistry addDuplicationStrategy.

Prototype

void addDuplicationStrategy(DuplicationStrategy strategy);

Source Link

Usage

From source file:edu.nps.moves.mmowgli.hibernate.AbstractVHib.java

License:Open Source License

protected void _installDataBaseListeners()// AppMaster apMas)
{
    DatabaseListeners dlis = new DatabaseListeners(sr);
    MSysOut.println(HIBERNATE_LOGS, "Installing db listeners");
    EventListenerRegistry registry = ((SessionFactoryImpl) sf).getServiceRegistry()
            .getService(EventListenerRegistry.class);
    registry.addDuplicationStrategy(new DuplicationStrategy() {
        @Override//  w  w w .  ja v a 2  s.c om
        public boolean areMatch(Object listener, Object original) {
            return false;
        }

        @Override
        public Action getAction() {
            return null;
        }
    });

    if (dlis.getSaveListener() != null)
        registry.getEventListenerGroup(EventType.SAVE).appendListener(dlis.getSaveListener());
    if (dlis.getUpdateListener() != null)
        registry.getEventListenerGroup(EventType.UPDATE).appendListener(dlis.getUpdateListener());
    if (dlis.getSaveOrUpdateListener() != null)
        registry.getEventListenerGroup(EventType.SAVE_UPDATE).appendListener(dlis.getSaveOrUpdateListener());
    if (dlis.getDeleteListener() != null)
        registry.getEventListenerGroup(EventType.DELETE).appendListener(dlis.getDeleteListener());
    if (dlis.getPostInsertListener() != null)
        registry.getEventListenerGroup(EventType.POST_COMMIT_INSERT)
                .appendListener(dlis.getPostInsertListener());
    if (dlis.getPostUpdateListener() != null)
        registry.getEventListenerGroup(EventType.POST_COMMIT_UPDATE)
                .appendListener(dlis.getPostUpdateListener());

    MSysOut.println(HIBERNATE_LOGS, "db listeners installed");

    dlis.enableListeners(true); // may have to be moved later
}