/* */ package NET.worlds.scape; /* */ /* */ import NET.worlds.console.Main; /* */ import NET.worlds.console.MainCallback; /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ public class CallbackPropertyOperator /* */ implements MainCallback /* */ { /* */ private Property prop; /* */ private int func; /* */ private Object value; /* */ private boolean done; /* */ /* */ CallbackPropertyOperator(Property prop, int func, Object value) /* */ { /* 30 */ this.prop = prop; /* 31 */ this.func = func; /* 32 */ this.value = value; /* 33 */ assert (!Main.isMainThread()); /* 34 */ Main.register(this); /* */ } /* */ /* */ synchronized Object getValue() /* */ { /* 39 */ while (!this.done) /* */ try { /* 41 */ wait(); /* */ } catch (InterruptedException localInterruptedException) {} /* 43 */ return this.value; /* */ } /* */ /* */ public synchronized void mainCallback() /* */ { /* 48 */ modify(); /* 49 */ Main.unregister(this); /* 50 */ notify(); /* */ } /* */ /* */ private void modify() /* */ { /* 55 */ this.value = this.prop.safeOperate(this.func, this.value); /* 56 */ this.done = true; /* */ } /* */ } /* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\scape\CallbackPropertyOperator.class * Java compiler version: 6 (50.0) * JD-Core Version: 0.7.1 */