home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / lang / ThreadLocal.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.0 KB  |  41 lines

  1. package java.lang;
  2.  
  3. import java.util.Collections;
  4. import java.util.HashMap;
  5. import java.util.Map;
  6.  
  7. public class ThreadLocal {
  8.    private static final int INITIAL_CAPACITY = 11;
  9.    Object key = new SecureKey(this);
  10.  
  11.    protected Object initialValue() {
  12.       return null;
  13.    }
  14.  
  15.    public Object get() {
  16.       Thread var1 = Thread.currentThread();
  17.       Map var2 = var1.threadLocals;
  18.       Object var3 = var2.get(this.key);
  19.       if (var3 == null && !var2.containsKey(this.key)) {
  20.          if (var2 == Collections.EMPTY_MAP) {
  21.             var2 = var1.threadLocals = new HashMap(11);
  22.          }
  23.  
  24.          var3 = this.initialValue();
  25.          var2.put(this.key, var3);
  26.       }
  27.  
  28.       return var3;
  29.    }
  30.  
  31.    public void set(Object var1) {
  32.       Thread var2 = Thread.currentThread();
  33.       Map var3 = var2.threadLocals;
  34.       if (var3 == Collections.EMPTY_MAP) {
  35.          var3 = var2.threadLocals = new HashMap(11);
  36.       }
  37.  
  38.       var3.put(this.key, var1);
  39.    }
  40. }
  41.