You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ch...@apache.org on 2017/10/27 15:50:06 UTC

svn commit: r1813545 - /jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserInitializer.java

Author: chetanm
Date: Fri Oct 27 15:50:06 2017
New Revision: 1813545

URL: http://svn.apache.org/viewvc?rev=1813545&view=rev
Log:
OAK-6873 - UserInitializer should not use hard coded QueryIndexProvider

Have a default QueryIndexProvider configured. This would be overwritten in Oak

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserInitializer.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserInitializer.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserInitializer.java?rev=1813545&r1=1813544&r2=1813545&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserInitializer.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserInitializer.java Fri Oct 27 15:50:06 2017
@@ -28,11 +28,14 @@ import org.apache.jackrabbit.oak.commons
 import org.apache.jackrabbit.oak.namepath.NamePathMapper;
 import org.apache.jackrabbit.oak.plugins.index.IndexConstants;
 import org.apache.jackrabbit.oak.plugins.index.IndexUtils;
+import org.apache.jackrabbit.oak.plugins.index.nodetype.NodeTypeIndexProvider;
+import org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexProvider;
 import org.apache.jackrabbit.oak.plugins.memory.MemoryNodeStore;
 import org.apache.jackrabbit.oak.plugins.tree.factories.RootFactory;
 import org.apache.jackrabbit.oak.plugins.tree.TreeUtil;
 import org.apache.jackrabbit.oak.spi.commit.EmptyHook;
 import org.apache.jackrabbit.oak.spi.lifecycle.WorkspaceInitializer;
+import org.apache.jackrabbit.oak.spi.query.CompositeQueryIndexProvider;
 import org.apache.jackrabbit.oak.spi.query.QueryIndexProvider;
 import org.apache.jackrabbit.oak.spi.query.QueryIndexProviderAware;
 import org.apache.jackrabbit.oak.spi.security.ConfigurationParameters;
@@ -82,7 +85,8 @@ class UserInitializer implements Workspa
 
     private final SecurityProvider securityProvider;
 
-    private QueryIndexProvider queryIndexProvider;
+    private QueryIndexProvider queryIndexProvider = new CompositeQueryIndexProvider(new PropertyIndexProvider(),
+            new NodeTypeIndexProvider());
 
     UserInitializer(SecurityProvider securityProvider) {
         this.securityProvider = securityProvider;
@@ -97,7 +101,7 @@ class UserInitializer implements Workspa
         MemoryNodeStore store = new MemoryNodeStore(base);
 
         Root root = RootFactory.createSystemRoot(store, EmptyHook.INSTANCE, workspaceName,
-                securityProvider,  getIndexProvider());
+                securityProvider,  queryIndexProvider);
 
         UserConfiguration userConfiguration = securityProvider.getConfiguration(UserConfiguration.class);
         UserManager userManager = userConfiguration.getUserManager(root, NamePathMapper.DEFAULT);
@@ -155,10 +159,6 @@ class UserInitializer implements Workspa
         target.compareAgainstBaseState(base, new ApplyDiff(builder));
     }
 
-    private QueryIndexProvider getIndexProvider() {
-        return checkNotNull(queryIndexProvider, "QueryIndexProvider yet not initialized");
-    }
-
     @Override
     public void setQueryIndexProvider(QueryIndexProvider provider) {
         this.queryIndexProvider = provider;