From df24218a4fbcf6bc36ea1957f043c1c76762c81c Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Thu, 7 Jul 2011 10:46:54 +0200 Subject: [PATCH] DATADOC-189 - Improved extensibility of MongoRepositoryFactoryBean. Creation of MongoRepositoryFactory is now delegated into a template method that gets a MongoTemplate handed over. --- .../repository/MongoRepositoryFactoryBean.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/document/mongodb/repository/MongoRepositoryFactoryBean.java b/spring-data-mongodb/src/main/java/org/springframework/data/document/mongodb/repository/MongoRepositoryFactoryBean.java index 2d73da945..cb0d287f1 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/document/mongodb/repository/MongoRepositoryFactoryBean.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/document/mongodb/repository/MongoRepositoryFactoryBean.java @@ -79,12 +79,22 @@ public class MongoRepositoryFactoryBean, S, ID exten * #createRepositoryFactory() */ @Override - protected RepositoryFactorySupport createRepositoryFactory() { + protected final RepositoryFactorySupport createRepositoryFactory() { - MongoRepositoryFactory factory = new MongoRepositoryFactory(template); + RepositoryFactorySupport factory = getFactoryInstance(template); factory.addQueryCreationListener(new IndexEnsuringQueryCreationListener(template)); return factory; } + + /** + * Creates and initializes a {@link RepositoryFactorySupport} instance. + * + * @param template + * @return + */ + protected RepositoryFactorySupport getFactoryInstance(MongoTemplate template) { + return new MongoRepositoryFactory(template); + } /* * (non-Javadoc)