diff --git a/documentation/documentation.gradle b/documentation/documentation.gradle index b73f3d027d78..56310afdc91a 100644 --- a/documentation/documentation.gradle +++ b/documentation/documentation.gradle @@ -619,7 +619,7 @@ settingsDocumentation { settingsClassName "org.hibernate.cfg.StatisticsSettings" } validation { - summary = "Jakarta Validation Integeration Settings" + summary = "Jakarta Validation Integration Settings" description = "Settings used in the integration of Jakarta Validation" settingsClassName "org.hibernate.cfg.ValidationSettings" } diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRecreateAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRecreateAction.java index d6fa2201e830..46714551ab7a 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRecreateAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRecreateAction.java @@ -7,9 +7,9 @@ import org.hibernate.HibernateException; import org.hibernate.collection.spi.PersistentCollection; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.spi.EventSource; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.PostCollectionRecreateEvent; import org.hibernate.event.spi.PostCollectionRecreateEventListener; import org.hibernate.event.spi.PreCollectionRecreateEvent; @@ -46,15 +46,15 @@ public void execute() throws HibernateException { final SharedSessionContractImplementor session = getSession(); final CollectionPersister persister = getPersister(); final Object key = getKey(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginCollectionRecreateEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginCollectionRecreateEvent(); boolean success = false; try { persister.recreate( collection, key, session ); success = true; } finally { - eventManager.completeCollectionRecreateEvent( event, key, persister.getRole(), success, session ); + eventMonitor.completeCollectionRecreateEvent( event, key, persister.getRole(), success, session ); } session.getPersistenceContextInternal().getCollectionEntry( collection ).afterAction( collection ); diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRemoveAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRemoveAction.java index fbb4dcb9e39d..2654710c80a2 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRemoveAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionRemoveAction.java @@ -8,9 +8,9 @@ import org.hibernate.HibernateException; import org.hibernate.collection.spi.PersistentCollection; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.spi.EventSource; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.PostCollectionRemoveEvent; import org.hibernate.event.spi.PostCollectionRemoveEventListener; import org.hibernate.event.spi.PreCollectionRemoveEvent; @@ -112,15 +112,15 @@ public void execute() throws HibernateException { // knowing if the collection is actually empty without querying the db) final CollectionPersister persister = getPersister(); final Object key = getKey(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginCollectionRemoveEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginCollectionRemoveEvent(); boolean success = false; try { persister.remove( key, session ); success = true; } finally { - eventManager.completeCollectionRemoveEvent( event, key, persister.getRole(), success, session ); + eventMonitor.completeCollectionRemoveEvent( event, key, persister.getRole(), success, session ); } } diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionUpdateAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionUpdateAction.java index 350416d68c7a..9360144ba543 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionUpdateAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/CollectionUpdateAction.java @@ -8,9 +8,9 @@ import org.hibernate.HibernateException; import org.hibernate.collection.spi.PersistentCollection; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.spi.EventSource; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.PostCollectionUpdateEvent; import org.hibernate.event.spi.PostCollectionUpdateEventListener; import org.hibernate.event.spi.PreCollectionUpdateEvent; @@ -65,8 +65,8 @@ public void execute() throws HibernateException { // Do nothing - we only need to notify the cache } else { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginCollectionUpdateEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginCollectionUpdateEvent(); boolean success = false; try { if ( !affectedByFilters && collection.empty() ) { @@ -93,7 +93,7 @@ else if ( collection.needsRecreate( persister ) ) { success = true; } finally { - eventManager.completeCollectionUpdateEvent( event, key, persister.getRole(), success, session ); + eventMonitor.completeCollectionUpdateEvent( event, key, persister.getRole(), success, session ); } } diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityDeleteAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityDeleteAction.java index 6c91e67dab35..b9826c0e5637 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityDeleteAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityDeleteAction.java @@ -13,9 +13,9 @@ import org.hibernate.engine.spi.PersistenceContext; import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.event.service.spi.EventListenerGroup; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.spi.EventSource; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.PostCommitDeleteEventListener; import org.hibernate.event.spi.PostDeleteEvent; import org.hibernate.event.spi.PostDeleteEventListener; @@ -128,15 +128,15 @@ public void execute() throws HibernateException { final Object ck = lockCacheItem(); if ( !isCascadeDeleteEnabled && !veto ) { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginEntityDeleteEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginEntityDeleteEvent(); boolean success = false; try { persister.getDeleteCoordinator().delete( instance, id, version, session ); success = true; } finally { - eventManager.completeEntityDeleteEvent( event, id, persister.getEntityName(), success, session ); + eventMonitor.completeEntityDeleteEvent( event, id, persister.getEntityName(), success, session ); } } diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityIdentityInsertAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityIdentityInsertAction.java index 2e288647aaf3..cdd494ff6bcb 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityIdentityInsertAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityIdentityInsertAction.java @@ -10,9 +10,9 @@ import org.hibernate.engine.spi.PersistenceContext; import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.event.service.spi.EventListenerGroup; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.spi.EventSource; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.PostCommitInsertEventListener; import org.hibernate.event.spi.PostInsertEvent; import org.hibernate.event.spi.PostInsertEventListener; @@ -82,8 +82,8 @@ public void execute() throws HibernateException { // else inserted the same pk first, the insert would fail if ( !isVeto() ) { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginEntityInsertEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginEntityInsertEvent(); boolean success = false; final GeneratedValues generatedValues; try { @@ -92,7 +92,7 @@ public void execute() throws HibernateException { success = true; } finally { - eventManager.completeEntityInsertEvent( event, generatedId, persister.getEntityName(), success, session ); + eventMonitor.completeEntityInsertEvent( event, generatedId, persister.getEntityName(), success, session ); } final PersistenceContext persistenceContext = session.getPersistenceContextInternal(); if ( persister.getRowIdMapping() != null ) { diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityInsertAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityInsertAction.java index 252d61e07b27..55a91f65d6f8 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityInsertAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityInsertAction.java @@ -15,8 +15,8 @@ import org.hibernate.engine.spi.SessionEventListenerManager; import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.service.spi.EventListenerGroup; import org.hibernate.event.spi.EventSource; import org.hibernate.event.spi.PostCommitInsertEventListener; @@ -105,8 +105,8 @@ public void execute() throws HibernateException { if ( !veto ) { final EntityPersister persister = getPersister(); final Object instance = getInstance(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginEntityInsertEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginEntityInsertEvent(); boolean success = false; final GeneratedValues generatedValues; try { @@ -114,7 +114,7 @@ public void execute() throws HibernateException { success = true; } finally { - eventManager.completeEntityInsertEvent( event, id, persister.getEntityName(), success, session ); + eventMonitor.completeEntityInsertEvent( event, id, persister.getEntityName(), success, session ); } final PersistenceContext persistenceContext = session.getPersistenceContextInternal(); final EntityEntry entry = persistenceContext.getEntry( instance ); @@ -187,8 +187,8 @@ protected void putCacheIfNecessary() { protected boolean cacheInsert(EntityPersister persister, Object ck) { final SharedSessionContractImplementor session = getSession(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); final EntityDataAccess cacheAccessStrategy = persister.getCacheAccessStrategy(); boolean insert = false; try { @@ -197,13 +197,13 @@ protected boolean cacheInsert(EntityPersister persister, Object ck) { return insert; } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, cacheAccessStrategy, getPersister(), insert, - EventManager.CacheActionDescription.ENTITY_INSERT + EventMonitor.CacheActionDescription.ENTITY_INSERT ); session.getEventListenerManager().cachePutEnd(); } @@ -280,8 +280,8 @@ public void doAfterTransactionCompletion(boolean success, SharedSessionContractI protected boolean cacheAfterInsert(EntityDataAccess cache, Object ck) { final SharedSessionContractImplementor session = getSession(); final SessionEventListenerManager eventListenerManager = session.getEventListenerManager(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); boolean afterInsert = false; try { eventListenerManager.cachePutStart(); @@ -289,13 +289,13 @@ protected boolean cacheAfterInsert(EntityDataAccess cache, Object ck) { return afterInsert; } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, cache, getPersister(), afterInsert, - EventManager.CacheActionDescription.ENTITY_AFTER_INSERT + EventMonitor.CacheActionDescription.ENTITY_AFTER_INSERT ); eventListenerManager.cachePutEnd(); } diff --git a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityUpdateAction.java b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityUpdateAction.java index 91b339291067..8e57dcc36288 100644 --- a/hibernate-core/src/main/java/org/hibernate/action/internal/EntityUpdateAction.java +++ b/hibernate-core/src/main/java/org/hibernate/action/internal/EntityUpdateAction.java @@ -17,8 +17,8 @@ import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.engine.spi.Status; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.service.spi.EventListenerGroup; import org.hibernate.event.spi.EventSource; import org.hibernate.event.spi.PostCommitUpdateEventListener; @@ -164,8 +164,8 @@ public void execute() throws HibernateException { final Object instance = getInstance(); final Object previousVersion = getPreviousVersion(); final Object ck = lockCacheItem( previousVersion ); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent event = eventManager.beginEntityUpdateEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent event = eventMonitor.beginEntityUpdateEvent(); boolean success = false; final GeneratedValues generatedValues; try { @@ -183,7 +183,7 @@ public void execute() throws HibernateException { success = true; } finally { - eventManager.completeEntityUpdateEvent( event, id, persister.getEntityName(), success, session ); + eventMonitor.completeEntityUpdateEvent( event, id, persister.getEntityName(), success, session ); } final EntityEntry entry = session.getPersistenceContextInternal().getEntry( instance ); if ( entry == null ) { @@ -329,8 +329,8 @@ protected Object lockCacheItem(Object previousVersion) { protected boolean updateCache(EntityPersister persister, Object previousVersion, Object ck) { final SharedSessionContractImplementor session = getSession(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); final EntityDataAccess cacheAccessStrategy = persister.getCacheAccessStrategy(); boolean update = false; try { @@ -339,13 +339,13 @@ protected boolean updateCache(EntityPersister persister, Object previousVersion, return update; } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, cacheAccessStrategy, getPersister(), update, - EventManager.CacheActionDescription.ENTITY_UPDATE + EventMonitor.CacheActionDescription.ENTITY_UPDATE ); session.getEventListenerManager().cachePutEnd(); } @@ -455,21 +455,21 @@ private boolean cacheUpdateRequired(boolean success, EntityPersister persister, protected void cacheAfterUpdate(EntityDataAccess cache, Object ck, SharedSessionContractImplementor session) { final SessionEventListenerManager eventListenerManager = session.getEventListenerManager(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); boolean put = false; try { eventListenerManager.cachePutStart(); put = cache.afterUpdate( session, ck, cacheEntry, nextVersion, previousVersion, lock ); } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, cache, getPersister(), put, - EventManager.CacheActionDescription.ENTITY_AFTER_UPDATE + EventMonitor.CacheActionDescription.ENTITY_AFTER_UPDATE ); final StatisticsImplementor statistics = session.getFactory().getStatistics(); if ( put && statistics.isStatisticsEnabled() ) { diff --git a/hibernate-core/src/main/java/org/hibernate/cache/internal/QueryResultsCacheImpl.java b/hibernate-core/src/main/java/org/hibernate/cache/internal/QueryResultsCacheImpl.java index 5ee4371a98d6..bae5aac23701 100644 --- a/hibernate-core/src/main/java/org/hibernate/cache/internal/QueryResultsCacheImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/cache/internal/QueryResultsCacheImpl.java @@ -15,8 +15,8 @@ import org.hibernate.cache.spi.QueryResultsRegion; import org.hibernate.cache.spi.TimestampsCache; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import static org.hibernate.cache.spi.SecondLevelCacheLogger.L2CACHE_LOGGER; @@ -61,19 +61,19 @@ public boolean put( deepCopy( results ) ); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); try { session.getEventListenerManager().cachePutStart(); cacheRegion.putIntoCache( key, cacheItem, session ); } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, cacheRegion, true, - EventManager.CacheActionDescription.QUERY_RESULT + EventMonitor.CacheActionDescription.QUERY_RESULT ); session.getEventListenerManager().cachePutEnd(); } @@ -152,14 +152,14 @@ public List> get( private CacheItem getCachedData(QueryKey key, SharedSessionContractImplementor session) { CacheItem cachedItem = null; - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cacheGetEvent = eventManager.beginCacheGetEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cacheGetEvent = eventMonitor.beginCacheGetEvent(); try { session.getEventListenerManager().cacheGetStart(); cachedItem = (CacheItem) cacheRegion.getFromCache( key, session ); } finally { - eventManager.completeCacheGetEvent( + eventMonitor.completeCacheGetEvent( cacheGetEvent, session, cacheRegion, diff --git a/hibernate-core/src/main/java/org/hibernate/cache/internal/TimestampsCacheEnabledImpl.java b/hibernate-core/src/main/java/org/hibernate/cache/internal/TimestampsCacheEnabledImpl.java index ad6ee622703b..e0c4bb4f2892 100644 --- a/hibernate-core/src/main/java/org/hibernate/cache/internal/TimestampsCacheEnabledImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/cache/internal/TimestampsCacheEnabledImpl.java @@ -12,8 +12,8 @@ import org.hibernate.engine.spi.SessionEventListenerManager; import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.stat.spi.StatisticsImplementor; import org.jboss.logging.Logger; @@ -58,8 +58,8 @@ public void preInvalidate( if ( debugEnabled ) { log.debugf( "Pre-invalidating space [%s], timestamp: %s", space, ts ); } - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); try { eventListenerManager.cachePutStart(); @@ -68,12 +68,12 @@ public void preInvalidate( timestampsRegion.putIntoCache( space, ts, session ); } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, timestampsRegion, true, - EventManager.CacheActionDescription.TIMESTAMP_PRE_INVALIDATE + EventMonitor.CacheActionDescription.TIMESTAMP_PRE_INVALIDATE ); eventListenerManager.cachePutEnd(); } @@ -100,19 +100,19 @@ public void invalidate( } final SessionEventListenerManager eventListenerManager = session.getEventListenerManager(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); try { eventListenerManager.cachePutStart(); timestampsRegion.putIntoCache( space, ts, session ); } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session, timestampsRegion, true, - EventManager.CacheActionDescription.TIMESTAMP_INVALIDATE + EventMonitor.CacheActionDescription.TIMESTAMP_INVALIDATE ); eventListenerManager.cachePutEnd(); @@ -192,14 +192,14 @@ public boolean isUpToDate( private Long getLastUpdateTimestampForSpace(String space, SharedSessionContractImplementor session) { Long ts = null; - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cacheGetEvent = eventManager.beginCacheGetEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cacheGetEvent = eventMonitor.beginCacheGetEvent(); try { session.getEventListenerManager().cacheGetStart(); ts = (Long) timestampsRegion.getFromCache( space, session ); } finally { - eventManager.completeCacheGetEvent( + eventMonitor.completeCacheGetEvent( cacheGetEvent, session, timestampsRegion, diff --git a/hibernate-core/src/main/java/org/hibernate/engine/internal/CacheHelper.java b/hibernate-core/src/main/java/org/hibernate/engine/internal/CacheHelper.java index 112a4559c85a..1656cbb296af 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/internal/CacheHelper.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/internal/CacheHelper.java @@ -8,8 +8,8 @@ import org.hibernate.cache.spi.access.CachedDomainDataAccess; import org.hibernate.engine.spi.SessionEventListenerManager; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.metamodel.mapping.JdbcMapping; import org.hibernate.persister.collection.CollectionPersister; import org.hibernate.persister.entity.EntityPersister; @@ -42,13 +42,13 @@ public static Object fromSharedCache( final SessionEventListenerManager eventListenerManager = session.getEventListenerManager(); Object cachedValue = null; eventListenerManager.cacheGetStart(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cacheGetEvent = eventManager.beginCacheGetEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cacheGetEvent = eventMonitor.beginCacheGetEvent(); try { cachedValue = cacheAccess.get( session, cacheKey ); } finally { - eventManager.completeCacheGetEvent( + eventMonitor.completeCacheGetEvent( cacheGetEvent, session, cacheAccess.getRegion(), @@ -69,13 +69,13 @@ public static Object fromSharedCache( final SessionEventListenerManager eventListenerManager = session.getEventListenerManager(); Object cachedValue = null; eventListenerManager.cacheGetStart(); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent cacheGetEvent = eventManager.beginCacheGetEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent cacheGetEvent = eventMonitor.beginCacheGetEvent(); try { cachedValue = cacheAccess.get( session, cacheKey ); } finally { - eventManager.completeCacheGetEvent( + eventMonitor.completeCacheGetEvent( cacheGetEvent, session, cacheAccess.getRegion(), diff --git a/hibernate-core/src/main/java/org/hibernate/engine/internal/NaturalIdResolutionsImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/internal/NaturalIdResolutionsImpl.java index e5ea7f9abd21..9249569b7e19 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/internal/NaturalIdResolutionsImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/internal/NaturalIdResolutionsImpl.java @@ -21,8 +21,8 @@ import org.hibernate.engine.spi.Resolution; import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.metamodel.mapping.EntityMappingType; import org.hibernate.metamodel.mapping.NaturalIdLogging; import org.hibernate.metamodel.mapping.NaturalIdMapping; @@ -265,7 +265,7 @@ private void manageSharedResolution( final SessionFactoryImplementor factory = s.getFactory(); final StatisticsImplementor statistics = factory.getStatistics(); - final EventManager eventManager = s.getEventManager(); + final EventMonitor eventMonitor = s.getEventMonitor(); switch ( source ) { case LOAD: { if ( CacheHelper.fromSharedCache( s, cacheKey, persister, cacheAccess ) != null ) { @@ -273,7 +273,7 @@ private void manageSharedResolution( return; } boolean put = false; - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); try { put = cacheAccess.putFromLoad( s, @@ -290,14 +290,14 @@ private void manageSharedResolution( } } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session(), cacheAccess, rootEntityPersister, put, true, - EventManager.CacheActionDescription.ENTITY_LOAD + EventMonitor.CacheActionDescription.ENTITY_LOAD ); } @@ -305,7 +305,7 @@ private void manageSharedResolution( } case INSERT: { boolean put = false; - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); try { put = cacheAccess.insert( s, cacheKey, id ); @@ -317,14 +317,14 @@ private void manageSharedResolution( } } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session(), cacheAccess, rootEntityPersister, put, true, - EventManager.CacheActionDescription.ENTITY_INSERT + EventMonitor.CacheActionDescription.ENTITY_INSERT ); } @@ -358,7 +358,7 @@ private void manageSharedResolution( final SoftLock lock = cacheAccess.lockItem( s, cacheKey, null ); boolean put = false; - final HibernateMonitoringEvent cachePutEvent = eventManager.beginCachePutEvent(); + final DiagnosticEvent cachePutEvent = eventMonitor.beginCachePutEvent(); try { put = cacheAccess.update( s, cacheKey, id ); if ( put && statistics.isStatisticsEnabled() ) { @@ -369,14 +369,14 @@ private void manageSharedResolution( } } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEvent, session(), cacheAccess, rootEntityPersister, put, true, - EventManager.CacheActionDescription.ENTITY_UPDATE + EventMonitor.CacheActionDescription.ENTITY_UPDATE ); } @@ -385,7 +385,7 @@ private void manageSharedResolution( cacheAccess.unlockItem( s, previousCacheKey, removalLock ); if (success) { boolean putAfterUpdate = false; - final HibernateMonitoringEvent cachePutEventAfterUpdate = eventManager.beginCachePutEvent(); + final DiagnosticEvent cachePutEventAfterUpdate = eventMonitor.beginCachePutEvent(); try { putAfterUpdate = cacheAccess.afterUpdate( s, @@ -402,14 +402,14 @@ private void manageSharedResolution( } } finally { - eventManager.completeCachePutEvent( + eventMonitor.completeCachePutEvent( cachePutEventAfterUpdate, session(), cacheAccess, rootEntityPersister, putAfterUpdate, true, - EventManager.CacheActionDescription.ENTITY_AFTER_UPDATE + EventMonitor.CacheActionDescription.ENTITY_AFTER_UPDATE ); } } diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/batch/internal/BatchImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/batch/internal/BatchImpl.java index 15c9ca7a81cc..8da0d7e0eba3 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/batch/internal/BatchImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/batch/internal/BatchImpl.java @@ -21,8 +21,8 @@ import org.hibernate.engine.jdbc.spi.JdbcServices; import org.hibernate.engine.jdbc.spi.SqlExceptionHelper; import org.hibernate.engine.jdbc.spi.SqlStatementLogger; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.resource.jdbc.spi.JdbcEventHandler; import org.hibernate.resource.jdbc.spi.JdbcSessionOwner; @@ -258,14 +258,14 @@ protected void performExecution() { try { if ( statementDetails.getMutatingTableDetails().isIdentifierTable() ) { final int[] rowCounts; - final EventManager eventManager = jdbcSessionOwner.getEventManager(); - final HibernateMonitoringEvent executionEvent = eventManager.beginJdbcBatchExecutionEvent(); + final EventMonitor eventMonitor = jdbcSessionOwner.getEventMonitor(); + final DiagnosticEvent executionEvent = eventMonitor.beginJdbcBatchExecutionEvent(); try { eventHandler.jdbcExecuteBatchStart(); rowCounts = statement.executeBatch(); } finally { - eventManager.completeJdbcBatchExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcBatchExecutionEvent( executionEvent, sql ); eventHandler.jdbcExecuteBatchEnd(); } checkRowCounts( rowCounts, statementDetails ); diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java index 2ed99ad80f8f..52442048c817 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/env/internal/JdbcEnvironmentInitiator.java @@ -30,8 +30,8 @@ import org.hibernate.engine.jdbc.internal.JdbcServicesImpl; import org.hibernate.engine.jdbc.spi.JdbcServices; import org.hibernate.engine.jdbc.spi.SqlExceptionHelper; -import org.hibernate.event.internal.EmptyEventManager; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.internal.EmptyEventMonitor; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.internal.CoreMessageLogger; import org.hibernate.internal.log.ConnectionInfoLogger; import org.hibernate.internal.util.StringHelper; @@ -619,7 +619,7 @@ private static class TemporaryJdbcSessionOwner implements JdbcSessionOwner, Jdbc private final JpaCompliance jpaCompliance; private final SqlExceptionHelper sqlExceptionHelper; TransactionCoordinator transactionCoordinator; - private final EmptyEventManager eventManager; + private final EmptyEventMonitor eventManager; public TemporaryJdbcSessionOwner( JdbcConnectionAccess jdbcConnectionAccess, @@ -643,7 +643,7 @@ public TemporaryJdbcSessionOwner( .getDefaultConnectionHandlingMode(); this.jpaCompliance = new MutableJpaComplianceImpl( Collections.emptyMap(), false ); - this.eventManager = new EmptyEventManager(); + this.eventManager = new EmptyEventMonitor(); } @Override @@ -692,7 +692,7 @@ public Integer getJdbcBatchSize() { } @Override - public EventManager getEventManager() { + public EventMonitor getEventMonitor() { return eventManager; } diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/MutationStatementPreparerImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/MutationStatementPreparerImpl.java index b7451c5a8744..0fc25d22cde9 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/MutationStatementPreparerImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/MutationStatementPreparerImpl.java @@ -12,8 +12,8 @@ import org.hibernate.engine.jdbc.spi.JdbcServices; import org.hibernate.engine.jdbc.spi.MutationStatementPreparer; import org.hibernate.engine.jdbc.spi.SqlExceptionHelper; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.resource.jdbc.spi.JdbcEventHandler; import org.hibernate.resource.jdbc.spi.JdbcSessionContext; import org.hibernate.resource.jdbc.spi.JdbcSessionOwner; @@ -94,15 +94,15 @@ public PreparedStatement prepareStatement() { final PreparedStatement preparedStatement; final JdbcSessionOwner jdbcSessionOwner = jdbcCoordinator.getJdbcSessionOwner(); final JdbcEventHandler jdbcEventHandler = jdbcSessionOwner.getJdbcSessionContext().getEventHandler(); - final EventManager eventManager = jdbcSessionOwner.getEventManager(); - final HibernateMonitoringEvent jdbcPreparedStatementCreation = eventManager.beginJdbcPreparedStatementCreationEvent(); + final EventMonitor eventMonitor = jdbcSessionOwner.getEventMonitor(); + final DiagnosticEvent jdbcPreparedStatementCreation = eventMonitor.beginJdbcPreparedStatementCreationEvent(); try { jdbcEventHandler.jdbcPrepareStatementStart(); preparedStatement = doPrepare(); setStatementTimeout( preparedStatement ); } finally { - eventManager.completeJdbcPreparedStatementCreationEvent( jdbcPreparedStatementCreation, sql ); + eventMonitor.completeJdbcPreparedStatementCreationEvent( jdbcPreparedStatementCreation, sql ); jdbcEventHandler.jdbcPrepareStatementEnd(); } postProcess( preparedStatement ); diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/ResultSetReturnImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/ResultSetReturnImpl.java index b851b69b6205..14d57e4cdea8 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/ResultSetReturnImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/ResultSetReturnImpl.java @@ -14,8 +14,8 @@ import org.hibernate.engine.jdbc.spi.ResultSetReturn; import org.hibernate.engine.jdbc.spi.SqlExceptionHelper; import org.hibernate.engine.jdbc.spi.SqlStatementLogger; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.resource.jdbc.spi.JdbcEventHandler; import org.hibernate.resource.jdbc.spi.JdbcSessionContext; @@ -50,15 +50,15 @@ public ResultSet extract(PreparedStatement statement, String sql) { } try { final ResultSet rs; - final EventManager eventManager = getEventManager(); - final HibernateMonitoringEvent executionEvent = - eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = getEventManager(); + final DiagnosticEvent executionEvent = + eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { jdbcExecuteStatementStart(); rs = statement.executeQuery(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); jdbcExecuteStatementEnd(); endSlowQueryLogging(sql, executeStartNanos); } @@ -70,8 +70,8 @@ public ResultSet extract(PreparedStatement statement, String sql) { } } - private EventManager getEventManager() { - return jdbcCoordinator.getJdbcSessionOwner().getEventManager(); + private EventMonitor getEventManager() { + return jdbcCoordinator.getJdbcSessionOwner().getEventMonitor(); } private JdbcEventHandler getEventHandler() { @@ -96,15 +96,15 @@ public ResultSet extract(Statement statement, String sql) { long executeStartNanos = beginSlowQueryLogging(); try { final ResultSet rs; - final EventManager eventManager = getEventManager(); - final HibernateMonitoringEvent executionEvent = - eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = getEventManager(); + final DiagnosticEvent executionEvent = + eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { jdbcExecuteStatementStart(); rs = statement.executeQuery( sql ); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); jdbcExecuteStatementEnd(); endSlowQueryLogging( sql, executeStartNanos ); } @@ -122,9 +122,9 @@ public ResultSet execute(PreparedStatement statement, String sql) { long executeStartNanos = beginSlowQueryLogging(); try { final ResultSet rs; - final EventManager eventManager = getEventManager(); - final HibernateMonitoringEvent executionEvent = - eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = getEventManager(); + final DiagnosticEvent executionEvent = + eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { jdbcExecuteStatementStart(); if ( !statement.execute() ) { @@ -135,7 +135,7 @@ public ResultSet execute(PreparedStatement statement, String sql) { rs = statement.getResultSet(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); jdbcExecuteStatementEnd(); endSlowQueryLogging( sql, executeStartNanos ); } @@ -153,9 +153,9 @@ public ResultSet execute(Statement statement, String sql) { long executeStartNanos = beginSlowQueryLogging(); try { final ResultSet rs; - final EventManager eventManager = getEventManager(); - final HibernateMonitoringEvent executionEvent = - eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = getEventManager(); + final DiagnosticEvent executionEvent = + eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { jdbcExecuteStatementStart(); if ( !statement.execute( sql ) ) { @@ -166,7 +166,7 @@ public ResultSet execute(Statement statement, String sql) { rs = statement.getResultSet(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); jdbcExecuteStatementEnd(); endSlowQueryLogging( sql, executeStartNanos ); } @@ -182,9 +182,9 @@ public ResultSet execute(Statement statement, String sql) { public int executeUpdate(PreparedStatement statement, String sql) { assert statement != null; long executeStartNanos = beginSlowQueryLogging(); - final EventManager eventManager = getEventManager(); - final HibernateMonitoringEvent executionEvent = - eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = getEventManager(); + final DiagnosticEvent executionEvent = + eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { jdbcExecuteStatementStart(); return statement.executeUpdate(); @@ -193,7 +193,7 @@ public int executeUpdate(PreparedStatement statement, String sql) { throw sqlExceptionHelper.convert( e, "could not execute statement", sql ); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); jdbcExecuteStatementEnd(); endSlowQueryLogging( sql, executeStartNanos ); } @@ -203,9 +203,9 @@ public int executeUpdate(PreparedStatement statement, String sql) { public int executeUpdate(Statement statement, String sql) { sqlStatementLogger.logStatement( sql ); long executeStartNanos = beginSlowQueryLogging(); - final EventManager eventManager = getEventManager(); - final HibernateMonitoringEvent executionEvent = - eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = getEventManager(); + final DiagnosticEvent executionEvent = + eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { jdbcExecuteStatementStart(); return statement.executeUpdate( sql ); @@ -214,7 +214,7 @@ public int executeUpdate(Statement statement, String sql) { throw sqlExceptionHelper.convert( e, "could not execute statement", sql ); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); jdbcExecuteStatementEnd(); endSlowQueryLogging( sql, executeStartNanos ); } diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/StatementPreparerImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/StatementPreparerImpl.java index f13b87b79f40..9fe086fdcc04 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/StatementPreparerImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/internal/StatementPreparerImpl.java @@ -15,8 +15,8 @@ import org.hibernate.engine.jdbc.spi.JdbcServices; import org.hibernate.engine.jdbc.spi.SqlExceptionHelper; import org.hibernate.engine.jdbc.spi.StatementPreparer; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.resource.jdbc.spi.JdbcEventHandler; import org.hibernate.resource.jdbc.spi.JdbcSessionContext; import org.hibernate.resource.jdbc.spi.JdbcSessionOwner; @@ -171,15 +171,15 @@ public PreparedStatement prepareStatement() { final PreparedStatement preparedStatement; final JdbcSessionOwner jdbcSessionOwner = jdbcCoordinator.getJdbcSessionOwner(); final JdbcEventHandler observer = jdbcSessionOwner.getJdbcSessionContext().getEventHandler(); - final EventManager eventManager = jdbcSessionOwner.getEventManager(); - final HibernateMonitoringEvent jdbcPreparedStatementCreation = eventManager.beginJdbcPreparedStatementCreationEvent(); + final EventMonitor eventMonitor = jdbcSessionOwner.getEventMonitor(); + final DiagnosticEvent jdbcPreparedStatementCreation = eventMonitor.beginJdbcPreparedStatementCreationEvent(); try { observer.jdbcPrepareStatementStart(); preparedStatement = doPrepare(); setStatementTimeout( preparedStatement ); } finally { - eventManager.completeJdbcPreparedStatementCreationEvent( jdbcPreparedStatementCreation, sql ); + eventMonitor.completeJdbcPreparedStatementCreationEvent( jdbcPreparedStatementCreation, sql ); observer.jdbcPrepareStatementEnd(); } postProcess( preparedStatement ); diff --git a/hibernate-core/src/main/java/org/hibernate/engine/spi/SessionDelegatorBaseImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/spi/SessionDelegatorBaseImpl.java index 27d7aaa95fd0..505a3435328d 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/spi/SessionDelegatorBaseImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/spi/SessionDelegatorBaseImpl.java @@ -34,7 +34,7 @@ import org.hibernate.engine.jdbc.connections.spi.JdbcConnectionAccess; import org.hibernate.engine.jdbc.spi.JdbcCoordinator; import org.hibernate.engine.jdbc.spi.JdbcServices; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.spi.EventSource; import org.hibernate.graph.RootGraph; import org.hibernate.graph.spi.RootGraphImplementor; @@ -1168,8 +1168,8 @@ public Integer getJdbcBatchSize() { } @Override - public EventManager getEventManager() { - return delegate.getEventManager(); + public EventMonitor getEventMonitor() { + return delegate.getEventMonitor(); } @Override diff --git a/hibernate-core/src/main/java/org/hibernate/engine/spi/SharedSessionDelegatorBaseImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/spi/SharedSessionDelegatorBaseImpl.java index ddd51a39739b..4aa1eec78554 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/spi/SharedSessionDelegatorBaseImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/spi/SharedSessionDelegatorBaseImpl.java @@ -25,7 +25,7 @@ import org.hibernate.engine.jdbc.connections.spi.JdbcConnectionAccess; import org.hibernate.engine.jdbc.spi.JdbcCoordinator; import org.hibernate.engine.jdbc.spi.JdbcServices; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.graph.RootGraph; import org.hibernate.jdbc.ReturningWork; import org.hibernate.jdbc.Work; @@ -329,8 +329,8 @@ public Integer getJdbcBatchSize() { } @Override - public EventManager getEventManager() { - return delegate.getEventManager(); + public EventMonitor getEventMonitor() { + return delegate.getEventMonitor(); } @Override diff --git a/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultAutoFlushEventListener.java b/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultAutoFlushEventListener.java index 5e2aeb135b38..2c0fe0c44b65 100644 --- a/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultAutoFlushEventListener.java +++ b/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultAutoFlushEventListener.java @@ -11,8 +11,8 @@ import org.hibernate.engine.spi.SessionEventListenerManager; import org.hibernate.event.spi.AutoFlushEvent; import org.hibernate.event.spi.AutoFlushEventListener; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.EventSource; import org.hibernate.internal.CoreMessageLogger; import org.hibernate.stat.spi.StatisticsImplementor; @@ -40,8 +40,8 @@ public class DefaultAutoFlushEventListener extends AbstractFlushingEventListener public void onAutoFlush(AutoFlushEvent event) throws HibernateException { final EventSource source = event.getSession(); final SessionEventListenerManager eventListenerManager = source.getEventListenerManager(); - final EventManager eventManager = source.getEventManager(); - final HibernateMonitoringEvent partialFlushEvent = eventManager.beginPartialFlushEvent(); + final EventMonitor eventMonitor = source.getEventMonitor(); + final DiagnosticEvent partialFlushEvent = eventMonitor.beginPartialFlushEvent(); try { eventListenerManager.partialFlushStart(); @@ -62,7 +62,7 @@ public void onAutoFlush(AutoFlushEvent event) throws HibernateException { // note: performExecutions() clears all collectionXxxxtion // collections (the collection actions) in the session - final HibernateMonitoringEvent flushEvent = eventManager.beginFlushEvent(); + final DiagnosticEvent flushEvent = eventMonitor.beginFlushEvent(); try { performExecutions( source ); postFlush( source ); @@ -70,7 +70,7 @@ public void onAutoFlush(AutoFlushEvent event) throws HibernateException { postPostFlush( source ); } finally { - eventManager.completeFlushEvent( flushEvent, event, true ); + eventMonitor.completeFlushEvent( flushEvent, event, true ); } final StatisticsImplementor statistics = source.getFactory().getStatistics(); if ( statistics.isStatisticsEnabled() ) { @@ -85,7 +85,7 @@ public void onAutoFlush(AutoFlushEvent event) throws HibernateException { } } finally { - eventManager.completePartialFlushEvent( partialFlushEvent, event ); + eventMonitor.completePartialFlushEvent( partialFlushEvent, event ); eventListenerManager.partialFlushEnd( event.getNumberOfEntitiesProcessed(), event.getNumberOfEntitiesProcessed() @@ -97,15 +97,15 @@ public void onAutoFlush(AutoFlushEvent event) throws HibernateException { public void onAutoPreFlush(EventSource source) throws HibernateException { final SessionEventListenerManager eventListenerManager = source.getEventListenerManager(); eventListenerManager.prePartialFlushStart(); - final EventManager eventManager = source.getEventManager(); - HibernateMonitoringEvent hibernateMonitoringEvent = eventManager.beginPrePartialFlush(); + final EventMonitor eventMonitor = source.getEventMonitor(); + DiagnosticEvent diagnosticEvent = eventMonitor.beginPrePartialFlush(); try { if ( flushMightBeNeeded( source ) ) { preFlush( source, source.getPersistenceContextInternal() ); } } finally { - eventManager.completePrePartialFlush( hibernateMonitoringEvent, source ); + eventMonitor.completePrePartialFlush( diagnosticEvent, source ); eventListenerManager.prePartialFlushEnd(); } } diff --git a/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEntityEventListener.java b/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEntityEventListener.java index 8316663cccef..53f249921120 100644 --- a/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEntityEventListener.java +++ b/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEntityEventListener.java @@ -23,8 +23,8 @@ import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.engine.spi.SessionImplementor; import org.hibernate.engine.spi.Status; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.EventSource; import org.hibernate.event.spi.FlushEntityEvent; import org.hibernate.event.spi.FlushEntityEventListener; @@ -472,8 +472,8 @@ private static int[] performDirtyCheck(FlushEntityEvent event) { final SessionImplementor session = event.getSession(); final boolean dirtyCheckPossible; int[] dirtyProperties = null; - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent dirtyCalculationEvent = eventManager.beginDirtyCalculationEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent dirtyCalculationEvent = eventMonitor.beginDirtyCalculationEvent(); final EntityEntry entry = event.getEntityEntry(); final EntityPersister persister = entry.getPersister(); try { @@ -524,7 +524,7 @@ else if ( entry.getStatus() == Status.DELETED && !entry.isModifiableEntity() ) { event.setDirtyCheckPossible( dirtyCheckPossible ); } finally { - eventManager.completeDirtyCalculationEvent( dirtyCalculationEvent, session, persister, entry, dirtyProperties ); + eventMonitor.completeDirtyCalculationEvent( dirtyCalculationEvent, session, persister, entry, dirtyProperties ); session.getEventListenerManager().dirtyCalculationEnd( dirtyProperties != null ); } return dirtyProperties; diff --git a/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEventListener.java b/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEventListener.java index ffa7518db297..b3a6d89fa578 100644 --- a/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEventListener.java +++ b/hibernate-core/src/main/java/org/hibernate/event/internal/DefaultFlushEventListener.java @@ -6,8 +6,8 @@ import org.hibernate.HibernateException; import org.hibernate.engine.spi.PersistenceContext; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.EventSource; import org.hibernate.event.spi.FlushEvent; import org.hibernate.event.spi.FlushEventListener; @@ -28,10 +28,10 @@ public class DefaultFlushEventListener extends AbstractFlushingEventListener imp public void onFlush(FlushEvent event) throws HibernateException { final EventSource source = event.getSession(); final PersistenceContext persistenceContext = source.getPersistenceContextInternal(); - final EventManager eventManager = source.getEventManager(); + final EventMonitor eventMonitor = source.getEventMonitor(); if ( persistenceContext.getNumberOfManagedEntities() > 0 || persistenceContext.getCollectionEntriesSize() > 0 ) { - final HibernateMonitoringEvent flushEvent = eventManager.beginFlushEvent(); + final DiagnosticEvent flushEvent = eventMonitor.beginFlushEvent(); try { source.getEventListenerManager().flushStart(); @@ -40,7 +40,7 @@ public void onFlush(FlushEvent event) throws HibernateException { postFlush( source ); } finally { - eventManager.completeFlushEvent( flushEvent, event ); + eventMonitor.completeFlushEvent( flushEvent, event ); source.getEventListenerManager().flushEnd( event.getNumberOfEntitiesProcessed(), event.getNumberOfCollectionsProcessed() diff --git a/hibernate-core/src/main/java/org/hibernate/event/internal/EmptyEventManager.java b/hibernate-core/src/main/java/org/hibernate/event/monitor/internal/EmptyEventMonitor.java similarity index 52% rename from hibernate-core/src/main/java/org/hibernate/event/internal/EmptyEventManager.java rename to hibernate-core/src/main/java/org/hibernate/event/monitor/internal/EmptyEventMonitor.java index ed05ae31f5e0..da4cdc86d370 100644 --- a/hibernate-core/src/main/java/org/hibernate/event/internal/EmptyEventManager.java +++ b/hibernate-core/src/main/java/org/hibernate/event/monitor/internal/EmptyEventMonitor.java @@ -2,7 +2,7 @@ * SPDX-License-Identifier: LGPL-2.1-or-later * Copyright Red Hat Inc. and Hibernate Authors */ -package org.hibernate.event.internal; +package org.hibernate.event.monitor.internal; import org.hibernate.LockMode; import org.hibernate.cache.spi.Region; @@ -10,107 +10,107 @@ import org.hibernate.engine.spi.EntityEntry; import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.event.spi.AutoFlushEvent; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.event.spi.FlushEvent; import org.hibernate.persister.collection.CollectionPersister; import org.hibernate.persister.entity.EntityPersister; /** - * An {@link EventManager} that ignores all events. + * An {@link EventMonitor} that ignores all events. */ -public final class EmptyEventManager implements EventManager { +public final class EmptyEventMonitor implements EventMonitor { @Override - public HibernateMonitoringEvent beginSessionOpenEvent() { + public DiagnosticEvent beginSessionOpenEvent() { return null; } @Override - public void completeSessionOpenEvent(HibernateMonitoringEvent sessionOpenEvent, SharedSessionContractImplementor session) { + public void completeSessionOpenEvent(DiagnosticEvent sessionOpenEvent, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginSessionClosedEvent() { + public DiagnosticEvent beginSessionClosedEvent() { return null; } @Override public void completeSessionClosedEvent( - HibernateMonitoringEvent sessionClosedEvent, + DiagnosticEvent sessionClosedEvent, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginJdbcConnectionAcquisitionEvent() { + public DiagnosticEvent beginJdbcConnectionAcquisitionEvent() { return null; } @Override public void completeJdbcConnectionAcquisitionEvent( - HibernateMonitoringEvent jdbcConnectionAcquisitionEvent, + DiagnosticEvent jdbcConnectionAcquisitionEvent, SharedSessionContractImplementor session, Object tenantId) { } @Override - public HibernateMonitoringEvent beginJdbcConnectionReleaseEvent() { + public DiagnosticEvent beginJdbcConnectionReleaseEvent() { return null; } @Override public void completeJdbcConnectionReleaseEvent( - HibernateMonitoringEvent jdbcConnectionReleaseEvent, + DiagnosticEvent jdbcConnectionReleaseEvent, SharedSessionContractImplementor session, Object tenantId) { } @Override - public HibernateMonitoringEvent beginJdbcPreparedStatementCreationEvent() { + public DiagnosticEvent beginJdbcPreparedStatementCreationEvent() { return null; } @Override public void completeJdbcPreparedStatementCreationEvent( - HibernateMonitoringEvent jdbcPreparedStatementCreation, + DiagnosticEvent jdbcPreparedStatementCreation, String preparedStatementSql) { } @Override - public HibernateMonitoringEvent beginJdbcPreparedStatementExecutionEvent() { + public DiagnosticEvent beginJdbcPreparedStatementExecutionEvent() { return null; } @Override public void completeJdbcPreparedStatementExecutionEvent( - HibernateMonitoringEvent jdbcPreparedStatementExecutionEvent, + DiagnosticEvent jdbcPreparedStatementExecutionEvent, String preparedStatementSql) { } @Override - public HibernateMonitoringEvent beginJdbcBatchExecutionEvent() { + public DiagnosticEvent beginJdbcBatchExecutionEvent() { return null; } @Override - public void completeJdbcBatchExecutionEvent(HibernateMonitoringEvent jdbcBatchExecutionEvent, String statementSql) { + public void completeJdbcBatchExecutionEvent(DiagnosticEvent jdbcBatchExecutionEvent, String statementSql) { } @Override - public HibernateMonitoringEvent beginCachePutEvent() { + public DiagnosticEvent beginCachePutEvent() { return null; } @Override public void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, + DiagnosticEvent cachePutEvent, SharedSessionContractImplementor session, Region region, boolean cacheContentChanged, @@ -120,7 +120,7 @@ public void completeCachePutEvent( @Override public void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, + DiagnosticEvent cachePutEvent, SharedSessionContractImplementor session, CachedDomainDataAccess cachedDomainDataAccess, EntityPersister persister, @@ -131,7 +131,7 @@ public void completeCachePutEvent( @Override public void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, + DiagnosticEvent cachePutEvent, SharedSessionContractImplementor session, CachedDomainDataAccess cachedDomainDataAccess, EntityPersister persister, @@ -143,7 +143,7 @@ public void completeCachePutEvent( @Override public void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, + DiagnosticEvent cachePutEvent, SharedSessionContractImplementor session, CachedDomainDataAccess cachedDomainDataAccess, CollectionPersister persister, @@ -153,13 +153,13 @@ public void completeCachePutEvent( } @Override - public HibernateMonitoringEvent beginCacheGetEvent() { + public DiagnosticEvent beginCacheGetEvent() { return null; } @Override public void completeCacheGetEvent( - HibernateMonitoringEvent cacheGetEvent, + DiagnosticEvent cacheGetEvent, SharedSessionContractImplementor session, Region region, boolean hit) { @@ -168,7 +168,7 @@ public void completeCacheGetEvent( @Override public void completeCacheGetEvent( - HibernateMonitoringEvent cacheGetEvent, + DiagnosticEvent cacheGetEvent, SharedSessionContractImplementor session, Region region, EntityPersister persister, @@ -179,7 +179,7 @@ public void completeCacheGetEvent( @Override public void completeCacheGetEvent( - HibernateMonitoringEvent cacheGetEvent, + DiagnosticEvent cacheGetEvent, SharedSessionContractImplementor session, Region region, CollectionPersister persister, @@ -188,38 +188,38 @@ public void completeCacheGetEvent( } @Override - public HibernateMonitoringEvent beginFlushEvent() { + public DiagnosticEvent beginFlushEvent() { return null; } @Override - public void completeFlushEvent(HibernateMonitoringEvent flushEvent, FlushEvent event) { + public void completeFlushEvent(DiagnosticEvent flushEvent, FlushEvent event) { } @Override - public void completeFlushEvent(HibernateMonitoringEvent flushEvent, FlushEvent event, boolean autoFlush) { + public void completeFlushEvent(DiagnosticEvent flushEvent, FlushEvent event, boolean autoFlush) { } @Override - public HibernateMonitoringEvent beginPartialFlushEvent() { + public DiagnosticEvent beginPartialFlushEvent() { return null; } @Override - public void completePartialFlushEvent(HibernateMonitoringEvent flushEvent, AutoFlushEvent event) { + public void completePartialFlushEvent(DiagnosticEvent flushEvent, AutoFlushEvent event) { } @Override - public HibernateMonitoringEvent beginDirtyCalculationEvent() { + public DiagnosticEvent beginDirtyCalculationEvent() { return null; } @Override public void completeDirtyCalculationEvent( - HibernateMonitoringEvent dirtyCalculationEvent, + DiagnosticEvent dirtyCalculationEvent, SharedSessionContractImplementor session, EntityPersister persister, EntityEntry entry, @@ -228,25 +228,25 @@ public void completeDirtyCalculationEvent( } @Override - public HibernateMonitoringEvent beginPrePartialFlush() { + public DiagnosticEvent beginPrePartialFlush() { return null; } @Override public void completePrePartialFlush( - HibernateMonitoringEvent prePartialFlush, + DiagnosticEvent prePartialFlush, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginEntityInsertEvent() { + public DiagnosticEvent beginEntityInsertEvent() { return null; } @Override public void completeEntityInsertEvent( - HibernateMonitoringEvent event, + DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session) { @@ -254,13 +254,13 @@ public void completeEntityInsertEvent( } @Override - public HibernateMonitoringEvent beginEntityUpdateEvent() { + public DiagnosticEvent beginEntityUpdateEvent() { return null; } @Override public void completeEntityUpdateEvent( - HibernateMonitoringEvent event, + DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session) { @@ -268,23 +268,23 @@ public void completeEntityUpdateEvent( } @Override - public HibernateMonitoringEvent beginEntityUpsertEvent() { + public DiagnosticEvent beginEntityUpsertEvent() { return null; } @Override - public void completeEntityUpsertEvent(HibernateMonitoringEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session) { + public void completeEntityUpsertEvent(DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginEntityDeleteEvent() { + public DiagnosticEvent beginEntityDeleteEvent() { return null; } @Override public void completeEntityDeleteEvent( - HibernateMonitoringEvent event, + DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session) { @@ -292,42 +292,42 @@ public void completeEntityDeleteEvent( } @Override - public HibernateMonitoringEvent beginEntityLockEvent() { + public DiagnosticEvent beginEntityLockEvent() { return null; } @Override - public void completeEntityLockEvent(HibernateMonitoringEvent event, Object id, String entityName, LockMode lockMode, boolean success, SharedSessionContractImplementor session) { + public void completeEntityLockEvent(DiagnosticEvent event, Object id, String entityName, LockMode lockMode, boolean success, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginCollectionRecreateEvent() { + public DiagnosticEvent beginCollectionRecreateEvent() { return null; } @Override - public void completeCollectionRecreateEvent(HibernateMonitoringEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session) { + public void completeCollectionRecreateEvent(DiagnosticEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginCollectionUpdateEvent() { + public DiagnosticEvent beginCollectionUpdateEvent() { return null; } @Override - public void completeCollectionUpdateEvent(HibernateMonitoringEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session) { + public void completeCollectionUpdateEvent(DiagnosticEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session) { } @Override - public HibernateMonitoringEvent beginCollectionRemoveEvent() { + public DiagnosticEvent beginCollectionRemoveEvent() { return null; } @Override - public void completeCollectionRemoveEvent(HibernateMonitoringEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session) { + public void completeCollectionRemoveEvent(DiagnosticEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session) { } } diff --git a/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/DiagnosticEvent.java b/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/DiagnosticEvent.java new file mode 100644 index 000000000000..75b2f1b7676b --- /dev/null +++ b/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/DiagnosticEvent.java @@ -0,0 +1,21 @@ +/* + * SPDX-License-Identifier: LGPL-2.1-or-later + * Copyright Red Hat Inc. and Hibernate Authors + */ +package org.hibernate.event.monitor.spi; + +import org.hibernate.Incubating; + +/** + * An event which may be collected by the {@link EventMonitor}. + *
+ * An implementation of {@code EventMonitor} must define its + * own implementation or implementations of this interface, + * but these subtypes are never visible to the code which + * calls the {@code EventMonitor} to report events. + * + * @since 7.0 + */ +@Incubating +public interface DiagnosticEvent { +} diff --git a/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/EventMonitor.java b/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/EventMonitor.java new file mode 100644 index 000000000000..cd753ba9e072 --- /dev/null +++ b/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/EventMonitor.java @@ -0,0 +1,231 @@ +/* + * SPDX-License-Identifier: LGPL-2.1-or-later + * Copyright Red Hat Inc. and Hibernate Authors + */ +package org.hibernate.event.monitor.spi; + +import org.hibernate.Incubating; +import org.hibernate.LockMode; +import org.hibernate.cache.spi.Region; +import org.hibernate.cache.spi.access.CachedDomainDataAccess; +import org.hibernate.engine.spi.EntityEntry; +import org.hibernate.engine.spi.SharedSessionContractImplementor; +import org.hibernate.event.spi.AutoFlushEvent; +import org.hibernate.persister.collection.CollectionPersister; +import org.hibernate.persister.entity.EntityPersister; +import org.hibernate.service.JavaServiceLoadable; + +/** + * Contract implemented by services which collect, report, or monitor + * {@linkplain DiagnosticEvent diagnostic events} involving interactions + * between the {@linkplain org.hibernate.Session session} and the database + * or second-level cache. + *
+ * For example, this interface is implemented by Hibernate JFR to report + * events to Java Flight Recorder. + *
+ * Note that event reporting is different to aggregate metrics, + * which Hibernate exposes via the {@link org.hibernate.stat.Statistics} + * interface. + * + * @apiNote This an incubating API, subject to change. + * + * @since 7.0 + */ +@JavaServiceLoadable +@Incubating +public interface EventMonitor { + DiagnosticEvent beginSessionOpenEvent(); + + void completeSessionOpenEvent( + DiagnosticEvent sessionOpenEvent, + SharedSessionContractImplementor session); + + DiagnosticEvent beginSessionClosedEvent(); + + void completeSessionClosedEvent( + DiagnosticEvent sessionClosedEvent, + SharedSessionContractImplementor session); + + DiagnosticEvent beginJdbcConnectionAcquisitionEvent(); + + void completeJdbcConnectionAcquisitionEvent( + DiagnosticEvent jdbcConnectionAcquisitionEvent, + SharedSessionContractImplementor session, + Object tenantId); + + DiagnosticEvent beginJdbcConnectionReleaseEvent(); + + void completeJdbcConnectionReleaseEvent( + DiagnosticEvent jdbcConnectionReleaseEvent, + SharedSessionContractImplementor session, + Object tenantId); + + DiagnosticEvent beginJdbcPreparedStatementCreationEvent(); + + void completeJdbcPreparedStatementCreationEvent( + DiagnosticEvent jdbcPreparedStatementCreation, + String preparedStatementSql); + + DiagnosticEvent beginJdbcPreparedStatementExecutionEvent(); + + void completeJdbcPreparedStatementExecutionEvent( + DiagnosticEvent jdbcPreparedStatementExecutionEvent, + String preparedStatementSql); + + DiagnosticEvent beginJdbcBatchExecutionEvent(); + + void completeJdbcBatchExecutionEvent( + DiagnosticEvent jdbcBatchExecutionEvent, + String statementSql); + + DiagnosticEvent beginCachePutEvent(); + + void completeCachePutEvent( + DiagnosticEvent cachePutEvent, + SharedSessionContractImplementor session, + Region region, + boolean cacheContentChanged, + CacheActionDescription description); + + void completeCachePutEvent( + DiagnosticEvent cachePutEvent, + SharedSessionContractImplementor session, + CachedDomainDataAccess cachedDomainDataAccess, + EntityPersister persister, + boolean cacheContentChanged, + CacheActionDescription description); + + void completeCachePutEvent( + DiagnosticEvent cachePutEvent, + SharedSessionContractImplementor session, + CachedDomainDataAccess cachedDomainDataAccess, + EntityPersister persister, + boolean cacheContentChanged, + boolean isNatualId, + CacheActionDescription description); + + void completeCachePutEvent( + DiagnosticEvent cachePutEvent, + SharedSessionContractImplementor session, + CachedDomainDataAccess cachedDomainDataAccess, + CollectionPersister persister, + boolean cacheContentChanged, + CacheActionDescription description); + + DiagnosticEvent beginCacheGetEvent(); + + void completeCacheGetEvent( + DiagnosticEvent cacheGetEvent, + SharedSessionContractImplementor session, + Region region, + boolean hit); + + void completeCacheGetEvent( + DiagnosticEvent cacheGetEvent, + SharedSessionContractImplementor session, + Region region, + EntityPersister persister, + boolean isNaturalKey, + boolean hit); + + void completeCacheGetEvent( + DiagnosticEvent cacheGetEvent, + SharedSessionContractImplementor session, + Region region, + CollectionPersister persister, + boolean hit); + + DiagnosticEvent beginFlushEvent(); + + void completeFlushEvent( + DiagnosticEvent flushEvent, + org.hibernate.event.spi.FlushEvent event); + + void completeFlushEvent( + DiagnosticEvent flushEvent, + org.hibernate.event.spi.FlushEvent event, + boolean autoFlush); + + DiagnosticEvent beginPartialFlushEvent(); + + void completePartialFlushEvent( + DiagnosticEvent flushEvent, + AutoFlushEvent event); + + DiagnosticEvent beginDirtyCalculationEvent(); + + void completeDirtyCalculationEvent( + DiagnosticEvent dirtyCalculationEvent, + SharedSessionContractImplementor session, + EntityPersister persister, + EntityEntry entry, + int[] dirtyProperties); + + DiagnosticEvent beginPrePartialFlush(); + + void completePrePartialFlush( + DiagnosticEvent prePartialFlush, + SharedSessionContractImplementor session + ); + + DiagnosticEvent beginEntityInsertEvent(); + + void completeEntityInsertEvent(DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginEntityUpdateEvent(); + + void completeEntityUpdateEvent(DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginEntityUpsertEvent(); + + void completeEntityUpsertEvent(DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginEntityDeleteEvent(); + + void completeEntityDeleteEvent(DiagnosticEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginEntityLockEvent(); + + void completeEntityLockEvent(DiagnosticEvent event, Object id, String entityName, LockMode lockMode, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginCollectionRecreateEvent(); + + void completeCollectionRecreateEvent(DiagnosticEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginCollectionUpdateEvent(); + + void completeCollectionUpdateEvent(DiagnosticEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session); + + DiagnosticEvent beginCollectionRemoveEvent(); + + void completeCollectionRemoveEvent(DiagnosticEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session); + + enum CacheActionDescription { + ENTITY_INSERT( "Entity Insert" ), + ENTITY_AFTER_INSERT( "Entity After Insert" ), + ENTITY_UPDATE( "Entity Update" ), + ENTITY_LOAD( "Entity Load" ), + ENTITY_AFTER_UPDATE( "Entity After Update" ), + TIMESTAMP_PRE_INVALIDATE( "Timestamp Pre Invalidate" ), + TIMESTAMP_INVALIDATE( "Timestamp Invalidate" ), + COLLECTION_INSERT( "Collection Insert" ), + QUERY_RESULT( "Query Result" ); + + + private final String text; + + CacheActionDescription(String text) { + this.text = text; + } + + @Override + public String toString() { + return text; + } + + public String getText() { + return text; + } + } +} diff --git a/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/package-info.java b/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/package-info.java new file mode 100644 index 000000000000..c83bc12749cf --- /dev/null +++ b/hibernate-core/src/main/java/org/hibernate/event/monitor/spi/package-info.java @@ -0,0 +1,10 @@ +/** + * An SPI for services which collect, report, or monitor diagnostic events. + * For example, this SPI is implemented by Hibernate JFR to report events + * to Java Flight Recorder. + * + * @see org.hibernate.event.monitor.spi.EventMonitor + * + * @since 7 + */ +package org.hibernate.event.monitor.spi; diff --git a/hibernate-core/src/main/java/org/hibernate/event/spi/EventManager.java b/hibernate-core/src/main/java/org/hibernate/event/spi/EventManager.java index 2cd50ce59d7f..f5aa6ec5c6b4 100644 --- a/hibernate-core/src/main/java/org/hibernate/event/spi/EventManager.java +++ b/hibernate-core/src/main/java/org/hibernate/event/spi/EventManager.java @@ -4,226 +4,12 @@ */ package org.hibernate.event.spi; -import org.hibernate.Incubating; -import org.hibernate.LockMode; -import org.hibernate.cache.spi.Region; -import org.hibernate.cache.spi.access.CachedDomainDataAccess; -import org.hibernate.engine.spi.EntityEntry; -import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.persister.collection.CollectionPersister; -import org.hibernate.persister.entity.EntityPersister; -import org.hibernate.service.JavaServiceLoadable; +import org.hibernate.event.monitor.spi.EventMonitor; /** - * Defines a contract for reporting and monitoring low-level events - * involving interactions between the {@linkplain org.hibernate.Session - * session} and the database or second-level cache. - *
- * For example, this interface is implemented by Hibernate JFR to report - * events to Java Flight Recorder. - *
- * Note that event reporting is different to aggregate metrics, - * which Hibernate exposes via the {@link org.hibernate.stat.Statistics} - * interface. - * - * @apiNote This an incubating API, subject to change. - * - * @since 6.4 + * @deprecated Renamed {@link EventMonitor}. */ -@JavaServiceLoadable -@Incubating -public interface EventManager { - HibernateMonitoringEvent beginSessionOpenEvent(); +@Deprecated(since = "7", forRemoval = true) +public interface EventManager extends EventMonitor { - void completeSessionOpenEvent( - HibernateMonitoringEvent sessionOpenEvent, - SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginSessionClosedEvent(); - - void completeSessionClosedEvent( - HibernateMonitoringEvent sessionClosedEvent, - SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginJdbcConnectionAcquisitionEvent(); - - void completeJdbcConnectionAcquisitionEvent( - HibernateMonitoringEvent jdbcConnectionAcquisitionEvent, - SharedSessionContractImplementor session, - Object tenantId); - - HibernateMonitoringEvent beginJdbcConnectionReleaseEvent(); - - void completeJdbcConnectionReleaseEvent( - HibernateMonitoringEvent jdbcConnectionReleaseEvent, - SharedSessionContractImplementor session, - Object tenantId); - - HibernateMonitoringEvent beginJdbcPreparedStatementCreationEvent(); - - void completeJdbcPreparedStatementCreationEvent( - HibernateMonitoringEvent jdbcPreparedStatementCreation, - String preparedStatementSql); - - HibernateMonitoringEvent beginJdbcPreparedStatementExecutionEvent(); - - void completeJdbcPreparedStatementExecutionEvent( - HibernateMonitoringEvent jdbcPreparedStatementExecutionEvent, - String preparedStatementSql); - - HibernateMonitoringEvent beginJdbcBatchExecutionEvent(); - - void completeJdbcBatchExecutionEvent( - HibernateMonitoringEvent jdbcBatchExecutionEvent, - String statementSql); - - HibernateMonitoringEvent beginCachePutEvent(); - - void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, - SharedSessionContractImplementor session, - Region region, - boolean cacheContentChanged, - CacheActionDescription description); - - void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, - SharedSessionContractImplementor session, - CachedDomainDataAccess cachedDomainDataAccess, - EntityPersister persister, - boolean cacheContentChanged, - CacheActionDescription description); - - void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, - SharedSessionContractImplementor session, - CachedDomainDataAccess cachedDomainDataAccess, - EntityPersister persister, - boolean cacheContentChanged, - boolean isNatualId, - CacheActionDescription description); - - void completeCachePutEvent( - HibernateMonitoringEvent cachePutEvent, - SharedSessionContractImplementor session, - CachedDomainDataAccess cachedDomainDataAccess, - CollectionPersister persister, - boolean cacheContentChanged, - CacheActionDescription description); - - HibernateMonitoringEvent beginCacheGetEvent(); - - void completeCacheGetEvent( - HibernateMonitoringEvent cacheGetEvent, - SharedSessionContractImplementor session, - Region region, - boolean hit); - - void completeCacheGetEvent( - HibernateMonitoringEvent cacheGetEvent, - SharedSessionContractImplementor session, - Region region, - EntityPersister persister, - boolean isNaturalKey, - boolean hit); - - void completeCacheGetEvent( - HibernateMonitoringEvent cacheGetEvent, - SharedSessionContractImplementor session, - Region region, - CollectionPersister persister, - boolean hit); - - HibernateMonitoringEvent beginFlushEvent(); - - void completeFlushEvent( - HibernateMonitoringEvent flushEvent, - org.hibernate.event.spi.FlushEvent event); - - void completeFlushEvent( - HibernateMonitoringEvent flushEvent, - org.hibernate.event.spi.FlushEvent event, - boolean autoFlush); - - HibernateMonitoringEvent beginPartialFlushEvent(); - - void completePartialFlushEvent( - HibernateMonitoringEvent flushEvent, - AutoFlushEvent event); - - HibernateMonitoringEvent beginDirtyCalculationEvent(); - - void completeDirtyCalculationEvent( - HibernateMonitoringEvent dirtyCalculationEvent, - SharedSessionContractImplementor session, - EntityPersister persister, - EntityEntry entry, - int[] dirtyProperties); - - HibernateMonitoringEvent beginPrePartialFlush(); - - void completePrePartialFlush( - HibernateMonitoringEvent prePartialFlush, - SharedSessionContractImplementor session - ); - - HibernateMonitoringEvent beginEntityInsertEvent(); - - void completeEntityInsertEvent(HibernateMonitoringEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginEntityUpdateEvent(); - - void completeEntityUpdateEvent(HibernateMonitoringEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginEntityUpsertEvent(); - - void completeEntityUpsertEvent(HibernateMonitoringEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginEntityDeleteEvent(); - - void completeEntityDeleteEvent(HibernateMonitoringEvent event, Object id, String entityName, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginEntityLockEvent(); - - void completeEntityLockEvent(HibernateMonitoringEvent event, Object id, String entityName, LockMode lockMode, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginCollectionRecreateEvent(); - - void completeCollectionRecreateEvent(HibernateMonitoringEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginCollectionUpdateEvent(); - - void completeCollectionUpdateEvent(HibernateMonitoringEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session); - - HibernateMonitoringEvent beginCollectionRemoveEvent(); - - void completeCollectionRemoveEvent(HibernateMonitoringEvent event, Object id, String role, boolean success, SharedSessionContractImplementor session); - - enum CacheActionDescription { - ENTITY_INSERT( "Entity Insert" ), - ENTITY_AFTER_INSERT( "Entity After Insert" ), - ENTITY_UPDATE( "Entity Update" ), - ENTITY_LOAD( "Entity Load" ), - ENTITY_AFTER_UPDATE( "Entity After Update" ), - TIMESTAMP_PRE_INVALIDATE( "Timestamp Pre Invalidate" ), - TIMESTAMP_INVALIDATE( "Timestamp Invalidate" ), - COLLECTION_INSERT( "Collection Insert" ), - QUERY_RESULT( "Query Result" ); - - - private final String text; - - CacheActionDescription(String text) { - this.text = text; - } - - @Override - public String toString() { - return text; - } - - public String getText() { - return text; - } - } } diff --git a/hibernate-core/src/main/java/org/hibernate/event/spi/HibernateMonitoringEvent.java b/hibernate-core/src/main/java/org/hibernate/event/spi/HibernateMonitoringEvent.java index b45d12d8247c..409fcbfe9f92 100644 --- a/hibernate-core/src/main/java/org/hibernate/event/spi/HibernateMonitoringEvent.java +++ b/hibernate-core/src/main/java/org/hibernate/event/spi/HibernateMonitoringEvent.java @@ -4,8 +4,12 @@ */ package org.hibernate.event.spi; -import org.hibernate.Incubating; +import org.hibernate.event.monitor.spi.DiagnosticEvent; + +/** + * @deprecated Renamed {@link DiagnosticEvent}. + */ +@Deprecated(since = "7", forRemoval = true) +public interface HibernateMonitoringEvent extends DiagnosticEvent { -@Incubating -public interface HibernateMonitoringEvent { } diff --git a/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableGenerator.java b/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableGenerator.java index 7a3c396968bf..fe4eb6e2fcae 100644 --- a/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableGenerator.java +++ b/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableGenerator.java @@ -34,8 +34,8 @@ import org.hibernate.engine.jdbc.spi.SqlStatementLogger; import org.hibernate.engine.spi.SessionEventListenerManager; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.generator.GeneratorCreationContext; import org.hibernate.id.ExportableColumn; import org.hibernate.id.IdentifierGeneratorHelper; @@ -623,8 +623,8 @@ private PreparedStatement prepareStatement( SessionEventListenerManager listener, SharedSessionContractImplementor session) throws SQLException { logger.logStatement( sql, FormatStyle.BASIC.getFormatter() ); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent creationEvent = eventManager.beginJdbcPreparedStatementCreationEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent creationEvent = eventMonitor.beginJdbcPreparedStatementCreationEvent(); final StatisticsImplementor stats = session.getFactory().getStatistics(); try { listener.jdbcPrepareStatementStart(); @@ -634,7 +634,7 @@ private PreparedStatement prepareStatement( return connection.prepareStatement( sql ); } finally { - eventManager.completeJdbcPreparedStatementCreationEvent( creationEvent, sql ); + eventMonitor.completeJdbcPreparedStatementCreationEvent( creationEvent, sql ); listener.jdbcPrepareStatementEnd(); if ( stats != null && stats.isStatisticsEnabled() ) { stats.closeStatement(); @@ -647,14 +647,14 @@ private int executeUpdate( SessionEventListenerManager listener, String sql, SharedSessionContractImplementor session) throws SQLException { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent executionEvent = eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent executionEvent = eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { listener.jdbcExecuteStatementStart(); return ps.executeUpdate(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); listener.jdbcExecuteStatementEnd(); } } @@ -664,14 +664,14 @@ private ResultSet executeQuery( SessionEventListenerManager listener, String sql, SharedSessionContractImplementor session) throws SQLException { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent executionEvent = eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent executionEvent = eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { listener.jdbcExecuteStatementStart(); return ps.executeQuery(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); listener.jdbcExecuteStatementEnd(); } } diff --git a/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableStructure.java b/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableStructure.java index cfb33a1e1436..782b5786083a 100644 --- a/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableStructure.java +++ b/hibernate-core/src/main/java/org/hibernate/id/enhanced/TableStructure.java @@ -23,8 +23,8 @@ import org.hibernate.engine.jdbc.spi.SqlStatementLogger; import org.hibernate.engine.spi.SessionEventListenerManager; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; import org.hibernate.id.ExportableColumn; import org.hibernate.id.IdentifierGenerationException; import org.hibernate.id.IntegralDataTypeHolder; @@ -237,8 +237,8 @@ private PreparedStatement prepareStatement( SessionEventListenerManager statsCollector, SharedSessionContractImplementor session) throws SQLException { logger.logStatement( sql, FormatStyle.BASIC.getFormatter() ); - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent creationEvent = eventManager.beginJdbcPreparedStatementCreationEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent creationEvent = eventMonitor.beginJdbcPreparedStatementCreationEvent(); final StatisticsImplementor stats = session.getFactory().getStatistics(); try { statsCollector.jdbcPrepareStatementStart(); @@ -248,7 +248,7 @@ private PreparedStatement prepareStatement( return connection.prepareStatement( sql ); } finally { - eventManager.completeJdbcPreparedStatementCreationEvent( creationEvent, sql ); + eventMonitor.completeJdbcPreparedStatementCreationEvent( creationEvent, sql ); statsCollector.jdbcPrepareStatementEnd(); if ( stats != null && stats.isStatisticsEnabled() ) { stats.closeStatement(); @@ -261,14 +261,14 @@ private int executeUpdate( SessionEventListenerManager statsCollector, String sql, SharedSessionContractImplementor session) throws SQLException { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent executionEvent = eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent executionEvent = eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { statsCollector.jdbcExecuteStatementStart(); return ps.executeUpdate(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); statsCollector.jdbcExecuteStatementEnd(); } @@ -279,14 +279,14 @@ private ResultSet executeQuery( SessionEventListenerManager statsCollector, String sql, SharedSessionContractImplementor session) throws SQLException { - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent executionEvent = eventManager.beginJdbcPreparedStatementExecutionEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent executionEvent = eventMonitor.beginJdbcPreparedStatementExecutionEvent(); try { statsCollector.jdbcExecuteStatementStart(); return ps.executeQuery(); } finally { - eventManager.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); + eventMonitor.completeJdbcPreparedStatementExecutionEvent( executionEvent, sql ); statsCollector.jdbcExecuteStatementEnd(); } } diff --git a/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java b/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java index 55b4733927db..50d024ece049 100644 --- a/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java +++ b/hibernate-core/src/main/java/org/hibernate/internal/AbstractSharedSessionContract.java @@ -49,7 +49,7 @@ import org.hibernate.engine.spi.SharedSessionContractImplementor; import org.hibernate.engine.transaction.internal.TransactionImpl; import org.hibernate.engine.transaction.spi.TransactionImplementor; -import org.hibernate.event.spi.EventManager; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.graph.RootGraph; import org.hibernate.graph.internal.RootGraphImpl; import org.hibernate.graph.spi.RootGraphImplementor; @@ -1435,8 +1435,8 @@ public void setJdbcBatchSize(Integer jdbcBatchSize) { } @Override - public EventManager getEventManager() { - return fastSessionServices.eventManager; + public EventMonitor getEventMonitor() { + return fastSessionServices.eventMonitor; } @Override diff --git a/hibernate-core/src/main/java/org/hibernate/internal/ContextualJdbcConnectionAccess.java b/hibernate-core/src/main/java/org/hibernate/internal/ContextualJdbcConnectionAccess.java index 3e8ca060421d..9b614f28f576 100644 --- a/hibernate-core/src/main/java/org/hibernate/internal/ContextualJdbcConnectionAccess.java +++ b/hibernate-core/src/main/java/org/hibernate/internal/ContextualJdbcConnectionAccess.java @@ -13,8 +13,8 @@ import org.hibernate.engine.jdbc.connections.spi.JdbcConnectionAccess; import org.hibernate.engine.jdbc.connections.spi.MultiTenantConnectionProvider; import org.hibernate.engine.spi.SharedSessionContractImplementor; -import org.hibernate.event.spi.EventManager; -import org.hibernate.event.spi.HibernateMonitoringEvent; +import org.hibernate.event.monitor.spi.EventMonitor; +import org.hibernate.event.monitor.spi.DiagnosticEvent; /** * @author Steve Ebersole @@ -43,14 +43,14 @@ public Connection obtainConnection() throws SQLException { throw new HibernateException( "Tenant identifier required" ); } - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent jdbcConnectionAcquisitionEvent = eventManager.beginJdbcConnectionAcquisitionEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent jdbcConnectionAcquisitionEvent = eventMonitor.beginJdbcConnectionAcquisitionEvent(); try { listener.jdbcConnectionAcquisitionStart(); return connectionProvider.getConnection( tenantIdentifier ); } finally { - eventManager.completeJdbcConnectionAcquisitionEvent( + eventMonitor.completeJdbcConnectionAcquisitionEvent( jdbcConnectionAcquisitionEvent, session, tenantIdentifier @@ -65,14 +65,14 @@ public void releaseConnection(Connection connection) throws SQLException { throw new HibernateException( "Tenant identifier required" ); } - final EventManager eventManager = session.getEventManager(); - final HibernateMonitoringEvent jdbcConnectionReleaseEvent = eventManager.beginJdbcConnectionReleaseEvent(); + final EventMonitor eventMonitor = session.getEventMonitor(); + final DiagnosticEvent jdbcConnectionReleaseEvent = eventMonitor.beginJdbcConnectionReleaseEvent(); try { listener.jdbcConnectionReleaseStart(); connectionProvider.releaseConnection( tenantIdentifier, connection ); } finally { - eventManager.completeJdbcConnectionReleaseEvent( jdbcConnectionReleaseEvent, session, tenantIdentifier ); + eventMonitor.completeJdbcConnectionReleaseEvent( jdbcConnectionReleaseEvent, session, tenantIdentifier ); listener.jdbcConnectionReleaseEnd(); } } diff --git a/hibernate-core/src/main/java/org/hibernate/internal/FastSessionServices.java b/hibernate-core/src/main/java/org/hibernate/internal/FastSessionServices.java index 3bcd602f5ed9..1c266298c33a 100644 --- a/hibernate-core/src/main/java/org/hibernate/internal/FastSessionServices.java +++ b/hibernate-core/src/main/java/org/hibernate/internal/FastSessionServices.java @@ -22,7 +22,8 @@ import org.hibernate.engine.jdbc.connections.spi.MultiTenantConnectionProvider; import org.hibernate.engine.jdbc.spi.JdbcServices; import org.hibernate.engine.spi.SessionFactoryImplementor; -import org.hibernate.event.internal.EmptyEventManager; +import org.hibernate.event.monitor.internal.EmptyEventMonitor; +import org.hibernate.event.monitor.spi.EventMonitor; import org.hibernate.event.service.spi.EventListenerGroup; import org.hibernate.event.service.spi.EventListenerRegistry; import org.hibernate.event.spi.*; @@ -125,7 +126,7 @@ public final class FastSessionServices { final MultiTenantConnectionProvider