Author: rombert
Date: Wed Aug 30 10:12:08 2017
New Revision: 1806682

URL: http://svn.apache.org/viewvc?rev=1806682&view=rev
Log:
OAK-6563 - Session.hasCapability(...) should reflect read-only status of mounts

Simplify retrieval of MountInfoProvider from the Whiteboard,
thanks to Chetan for spotting and suggesting a fix.

Modified:
    
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/repository/RepositoryImpl.java

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/repository/RepositoryImpl.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/repository/RepositoryImpl.java?rev=1806682&r1=1806681&r2=1806682&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/repository/RepositoryImpl.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/main/java/org/apache/jackrabbit/oak/jcr/repository/RepositoryImpl.java
 Wed Aug 30 10:12:08 2017
@@ -67,6 +67,7 @@ import org.apache.jackrabbit.oak.spi.sec
 import org.apache.jackrabbit.oak.spi.whiteboard.Registration;
 import org.apache.jackrabbit.oak.spi.whiteboard.Tracker;
 import org.apache.jackrabbit.oak.spi.whiteboard.Whiteboard;
+import org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils;
 import org.apache.jackrabbit.oak.stats.Clock;
 import org.apache.jackrabbit.oak.stats.StatisticManager;
 import org.apache.jackrabbit.oak.spi.descriptors.GenericDescriptors;
@@ -156,17 +157,7 @@ public class RepositoryImpl implements J
         this.clock = new Clock.Fast(scheduledExecutor);
         this.gcMonitorRegistration = whiteboard.register(GCMonitor.class, 
gcMonitor, emptyMap());
         this.fastQueryResultSize = fastQueryResultSize;
-
-        Tracker<MountInfoProvider> tracker = 
whiteboard.track(MountInfoProvider.class);
-        List<MountInfoProvider> services = tracker.getServices();
-        tracker.stop();
-
-        if ( services.isEmpty() )
-            this.mountInfoProvider = null;
-        else if ( services.size() == 1 )
-            this.mountInfoProvider = services.get(0);
-        else
-            throw new IllegalArgumentException("Found " + services.size() + " 
MountInfoProvider references, expected at most 1.");
+        this.mountInfoProvider = WhiteboardUtils.getService(whiteboard, 
MountInfoProvider.class);
     }
 
     //---------------------------------------------------------< Repository 
>---


Reply via email to