1 57 58 package async; 59 60 import org.apache.wsif.WSIFException; 61 import org.apache.wsif.WSIFMessage; 62 import org.apache.wsif.WSIFResponseHandler; 63 64 69 public class AsyncResponseHandler implements WSIFResponseHandler { 70 71 77 static private boolean done; 78 static private int nrReplies; 79 static private WSIFMessage[] outputs; 80 static private WSIFMessage[] faults; 81 82 public AsyncResponseHandler(int nrReplies) { 83 this.nrReplies = nrReplies - 1; done = false; 85 outputs = new WSIFMessage[nrReplies]; 86 faults = new WSIFMessage[nrReplies]; 87 } 88 89 synchronized public void executeAsyncResponse( 90 WSIFMessage output, 91 WSIFMessage fault) 92 throws WSIFException { 93 outputs[nrReplies] = output; 94 faults[nrReplies] = fault; 95 done = --nrReplies < 0; 96 } 97 98 public boolean isDone() { 99 return done; 100 } 101 102 public WSIFMessage[] getOutputs() { 103 return outputs; 104 } 105 106 public WSIFMessage[] getFaults() { 107 return faults; 108 } 109 110 } 111 | Popular Tags |