Example usage for org.springframework.data.mongodb.core.index MongoPersistentEntityIndexCreator MongoPersistentEntityIndexCreator

List of usage examples for org.springframework.data.mongodb.core.index MongoPersistentEntityIndexCreator MongoPersistentEntityIndexCreator

Introduction

In this page you can find the example usage for org.springframework.data.mongodb.core.index MongoPersistentEntityIndexCreator MongoPersistentEntityIndexCreator.

Prototype

public MongoPersistentEntityIndexCreator(MongoMappingContext mappingContext,
        IndexOperationsProvider indexOperationsProvider) 

Source Link

Document

Creates a new MongoPersistentEntityIndexCreator for the given MongoMappingContext and MongoDbFactory .

Usage

From source file:org.springframework.data.mongodb.core.MongoTemplate.java

/**
 * Constructor used for a basic template configuration.
 * //from   ww w .  j  ava2 s .co  m
 * @param mongoDbFactory
 * @param mongoConverter
 */
public MongoTemplate(MongoDbFactory mongoDbFactory, MongoConverter mongoConverter) {

    Assert.notNull(mongoDbFactory);

    this.mongoDbFactory = mongoDbFactory;
    this.mongoConverter = mongoConverter == null ? getDefaultMongoConverter(mongoDbFactory) : mongoConverter;
    this.mapper = new QueryMapper(this.mongoConverter);

    // We always have a mapping context in the converter, whether it's a simple one or not
    mappingContext = this.mongoConverter.getMappingContext();
    // We create indexes based on mapping events
    if (null != mappingContext && mappingContext instanceof MongoMappingContext) {
        indexCreator = new MongoPersistentEntityIndexCreator((MongoMappingContext) mappingContext,
                mongoDbFactory);
        eventPublisher = new MongoMappingEventPublisher(indexCreator);
        if (mappingContext instanceof ApplicationEventPublisherAware) {
            ((ApplicationEventPublisherAware) mappingContext).setApplicationEventPublisher(eventPublisher);
        }
    }

}