in src/main/java/org/apache/sling/commons/threads/impl/ThreadLocalCleaner.java [128:144]
private static void restore(Field field, Object[] value, Integer size, Integer threshold) {
try {
Thread thread = Thread.currentThread();
if (value == null) {
field.set(thread, null);
LOG.debug("Restored {} to a null value", field.getName());
} else {
final Object threadLocals = field.get(thread);
tableField.set(threadLocals, value);
threadLocalMapSizeField.set(threadLocals, size);
threadLocalMapThresholdField.set(threadLocals, threshold);
LOG.debug("Restored {} with to {} references, size {}, threshold {}" ,field.getName(), value.length, size, threshold);
}
} catch (IllegalAccessException e) {
throw new IllegalStateException("Access denied", e);
}
}