Package org.hibernate.search.indexes.spi

Examples of org.hibernate.search.indexes.spi.IndexManager


    IndexManager[] providers = new IndexManager[nbrOfProviders];
    for ( int index = 0; index < nbrOfProviders; index++ ) {
      String providerName = nbrOfProviders > 1 ?
          directoryProviderName + "." + index :
          directoryProviderName;
      IndexManager indexManager = indexManagersRegistry.get( providerName );
      if ( indexManager == null ) {
        indexManager = createDirectoryManager(
          providerName, indexProps[index],
          reflectionManager.toClass( entity ),
          context
            );
        indexManagersRegistry.put( providerName, indexManager );
      }
      indexManager.addContainedEntity( mappedClass );
      providers[index] = indexManager;
    }
   
    //define sharding strategy for this entity:
    IndexShardingStrategy shardingStrategy;
View Full Code Here


 
  private static class AddSelectionDelegate implements StreamingOperationSelectionDelegate {

    public final void performStreamOperation(LuceneWork work,
        IndexShardingStrategy shardingStrategy, boolean forceAsync) {
      IndexManager indexManager = shardingStrategy.getIndexManagersForAddition(
          work.getEntityClass(),
          work.getId(),
          work.getIdInString(),
          work.getDocument()
      );
      indexManager.performStreamOperation( work, forceAsync );
    }
View Full Code Here

  private static class AddSelectionDelegate implements ContextAwareSelectionDelegate {

    @Override
    public final void performOperation(LuceneWork work, IndexShardingStrategy shardingStrategy,
        WorkQueuePerIndexSplitter context) {
      IndexManager indexManager = shardingStrategy.getIndexManagersForAddition(
          work.getEntityClass(),
          work.getId(),
          work.getIdInString(),
          work.getDocument()
      );
View Full Code Here

      return;
    }
    final ObjectMessage objectMessage = (ObjectMessage) message;
    final String indexName;
    final List<LuceneWork> queue;
    final IndexManager indexManager;
    Session session = getSession();
    SearchFactoryImplementor factory = ContextHelper.getSearchFactory( session );
    try {
      indexName = objectMessage.getStringProperty( JMSBackendQueueTask.INDEX_NAME_JMS_PROPERTY );
      indexManager = factory.getAllIndexesManager().getIndexManager( indexName );
      if ( indexManager == null ) {
        log.messageReceivedForUndefinedIndex( indexName );
        return;
      }
      queue = indexManager.getSerializer().toLuceneWorks( (byte[]) objectMessage.getObject() );
      indexManager.performOperations( queue );
    }
    catch (JMSException e) {
      log.unableToRetrieveObjectFromMessage( message.getClass(), e );
      return;
    }
View Full Code Here

    final String indexName = MessageSerializationHelper.extractIndexName( rawBuffer );
    final NodeSelectorStrategy nodeSelector = selector.getMasterNodeSelector( indexName );
    try {
      if ( nodeSelector.isIndexOwnerLocal() ) {
        byte[] serializedQueue = MessageSerializationHelper.extractSerializedQueue( rawBuffer );
        final IndexManager indexManager = context.getAllIndexesManager().getIndexManager( indexName );
        if ( indexManager != null ) {
          final List<LuceneWork> queue = indexManager.getSerializer().toLuceneWorks( serializedQueue );
          applyLuceneWorkLocally( queue, indexManager, message );
        }
        else {
          log.messageReceivedForUndefinedIndex( indexName );
          return;
View Full Code Here

      return;
    }
    final ObjectMessage objectMessage = (ObjectMessage) message;
    final String indexName;
    final List<LuceneWork> queue;
    final IndexManager indexManager;
    Session session = getSession();
    SearchFactoryImplementor factory = ContextHelper.getSearchFactory( session );
    try {
      indexName = objectMessage.getStringProperty( JmsBackendQueueTask.INDEX_NAME_JMS_PROPERTY );
      indexManager = factory.getIndexManagerHolder().getIndexManager( indexName );
      if ( indexManager == null ) {
        log.messageReceivedForUndefinedIndex( indexName );
        return;
      }
      queue = indexManager.getSerializer().toLuceneWorks( (byte[]) objectMessage.getObject() );
      indexManager.performOperations( queue, null );
    }
    catch (JMSException e) {
      log.unableToRetrieveObjectFromMessage( message.getClass(), e );
      return;
    }
View Full Code Here

    final NodeSelectorStrategy nodeSelector = selector.getMasterNodeSelector( indexName );
    try {
      //nodeSelector can be null if we receive the message during shutdown
      if ( nodeSelector != null && nodeSelector.isIndexOwnerLocal() ) {
        byte[] serializedQueue = MessageSerializationHelper.extractSerializedQueue( offset, bufferLength, rawBuffer );
        final IndexManager indexManager = context.getAllIndexesManager().getIndexManager( indexName );
        if ( indexManager != null ) {
          final List<LuceneWork> queue = indexManager.getSerializer().toLuceneWorks( serializedQueue );
          applyLuceneWorkLocally( queue, indexManager, message );
        }
        else {
          log.messageReceivedForUndefinedIndex( indexName );
        }
View Full Code Here

    final NodeSelectorStrategy nodeSelector = selector.getMasterNodeSelector( indexName );
    try {
      //nodeSelector can be null if we receive the message during shutdown
      if ( nodeSelector != null && nodeSelector.isIndexOwnerLocal() ) {
        byte[] serializedQueue = MessageSerializationHelper.extractSerializedQueue( rawBuffer );
        final IndexManager indexManager = context.getAllIndexesManager().getIndexManager( indexName );
        if ( indexManager != null ) {
          final List<LuceneWork> queue = indexManager.getSerializer().toLuceneWorks( serializedQueue );
          applyLuceneWorkLocally( queue, indexManager, message );
        }
        else {
          log.messageReceivedForUndefinedIndex( indexName );
        }
View Full Code Here

      return;
    }
    final ObjectMessage objectMessage = (ObjectMessage) message;
    final String indexName;
    final List<LuceneWork> queue;
    final IndexManager indexManager;
    Session session = getSession();
    SearchFactoryImplementor factory = ContextHelper.getSearchFactory( session );
    try {
      indexName = objectMessage.getStringProperty( JMSBackendQueueTask.INDEX_NAME_JMS_PROPERTY );
      indexManager = factory.getAllIndexesManager().getIndexManager( indexName );
      if ( indexManager == null ) {
        log.messageReceivedForUndefinedIndex( indexName );
        return;
      }
      queue = indexManager.getSerializer().toLuceneWorks( (byte[]) objectMessage.getObject() );
      indexManager.performOperations( queue, null );
    }
    catch (JMSException e) {
      log.unableToRetrieveObjectFromMessage( message.getClass(), e );
      return;
    }
View Full Code Here

    String indexName = indexBaseName;
    if ( shardName != null ) {
      indexName += INDEX_SHARD_ID_SEPARATOR + shardName;
    }

    IndexManager indexManager = indexManagersRegistry.get( indexName );
    if ( indexManager != null ) {
      indexManager.addContainedEntity( entityIndexBinding.getDocumentBuilder().getBeanClass() );
      return indexManager;
    }
    SearchFactoryImplementor searchFactory = entityIndexBinding.getSearchFactory();
    WorkerBuildContext context;
    //known implementations of SearchFactory passed are MutableSearchFactory and ImmutableSearchFactory
    if ( WorkerBuildContext.class.isAssignableFrom( searchFactory.getClass() ) ) {
      context = (WorkerBuildContext) searchFactory;
    }
    else {
      throw log.assertionFailureCannotCastToWorkerBuilderContext( searchFactory.getClass() );
    }

    Properties properties = entityIndexBinding.getProperties();
    if ( shardName != null ) {
      properties = new MaskedProperty( properties, shardName, properties );
    }

    indexManager = createIndexManager(
        indexName,
        entityIndexBinding.getDocumentBuilder().getBeanClass(),
        entityIndexBinding.getSimilarity(),
        properties,
        entityIndexBinding.getIndexManagerFactory(),
        context
    );
    indexManager.setSearchFactory( searchFactory );
    return indexManager;
  }
View Full Code Here

TOP

Related Classes of org.hibernate.search.indexes.spi.IndexManager

Copyright © 2018 www.massapicom. 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.