@Override protected RepositoryFactorySupport createRepositoryFactory(EntityManager entityManager) { RepositoryFactorySupport factorySupport = new GenericJpaRepositoryFactory(entityManager); factorySupport.setRepositoryBaseClass(GenericJpaRepositoryImpl.class); return factorySupport; }
public void afterPropertiesSet() { this.factory = createRepositoryFactory(); this.factory.setQueryLookupStrategyKey(queryLookupStrategyKey); this.factory.setNamedQueries(namedQueries); this.factory.setEvaluationContextProvider(evaluationContextProvider); this.factory.setRepositoryBaseClass(repositoryBaseClass); this.factory.setBeanClassLoader(classLoader); this.factory.setBeanFactory(beanFactory); if (publisher != null) { RepositoryProxyPostProcessor repositoryProxyPostProcessor = null; try { repositoryProxyPostProcessor = (RepositoryProxyPostProcessor) Class.forName("org.springframework.data.repository.core.support.EventPublishingRepositoryProxyPostProcessor").getConstructor(ApplicationEventPublisher.class).newInstance(publisher); } catch (Exception e) { // ignore } if (repositoryProxyPostProcessor != null) { this.factory.addRepositoryProxyPostProcessor(repositoryProxyPostProcessor); } } this.repositoryMetadata = this.factory.getRepositoryMetadata(repositoryInterface); if (!lazyInit) { initAndReturn(); } }