1 6 7 package org.drftpd.slave.async; 8 9 import java.util.Hashtable ; 10 11 15 public class AsyncCommand { 16 String _name; 17 String _args; 18 String _chan; 19 int _stat; 20 Hashtable _data = new Hashtable (); 21 boolean _done = false; 22 AsyncSlave _ownr; 23 24 public AsyncCommand(String chan, String name, String args, AsyncSlave ownr) { 25 _chan = chan; 26 _name = name; 27 _args = args; 28 _ownr = ownr; 29 _stat = -1; 30 } 31 public void abort() 32 { 33 _ownr.sendLine(_chan + " abrt"); 34 } 35 public String getName() { 36 return _name; 37 } 38 public String getArgs() { 39 return _args; 40 } 41 public Hashtable getData() { 42 return _data; 43 } 44 public int getStatus() { 45 return _stat; 46 } 47 public void setStatus(int stat) { 48 finished(); 49 } 50 public void finished() { 51 _ownr.releaseChan(_chan); 52 _done = true; 53 } 54 public void waitForComplete() { 55 while (!_done) { 56 try { 57 Thread.sleep(100); 58 } catch (Exception e) {} 59 } 60 } 61 } 62 | Popular Tags |