Author: justin
Date: Sat Nov 19 22:33:06 2016
New Revision: 1770522

URL: http://svn.apache.org/viewvc?rev=1770522&view=rev
Log:
SLING-6311 - allow the cleanup job interval period to be configured.

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=1770522&r1=1770521&r2=1770522&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
 Sat Nov 19 22:33:06 2016
@@ -153,9 +153,13 @@ public class ModelAdapterFactory impleme
 
     private static final int DEFAULT_MAX_RECURSION_DEPTH = 20;
 
+    private static final long DEFAULT_CLEANUP_JOB_PERIOD = 30l;
+
     @Property(label = "Maximum Recursion Depth", description = "Maximum depth 
adaptation will be attempted.", intValue = DEFAULT_MAX_RECURSION_DEPTH)
     private static final String PROP_MAX_RECURSION_DEPTH = 
"max.recursion.depth";
 
+    @Property(label = "Cleanup Job Period", description = "Period at which 
OSGi service references from ThreadLocals will be cleaned up.", longValue = 
DEFAULT_CLEANUP_JOB_PERIOD)
+    private static final String PROP_CLEANUP_JOB_PERIOD = "cleanup.job.period";
 
     private final @Nonnull ConcurrentMap<String, RankedServices<Injector>> 
injectors = new ConcurrentHashMap<String, RankedServices<Injector>>();
     private final @Nonnull RankedServices<Injector> sortedInjectors = new 
RankedServices<Injector>();
@@ -929,7 +933,7 @@ public class ModelAdapterFactory impleme
         properties.put(Constants.SERVICE_DESCRIPTION, "Sling Models OSGi 
Service Disposal Job");
         properties.put("scheduler.name", "Sling Models OSGi Service Disposal 
Job");
         properties.put("scheduler.concurrent", false);
-        properties.put("scheduler.period", 30L);
+        properties.put("scheduler.period", 
PropertiesUtil.toLong(props.get(PROP_CLEANUP_JOB_PERIOD), 
DEFAULT_CLEANUP_JOB_PERIOD));
 
         this.jobRegistration = 
bundleContext.registerService(Runnable.class.getName(), this, properties);
 


Reply via email to