1 7 8 package com.sun.corba.se.impl.orbutil.closure ; 9 10 import com.sun.corba.se.spi.orbutil.closure.Closure ; 11 12 public class Future implements Closure { 13 private boolean evaluated ; 14 private Closure closure ; 15 private Object value ; 16 17 public Future( Closure value ) 18 { 19 this.evaluated = false ; 20 this.closure = (Closure)value ; 21 this.value = null ; 22 } 23 24 public synchronized Object evaluate() 25 { 26 if (!evaluated) { 27 evaluated = true ; 28 value = closure.evaluate() ; 29 } 30 31 return value ; 32 } 33 } 34 | Popular Tags |