You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ju...@apache.org on 2014/01/31 05:06:43 UTC

svn commit: r1563046 - /sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java

Author: justin
Date: Fri Jan 31 04:06:42 2014
New Revision: 1563046

URL: http://svn.apache.org/r1563046
Log:
SLING-3313 - actually use the seal() method to make the disposal callback list unmodifiable

Modified:
    sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java

Modified: sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java?rev=1563046&r1=1563045&r2=1563046&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java (original)
+++ sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java Fri Jan 31 04:06:42 2014
@@ -60,8 +60,6 @@ import org.apache.sling.models.annotatio
 import org.apache.sling.models.spi.DisposalCallback;
 import org.apache.sling.models.spi.DisposalCallbackRegistry;
 import org.apache.sling.models.spi.Injector;
-import org.osgi.framework.InvalidSyntaxException;
-import org.osgi.framework.ServiceReference;
 import org.osgi.framework.ServiceRegistration;
 import org.osgi.service.component.ComponentContext;
 import org.slf4j.Logger;
@@ -79,7 +77,7 @@ public class ModelAdapterFactory impleme
             callbacks.add(callback);
         }
 
-        private void lock() {
+        private void seal() {
             callbacks = Collections.unmodifiableList(callbacks);
         }
 
@@ -113,7 +111,7 @@ public class ModelAdapterFactory impleme
     public void run() {
         java.lang.ref.Reference<? extends Object> ref = queue.poll();
         if (ref != null) {
-            log.info("calling disposal for " + ref.toString());
+            log.debug("calling disposal for " + ref.toString());
             DisposalCallbackRegistryImpl registry = disposalCallbacks.remove(ref);
             registry.onDisposed();
         }
@@ -223,6 +221,8 @@ public class ModelAdapterFactory impleme
             }
         }
 
+        registry.seal();
+
         Iterator<Method> it = injectableMethods.iterator();
         while (it.hasNext()) {
             Method method = it.next();
@@ -305,6 +305,8 @@ public class ModelAdapterFactory impleme
             }
         }
 
+        registry.seal();
+
         Iterator<Field> it = injectableFields.iterator();
         while (it.hasNext()) {
             Field field = it.next();