001 package org.shiftone.jrat.provider.tree;
002
003
004 import org.shiftone.jrat.util.Assert;
005
006
007 /**
008 * Class DelegateThreadLocal
009 *
010 * @author jeff@shiftone.org (Jeff Drost)
011 */
012 public class DelegateThreadLocal extends ThreadLocal {
013
014 private TreeMethodHandlerFactory factory = null;
015
016 public DelegateThreadLocal(TreeMethodHandlerFactory factory) {
017
018 Assert.assertNotNull("factory", factory);
019
020 this.factory = factory;
021 }
022
023
024 protected final Object initialValue() {
025 return new Delegate(factory.getRootNode());
026 }
027 }