Examples of EventListenerRegistry


Examples of org.hibernate.event.service.spi.EventListenerRegistry

    if ( !autoRegister ) {
      LOG.debug( "Skipping Envers listener auto registration" );
      return;
    }

    EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );
    listenerRegistry.addDuplicationStrategy( EnversListenerDuplicationStrategy.INSTANCE );

    final AuditConfiguration enversConfiguration = AuditConfiguration.getFor( configuration );

        if (enversConfiguration.getEntCfg().hasAuditedEntities()) {
        listenerRegistry.appendListeners( EventType.POST_DELETE, new EnversPostDeleteEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_INSERT, new EnversPostInsertEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_UPDATE, new EnversPostUpdateEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_COLLECTION_RECREATE, new EnversPostCollectionRecreateEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.PRE_COLLECTION_REMOVE, new EnversPreCollectionRemoveEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.PRE_COLLECTION_UPDATE, new EnversPreCollectionUpdateEventListenerImpl( enversConfiguration ) );
        }
  }
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

      return;
    }

    final Object listener = instantiateListener( listenerClass );

    EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );

    listenerRegistry.addDuplicationStrategy( new DuplicationStrategyImpl( listenerClass ) );

    listenerRegistry.getEventListenerGroup( EventType.POST_INSERT ).appendListener( (PostInsertEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_UPDATE ).appendListener( (PostUpdateEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_DELETE ).appendListener( (PostDeleteEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_COLLECTION_RECREATE ).appendListener( (PostCollectionRecreateEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_COLLECTION_REMOVE ).appendListener( (PostCollectionRemoveEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_COLLECTION_UPDATE ).appendListener( (PostCollectionUpdateEventListener) listener );
  }
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

                new PersistCascadeStyle()
    );


    // then prepare listeners
    final EventListenerRegistry eventListenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );

    eventListenerRegistry.addDuplicationStrategy( JPA_DUPLICATION_STRATEGY );

    // op listeners
    eventListenerRegistry.setListeners( EventType.AUTO_FLUSH, JpaAutoFlushEventListener.INSTANCE );
    eventListenerRegistry.setListeners( EventType.DELETE, new JpaDeleteEventListener() );
    eventListenerRegistry.setListeners( EventType.FLUSH_ENTITY, new JpaFlushEntityEventListener() );
    eventListenerRegistry.setListeners( EventType.FLUSH, JpaFlushEventListener.INSTANCE );
    eventListenerRegistry.setListeners( EventType.MERGE, new JpaMergeEventListener() );
    eventListenerRegistry.setListeners( EventType.PERSIST, new JpaPersistEventListener() );
    eventListenerRegistry.setListeners( EventType.PERSIST_ONFLUSH, new JpaPersistOnFlushEventListener() );
    eventListenerRegistry.setListeners( EventType.SAVE, new JpaSaveEventListener() );
    eventListenerRegistry.setListeners( EventType.SAVE_UPDATE, new JpaSaveOrUpdateEventListener() );

    // post op listeners
    eventListenerRegistry.prependListeners( EventType.POST_DELETE, new JpaPostDeleteEventListener() );
    eventListenerRegistry.prependListeners( EventType.POST_INSERT, new JpaPostInsertEventListener() );
    eventListenerRegistry.prependListeners( EventType.POST_LOAD, new JpaPostLoadEventListener() );
    eventListenerRegistry.prependListeners( EventType.POST_UPDATE, new JpaPostUpdateEventListener() );

    for ( Map.Entry<?,?> entry : configuration.getProperties().entrySet() ) {
      if ( ! String.class.isInstance( entry.getKey() ) ) {
        continue;
      }
      final String propertyName = (String) entry.getKey();
      if ( ! propertyName.startsWith( AvailableSettings.EVENT_LISTENER_PREFIX ) ) {
        continue;
      }
      final String eventTypeName = propertyName.substring( AvailableSettings.EVENT_LISTENER_PREFIX.length() + 1 );
      final EventType eventType = EventType.resolveEventTypeByName( eventTypeName );
      final EventListenerGroup eventListenerGroup = eventListenerRegistry.getEventListenerGroup( eventType );
      for ( String listenerImpl : ( (String) entry.getValue() ).split( " ," ) ) {
        eventListenerGroup.appendListener( instantiate( listenerImpl, serviceRegistry ) );
      }
    }

    // handle JPA "entity listener classes"...

    this.callbackRegistry = new CallbackRegistryImpl();
    final Object beanManagerRef = configuration.getProperties().get( AvailableSettings.CDI_BEAN_MANAGER );
    this.jpaListenerFactory = beanManagerRef == null
        ? new StandardListenerFactory()
        : buildBeanManagerListenerFactory( beanManagerRef );
    this.callbackProcessor = new LegacyCallbackProcessor( jpaListenerFactory, configuration.getReflectionManager() );

    Iterator classes = configuration.getClassMappings();
    while ( classes.hasNext() ) {
      final PersistentClass clazz = (PersistentClass) classes.next();
      if ( clazz.getClassName() == null ) {
        // we can have non java class persisted by hibernate
        continue;
      }
      callbackProcessor.processCallbacksForEntity( clazz.getClassName(), callbackRegistry );
    }

    for ( EventType eventType : EventType.values() ) {
      final EventListenerGroup eventListenerGroup = eventListenerRegistry.getEventListenerGroup( eventType );
      for ( Object listener : eventListenerGroup.listeners() ) {
        if ( CallbackRegistryConsumer.class.isInstance( listener ) ) {
          ( (CallbackRegistryConsumer) listener ).injectCallbackRegistry( callbackRegistry );
        }
      }
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

        "persist",
        new PersistCascadeStyle()
    );

    // then prepare listeners
        final EventListenerRegistry eventListenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );

        eventListenerRegistry.addDuplicationStrategy( JPA_DUPLICATION_STRATEGY );

        // op listeners
        eventListenerRegistry.setListeners( EventType.AUTO_FLUSH, JpaAutoFlushEventListener.INSTANCE );
        eventListenerRegistry.setListeners( EventType.DELETE, new JpaDeleteEventListener() );
        eventListenerRegistry.setListeners( EventType.FLUSH_ENTITY, new JpaFlushEntityEventListener() );
        eventListenerRegistry.setListeners( EventType.FLUSH, JpaFlushEventListener.INSTANCE );
        eventListenerRegistry.setListeners( EventType.MERGE, new JpaMergeEventListener() );
        eventListenerRegistry.setListeners( EventType.PERSIST, new JpaPersistEventListener() );
        eventListenerRegistry.setListeners( EventType.PERSIST_ONFLUSH, new JpaPersistOnFlushEventListener() );
        eventListenerRegistry.setListeners( EventType.SAVE, new JpaSaveEventListener() );
        eventListenerRegistry.setListeners( EventType.SAVE_UPDATE, new JpaSaveOrUpdateEventListener() );

        // post op listeners
        eventListenerRegistry.prependListeners( EventType.POST_DELETE, new JpaPostDeleteEventListener() );
        eventListenerRegistry.prependListeners( EventType.POST_INSERT, new JpaPostInsertEventListener() );
        eventListenerRegistry.prependListeners( EventType.POST_LOAD, new JpaPostLoadEventListener() );
        eventListenerRegistry.prependListeners( EventType.POST_UPDATE, new JpaPostUpdateEventListener() );

        for ( Map.Entry<?,?> entry : sessionFactory.getProperties().entrySet() ) {
            if ( ! String.class.isInstance( entry.getKey() ) ) {
                continue;
            }
            final String propertyName = (String) entry.getKey();
            if ( ! propertyName.startsWith( AvailableSettings.EVENT_LISTENER_PREFIX ) ) {
                continue;
            }
            final String eventTypeName = propertyName.substring( AvailableSettings.EVENT_LISTENER_PREFIX.length() + 1 );
            final EventType eventType = EventType.resolveEventTypeByName( eventTypeName );
            final EventListenerGroup eventListenerGroup = eventListenerRegistry.getEventListenerGroup( eventType );
            for ( String listenerImpl : ( (String) entry.getValue() ).split( " ," ) ) {
                eventListenerGroup.appendListener( instantiate( listenerImpl, serviceRegistry ) );
            }
        }

    // handle JPA "entity listener classes"...

    this.callbackRegistry = new CallbackRegistryImpl();
    final Object beanManagerRef = sessionFactory.getProperties().get( AvailableSettings.CDI_BEAN_MANAGER );
    this.jpaListenerFactory = beanManagerRef == null
        ? new StandardListenerFactory()
        : buildBeanManagerListenerFactory( beanManagerRef );
    this.callbackProcessor = new CallbackProcessorImpl( jpaListenerFactory, metadata, serviceRegistry );

        for ( EntityBinding binding : metadata.getEntityBindings() ) {
      callbackProcessor.processCallbacksForEntity( binding, callbackRegistry );
        }

        for ( EventType eventType : EventType.values() ) {
            final EventListenerGroup eventListenerGroup = eventListenerRegistry.getEventListenerGroup( eventType );
            for ( Object listener : eventListenerGroup.listeners() ) {
                if ( CallbackRegistryConsumer.class.isInstance( listener ) ) {
                    ( (CallbackRegistryConsumer) listener ).injectCallbackRegistry( callbackRegistry );
                }
            }
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

    if ( !autoRegister ) {
      LOG.debug( "Skipping Envers listener auto registration" );
      return;
    }

    final EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );
    listenerRegistry.addDuplicationStrategy( EnversListenerDuplicationStrategy.INSTANCE );

        enversConfiguration = AuditConfiguration.getFor(
        configuration,
        serviceRegistry.getService(
            ClassLoaderService.class
        )
    );

    if ( enversConfiguration.getEntCfg().hasAuditedEntities() ) {
      listenerRegistry.appendListeners(
          EventType.POST_DELETE, new EnversPostDeleteEventListenerImpl(
          enversConfiguration
      )
      );
      listenerRegistry.appendListeners(
          EventType.POST_INSERT, new EnversPostInsertEventListenerImpl(
          enversConfiguration
      )
      );
      listenerRegistry.appendListeners(
          EventType.POST_UPDATE, new EnversPostUpdateEventListenerImpl(
          enversConfiguration
      )
      );
      listenerRegistry.appendListeners(
          EventType.POST_COLLECTION_RECREATE,
          new EnversPostCollectionRecreateEventListenerImpl( enversConfiguration )
      );
      listenerRegistry.appendListeners(
          EventType.PRE_COLLECTION_REMOVE,
          new EnversPreCollectionRemoveEventListenerImpl( enversConfiguration )
      );
      listenerRegistry.appendListeners(
          EventType.PRE_COLLECTION_UPDATE,
          new EnversPreCollectionUpdateEventListenerImpl( enversConfiguration )
      );
    }
  }
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

    } else {
      sessionImpl = (SessionImplementor) session;
    }

    // todo : I wonder if there is a better means to do this via "named lookup" based on the session factory name/uuid
    final EventListenerRegistry listenerRegistry = sessionImpl
        .getFactory()
        .getServiceRegistry()
        .getService( EventListenerRegistry.class );

    for ( PostInsertEventListener listener : listenerRegistry.getEventListenerGroup( EventType.POST_INSERT ).listeners() ) {
      if ( listener instanceof EnversListener ) {
        // todo : slightly different from original code in that I am not checking the other listener groups...
        return new AuditReaderImpl(
            ( (EnversListener) listener ).getAuditConfiguration(),
            session,
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

    if ( !autoRegister ) {
      LOG.debug( "Skipping Envers listener auto registration" );
      return;
    }

    EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );
    listenerRegistry.addDuplicationStrategy( EnversListenerDuplicationStrategy.INSTANCE );

    final AuditConfiguration enversConfiguration = AuditConfiguration.getFor( configuration, serviceRegistry.getService( ClassLoaderService.class ) );

        if (enversConfiguration.getEntCfg().hasAuditedEntities()) {
        listenerRegistry.appendListeners( EventType.POST_DELETE, new EnversPostDeleteEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_INSERT, new EnversPostInsertEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_UPDATE, new EnversPostUpdateEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_COLLECTION_RECREATE, new EnversPostCollectionRecreateEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.PRE_COLLECTION_REMOVE, new EnversPreCollectionRemoveEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.PRE_COLLECTION_UPDATE, new EnversPreCollectionUpdateEventListenerImpl( enversConfiguration ) );
        }
  }
View Full Code Here

Examples of org.hibernate.event.service.spi.EventListenerRegistry

    }
    return enableHibernateSearch;
  }

  private void registerHibernateSearchEventListener(FullTextIndexEventListener eventListener, SessionFactoryServiceRegistry serviceRegistry) {
    EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );
    listenerRegistry.addDuplicationStrategy( new DuplicationStrategyImpl( FullTextIndexEventListener.class ) );

    listenerRegistry.appendListeners( EventType.POST_INSERT, eventListener );
    listenerRegistry.appendListeners( EventType.POST_UPDATE, eventListener );
    listenerRegistry.appendListeners( EventType.POST_DELETE, eventListener );
    listenerRegistry.appendListeners( EventType.POST_COLLECTION_RECREATE, eventListener );
    listenerRegistry.appendListeners( EventType.POST_COLLECTION_REMOVE, eventListener );
    listenerRegistry.appendListeners( EventType.POST_COLLECTION_UPDATE, eventListener );
    listenerRegistry.appendListeners( EventType.FLUSH, eventListener );
  }
