List of usage examples for org.hibernate.event.spi EventType POST_DELETE
EventType POST_DELETE
To view the source code for org.hibernate.event.spi EventType POST_DELETE.
Click Source Link
From source file:at.molindo.esi4j.module.hibernate.DefaultHibernateLifecycleInjector.java
License:Apache License
@Override public synchronized void injectLifecycle(SessionFactory sessionFactory, Esi4JBatchedEventProcessor batchedEventProcessor) { if (_listener != null) { throw new IllegalStateException("already injected"); }//from ww w . j a v a 2s.co m SessionFactoryImpl sessionFactoryImpl = (SessionFactoryImpl) sessionFactory; EventListenerRegistry registry = sessionFactoryImpl.getServiceRegistry() .getService(EventListenerRegistry.class); _listener = doCreateListener(sessionFactoryImpl, batchedEventProcessor); if (_listener instanceof PostInsertEventListener) { if (registerPostCommitListeneres) { registry.appendListeners(EventType.POST_COMMIT_INSERT, (PostInsertEventListener) _listener); } else { registry.appendListeners(EventType.POST_INSERT, (PostInsertEventListener) _listener); } } if (_listener instanceof PostUpdateEventListener) { if (registerPostCommitListeneres) { registry.appendListeners(EventType.POST_COMMIT_UPDATE, (PostUpdateEventListener) _listener); } else { registry.appendListeners(EventType.POST_UPDATE, (PostUpdateEventListener) _listener); } } if (_listener instanceof PostDeleteEventListener) { if (registerPostCommitListeneres) { registry.appendListeners(EventType.POST_COMMIT_DELETE, (PostDeleteEventListener) _listener); } else { registry.appendListeners(EventType.POST_DELETE, (PostDeleteEventListener) _listener); } } // collections if (!registerPostCommitListeneres) { if (_listener instanceof PostCollectionRecreateEventListener) { registry.appendListeners(EventType.POST_COLLECTION_RECREATE, (PostCollectionRecreateEventListener) _listener); } if (_listener instanceof PostCollectionRemoveEventListener) { registry.appendListeners(EventType.POST_COLLECTION_REMOVE, (PostCollectionRemoveEventListener) _listener); } if (_listener instanceof PostCollectionUpdateEventListener) { registry.appendListeners(EventType.POST_COLLECTION_UPDATE, (PostCollectionUpdateEventListener) _listener); } } }
From source file:com.corundumstudio.core.extensions.hibernate.BaseTest.java
License:Apache License
protected static void initHibernate() { Properties props = buildDatabaseConfiguration("db1"); Configuration cfg = new Configuration(); cfg.setProperty(Environment.GENERATE_STATISTICS, "true"); cfg.setProperty(AvailableSettings.HBM2DDL_AUTO, "create"); cfg.setProperty(AvailableSettings.CACHE_REGION_FACTORY, InfinispanRegionFactory.class.getName()); cfg.setProperty(InfinispanRegionFactory.INFINISPAN_CONFIG_RESOURCE_PROP, "infinispan.xml"); cfg.setProperty(AvailableSettings.QUERY_CACHE_FACTORY, DynamicQueryCacheFactory.class.getName()); cfg.setProperty(Environment.USE_SECOND_LEVEL_CACHE, "true"); cfg.setProperty(Environment.USE_QUERY_CACHE, "true"); cfg.addAnnotatedClass(SimpleEntity.class); cfg.buildMappings();// ww w . j ava 2 s .c o m ServiceRegistryBuilder sb = new ServiceRegistryBuilder(); ServiceRegistry serviceRegistry = sb.applySettings(props).buildServiceRegistry(); sessionFactory = (SessionFactoryImplementor) cfg.buildSessionFactory(serviceRegistry); EventListenerRegistry registry = sessionFactory.getServiceRegistry() .getService(EventListenerRegistry.class); registry.getEventListenerGroup(EventType.POST_UPDATE).appendListener(queryCacheEntityListener); registry.getEventListenerGroup(EventType.POST_INSERT).appendListener(queryCacheEntityListener); registry.getEventListenerGroup(EventType.POST_DELETE).appendListener(queryCacheEntityListener); }
From source file:es.logongas.ix3.dao.impl.rules.IntegratorImplRuleEngine.java
License:Apache License
private void prependListeners(EventListenerRegistry eventListenerRegistry) { eventListenerRegistry.prependListeners(EventType.PRE_INSERT, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.PRE_LOAD, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.PRE_UPDATE, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.PRE_DELETE, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.POST_INSERT, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.POST_LOAD, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.POST_UPDATE, new EventListenerImplRuleEngine()); eventListenerRegistry.prependListeners(EventType.POST_DELETE, new EventListenerImplRuleEngine()); }
From source file:kr.debop4j.search.tools.SearchTool.java
License:Apache License
/** * Hibernate-Search? FullTextIndexEventListener SessionFactory? ?. * * @param sessionFactory the session factory * @param listener the listener/*from w ww . j ava 2s . co m*/ */ public static void registerFullTextIndexEventListener(SessionFactory sessionFactory, FullTextIndexEventListener listener) { assert sessionFactory != null; log.info("sessionFactory? FullTestIndexEventListener ?... listener=[{}]", listener); try { HibernateTool.registerEventListener(sessionFactory, listener, EventType.POST_UPDATE, EventType.POST_INSERT, EventType.POST_DELETE, EventType.FLUSH); } catch (Throwable t) { log.warn( "listener ?? . ? ?? ? ? ?.", t); } }
From source file:net.krotscheck.jersey2.hibernate.factory.HibernateSessionFactoryFactory.java
License:Apache License
/** * This method automatically adds discovered hibernate event listeners into * the hibernate service registry.// w w w .ja v a 2 s . c o m * * @param registry The service registry. */ private void injectEventListeners(final ServiceRegistry registry) { EventListenerRegistry eventRegistry = registry.getService(EventListenerRegistry.class); List<PostInsertEventListener> postInsertEvents = locator.getAllServices(PostInsertEventListener.class); for (PostInsertEventListener piEventListener : postInsertEvents) { logger.trace("Registering PostInsert: " + piEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.POST_INSERT, piEventListener); } List<PostUpdateEventListener> postUpdateEvents = locator.getAllServices(PostUpdateEventListener.class); for (PostUpdateEventListener puEventListener : postUpdateEvents) { logger.trace("Registering PostUpdate: " + puEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.POST_UPDATE, puEventListener); } List<PostDeleteEventListener> postDeleteEvents = locator.getAllServices(PostDeleteEventListener.class); for (PostDeleteEventListener pdEventListener : postDeleteEvents) { logger.trace("Registering PostDelete: " + pdEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.POST_DELETE, pdEventListener); } List<PreInsertEventListener> preInsertEvents = locator.getAllServices(PreInsertEventListener.class); for (PreInsertEventListener piEventListener : preInsertEvents) { logger.trace("Registering PreInsert: " + piEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.PRE_INSERT, piEventListener); } List<PreUpdateEventListener> preUpdateEvents = locator.getAllServices(PreUpdateEventListener.class); for (PreUpdateEventListener puEventListener : preUpdateEvents) { logger.trace("Registering PreUpdate: " + puEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.PRE_UPDATE, puEventListener); } List<PreDeleteEventListener> preDeleteEvents = locator.getAllServices(PreDeleteEventListener.class); for (PreDeleteEventListener pdEventListener : preDeleteEvents) { logger.trace("Registering PreDelete: " + pdEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.PRE_DELETE, pdEventListener); } List<PostCommitInsertEventListener> pciEvents = locator.getAllServices(PostCommitInsertEventListener.class); for (PostCommitInsertEventListener cpiEventListener : pciEvents) { logger.trace("Registering PostCommitInsert: " + cpiEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.POST_COMMIT_INSERT, cpiEventListener); } List<PostCommitUpdateEventListener> pcuEvents = locator.getAllServices(PostCommitUpdateEventListener.class); for (PostCommitUpdateEventListener cpuEventListener : pcuEvents) { logger.trace("Registering PostCommitUpdate: " + cpuEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.POST_COMMIT_UPDATE, cpuEventListener); } List<PostCommitDeleteEventListener> pcdEvents = locator.getAllServices(PostCommitDeleteEventListener.class); for (PostCommitDeleteEventListener cpdEventListener : pcdEvents) { logger.trace("Registering PostCommitDelete: " + cpdEventListener.getClass().getCanonicalName()); eventRegistry.appendListeners(EventType.POST_COMMIT_DELETE, cpdEventListener); } }
From source file:net.krotscheck.jersey2.hibernate.factory.HibernateSessionFactoryFactoryTest.java
License:Apache License
/** * Test the application event injectors. *///from w w w.jav a2 s. c o m @Test public void testEventInjection() { // Create a fake application. SessionFactory factoryFactory = locator.getService(SessionFactory.class); Assert.assertNotNull(factoryFactory); ServiceRegistry serviceRegistry = ((SessionFactoryImpl) factoryFactory).getServiceRegistry(); EventListenerRegistry eventRegistry = serviceRegistry.getService(EventListenerRegistry.class); EventListenerGroup<PreInsertEventListener> priGroup = eventRegistry .getEventListenerGroup(EventType.PRE_INSERT); assertContainsListener(priGroup); EventListenerGroup<PostInsertEventListener> poiGroup = eventRegistry .getEventListenerGroup(EventType.POST_INSERT); assertContainsListener(poiGroup); EventListenerGroup<PreUpdateEventListener> pruGroup = eventRegistry .getEventListenerGroup(EventType.PRE_UPDATE); assertContainsListener(pruGroup); EventListenerGroup<PostUpdateEventListener> pouGroup = eventRegistry .getEventListenerGroup(EventType.POST_UPDATE); assertContainsListener(pouGroup); EventListenerGroup<PreDeleteEventListener> prdGroup = eventRegistry .getEventListenerGroup(EventType.PRE_DELETE); assertContainsListener(prdGroup); EventListenerGroup<PostDeleteEventListener> podGroup = eventRegistry .getEventListenerGroup(EventType.POST_DELETE); assertContainsListener(podGroup); EventListenerGroup<PostInsertEventListener> pciGroup = eventRegistry .getEventListenerGroup(EventType.POST_COMMIT_INSERT); assertContainsListener(pciGroup); EventListenerGroup<PostUpdateEventListener> pcuGroup = eventRegistry .getEventListenerGroup(EventType.POST_COMMIT_UPDATE); assertContainsListener(pcuGroup); EventListenerGroup<PostDeleteEventListener> pcdGroup = eventRegistry .getEventListenerGroup(EventType.POST_COMMIT_DELETE); assertContainsListener(pcdGroup); }
From source file:org.audit4j.integration.hibernate.bootstrap.Audit4jIntegrator.java
License:Apache License
public void integrate(Configuration configuration, SessionFactoryImplementor sessionFactory, SessionFactoryServiceRegistry serviceRegistry) { System.out.println("Integrating......"); //final AuditService auditService = serviceRegistry.getService(AuditService.class); final AuditService auditService = new AuditServiceImpl(); auditService.init();/*from w w w. j av a 2 s . c o m*/ if (!auditService.isInitialized()) { throw new InitializationException("Audit4j hibernate integration can not be initialized.."); } // Register listeners.. final EventListenerRegistry listenerRegistry = serviceRegistry.getService(EventListenerRegistry.class); listenerRegistry.appendListeners(EventType.POST_INSERT, new AuditPostInsertEventListenerImpl(auditService)); listenerRegistry.appendListeners(EventType.POST_UPDATE, new AuditPostUpdateEventListenerImpl(auditService)); listenerRegistry.appendListeners(EventType.POST_DELETE, new AuditPostDeleteEventListenerImpl(auditService)); }
From source file:org.cgiar.ccafs.marlo.config.MyIntegrator.java
License:Open Source License
@Override public void integrate(Configuration configuration, SessionFactoryImplementor sessionFactory, SessionFactoryServiceRegistry serviceRegistry) { final EventListenerRegistry eventListenerRegistry = serviceRegistry.getService(EventListenerRegistry.class); HibernateAuditLogListener hibernateAuditLogListener = new HibernateAuditLogListener(); AuditColumnHibernateListener auditColumnHibernateListener = new AuditColumnHibernateListener(); eventListenerRegistry.prependListeners(EventType.POST_UPDATE, hibernateAuditLogListener); eventListenerRegistry.prependListeners(EventType.POST_INSERT, hibernateAuditLogListener); eventListenerRegistry.prependListeners(EventType.POST_DELETE, hibernateAuditLogListener); eventListenerRegistry.prependListeners(EventType.FLUSH, hibernateAuditLogListener); eventListenerRegistry.prependListeners(EventType.PRE_INSERT, auditColumnHibernateListener); eventListenerRegistry.prependListeners(EventType.PRE_UPDATE, auditColumnHibernateListener); LOG.debug("Finished registering Hibernate Event Listeners"); }
From source file:org.ednovo.gooru.hibernate.configsettings.HibernateLogger.java
License:Open Source License
@PostConstruct public void register() { EventListenerRegistry registry = ((SessionFactoryImpl) sessionFactory).getServiceRegistry() .getService(EventListenerRegistry.class); registry.getEventListenerGroup(EventType.POST_DELETE).appendListener(this); }
From source file:org.flowerplatform.web.database.DatabaseManager.java
License:Open Source License
/** * @author Mariana// w w w. j a va 2s. c om */ public void initialize() { // Configuration config = new Configuration(); // Properties props = config.getProperties(); Properties props = new Properties(); // props.setProperty(Environment.DRIVER, "org.postgresql.Driver"); // props.setProperty(Environment.USER, "postgres"); // props.setProperty(Environment.URL, "jdbc:postgresql://localhost/flower-dev-center"); // props.setProperty(Environment.PASS, "postgres"); // props.setProperty(Environment.DIALECT, PostgresPlusDialect.class.getName()); // props.setProperty(Environment.CURRENT_SESSION_CONTEXT_CLASS, "thread"); // props.setProperty(Environment.HBM2DDL_AUTO, "create-drop"); // props.setProperty(Environment.SHOW_SQL, "true"); props.setProperty(Environment.DRIVER, "org.h2.Driver"); props.setProperty(Environment.USER, "sa"); props.setProperty(Environment.URL, "jdbc:h2:mem:temp_flower_web;MVCC=TRUE"); props.setProperty(Environment.PASS, ""); props.setProperty(Environment.DIALECT, H2Dialect.class.getName()); props.setProperty(Environment.HBM2DDL_AUTO, "create"); // props.setProperty(Environment.SHOW_SQL, "true"); props.setProperty(PersistenceOptions.CASCADE_POLICY_ON_NON_CONTAINMENT, "REFRESH,PERSIST,MERGE"); props.setProperty(PersistenceOptions.PERSISTENCE_XML, "annotations.xml"); props.setProperty(PersistenceOptions.JOIN_TABLE_FOR_NON_CONTAINED_ASSOCIATIONS, "false"); props.setProperty(PersistenceOptions.ALWAYS_VERSION, "false"); // props.setProperty(PersistenceOptions.INHERITANCE_MAPPING, "TABLE_PER_CLASS"); props.setProperty(PersistenceOptions.INHERITANCE_MAPPING, "SINGLE_TABLE"); props.setProperty(PersistenceOptions.ADD_INDEX_FOR_FOREIGN_KEY, "false"); // create the HbDataStore using the name final HbDataStore hbds = HbHelper.INSTANCE.createRegisterDataStore(DS_NAME); // set the properties hbds.setDataStoreProperties(props); // sets its epackages stored in this datastore hbds.setEPackages(new EPackage[] { EntityPackage.eINSTANCE, NotationPackage.eINSTANCE }); // ((HbSessionDataStore) hbds).setConfiguration(config); // initialize try { hbds.initialize(); } catch (Throwable e) { System.err.println(hbds.getMappingXML()); logger.error("FATAL: error while initializing the HbDataStore", e); } System.err.println(hbds.getMappingXML()); factory = hbds.getSessionFactory(); EventListenerRegistry registry = ((SessionFactoryImpl) factory).getServiceRegistry() .getService(EventListenerRegistry.class); SecurityEntityListener listener = new SecurityEntityListener(); registry.appendListeners(EventType.POST_INSERT, listener); registry.appendListeners(EventType.POST_DELETE, listener); registry.appendListeners(EventType.POST_UPDATE, listener); registry.appendListeners(EventType.PRE_DELETE, listener); initWithTestData(); new DatabaseOperationWrapper(new DatabaseOperation() { @Override public void run() { DBVersion dbVersion = null; dbVersion = wrapper.find(DBVersion.class, DBVersion.SINGLETON_RECORD_ID); if (dbVersion == null) { logger.error("Cannot find database version from the database."); } else if (dbVersion.getDbVersion() < FlowerProperties.DB_VERSION) { logger.error( "Database version mismatch. Database version = {} is lower than expected = {}. Please run the DB update scripts.", dbVersion.getDbVersion(), FlowerProperties.DB_VERSION); } else if (dbVersion.getDbVersion() > FlowerProperties.DB_VERSION) { logger.warn( "Database version mismatch. Database version = {} is greater than expected = {}. You may continue, but please be aware that the application may malfunction and/or corrupt the data in the DB.", dbVersion.getDbVersion(), FlowerProperties.DB_VERSION); } else { // same version; everything is OK logger.info("Database version check OK. Version = {}", dbVersion.getDbVersion()); } } }); }