You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2016/11/09 08:18:44 UTC

svn commit: r1768865 - /sling/trunk/bundles/jcr/repoinit/src/main/java/org/apache/sling/jcr/repoinit/impl/RepositoryInitializer.java

Author: cziegeler
Date: Wed Nov  9 08:18:44 2016
New Revision: 1768865

URL: http://svn.apache.org/viewvc?rev=1768865&view=rev
Log:
Fix NPE in processing

Modified:
    sling/trunk/bundles/jcr/repoinit/src/main/java/org/apache/sling/jcr/repoinit/impl/RepositoryInitializer.java

Modified: sling/trunk/bundles/jcr/repoinit/src/main/java/org/apache/sling/jcr/repoinit/impl/RepositoryInitializer.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/jcr/repoinit/src/main/java/org/apache/sling/jcr/repoinit/impl/RepositoryInitializer.java?rev=1768865&r1=1768864&r2=1768865&view=diff
==============================================================================
--- sling/trunk/bundles/jcr/repoinit/src/main/java/org/apache/sling/jcr/repoinit/impl/RepositoryInitializer.java (original)
+++ sling/trunk/bundles/jcr/repoinit/src/main/java/org/apache/sling/jcr/repoinit/impl/RepositoryInitializer.java Wed Nov  9 08:18:44 2016
@@ -84,19 +84,21 @@ public class RepositoryInitializer imple
 
     @Override
     public void processRepository(SlingRepository repo) throws Exception {
-        // loginAdministrative is ok here, definitely an admin operation
-        final Session s = repo.loginAdministrative(null);
-        try {
-            final RepoinitTextProvider p = new RepoinitTextProvider();
-            for(String reference : config.references()) {
-                final String repoinitText = p.getRepoinitText(reference);
-                final List<Operation> ops = parser.parse(new StringReader(repoinitText));
-                log.info("Executing {} repoinit operations", ops.size());
-                processor.apply(s, ops);
-                s.save();
+        if ( config.references() != null && config.references().length > 0 ) {
+            // loginAdministrative is ok here, definitely an admin operation
+            final Session s = repo.loginAdministrative(null);
+            try {
+                final RepoinitTextProvider p = new RepoinitTextProvider();
+                for(String reference : config.references()) {
+                    final String repoinitText = p.getRepoinitText(reference);
+                    final List<Operation> ops = parser.parse(new StringReader(repoinitText));
+                    log.info("Executing {} repoinit operations", ops.size());
+                    processor.apply(s, ops);
+                    s.save();
+                }
+            } finally {
+                s.logout();
             }
-        } finally {
-            s.logout();
         }
     }
 }