View Full Code Here

Examples of org.hibernate.service.event.spi.EventListenerRegistry

      return;
    }

    final Object listener = instantiateListener( listenerClass );

    EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );

    listenerRegistry.addDuplicationStrategy( new DuplicationStrategyImpl( listenerClass ) );

    listenerRegistry.getEventListenerGroup( EventType.POST_INSERT ).appendListener( (PostInsertEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_UPDATE ).appendListener( (PostUpdateEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_DELETE ).appendListener( (PostDeleteEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_COLLECTION_RECREATE ).appendListener( (PostCollectionRecreateEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_COLLECTION_REMOVE ).appendListener( (PostCollectionRemoveEventListener) listener );
    listenerRegistry.getEventListenerGroup( EventType.POST_COLLECTION_UPDATE ).appendListener( (PostCollectionUpdateEventListener) listener );
  }
View Full Code Here

Examples of org.hibernate.service.event.spi.EventListenerRegistry

    if ( !autoRegister ) {
      LOG.debug( "Skipping Envers listener auto registration" );
      return;
    }

    EventListenerRegistry listenerRegistry = serviceRegistry.getService( EventListenerRegistry.class );
    listenerRegistry.addDuplicationStrategy( EnversListenerDuplicationStrategy.INSTANCE );

    final AuditConfiguration enversConfiguration = AuditConfiguration.getFor( configuration );

        if (enversConfiguration.getEntCfg().hasAuditedEntities()) {
        listenerRegistry.appendListeners( EventType.POST_DELETE, new EnversPostDeleteEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_INSERT, new EnversPostInsertEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_UPDATE, new EnversPostUpdateEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.POST_COLLECTION_RECREATE, new EnversPostCollectionRecreateEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.PRE_COLLECTION_REMOVE, new EnversPreCollectionRemoveEventListenerImpl( enversConfiguration ) );
        listenerRegistry.appendListeners( EventType.PRE_COLLECTION_UPDATE, new EnversPreCollectionUpdateEventListenerImpl( enversConfiguration ) );
        }
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.