diff options
| author | Fuwn <[email protected]> | 2021-05-03 16:38:41 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2021-05-03 16:38:41 -0700 |
| commit | e1e781bb2135ef78592226f1a3eaba4925702f1f (patch) | |
| tree | 8a5b590463ed413e1c6eabb719130e701b95ca63 /NET/worlds/scape/CallbackPropertyOperator.java | |
| download | worlds.jar-e1e781bb2135ef78592226f1a3eaba4925702f1f.tar.xz worlds.jar-e1e781bb2135ef78592226f1a3eaba4925702f1f.zip | |
Diffstat (limited to 'NET/worlds/scape/CallbackPropertyOperator.java')
| -rw-r--r-- | NET/worlds/scape/CallbackPropertyOperator.java | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/NET/worlds/scape/CallbackPropertyOperator.java b/NET/worlds/scape/CallbackPropertyOperator.java new file mode 100644 index 0000000..87395fd --- /dev/null +++ b/NET/worlds/scape/CallbackPropertyOperator.java @@ -0,0 +1,64 @@ +/* */ 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 + */
\ No newline at end of file |