/** * */ package com.trendrr.oss.messaging.channel; import java.util.concurrent.Semaphore; import com.trendrr.oss.DynMap; import com.trendrr.oss.concurrent.SafeBox; /** * @author Dustin Norlander * @created May 16, 2012 * */ public class ChannelRequest { String endpoint = ""; Object[] inputs; Semaphore lock = new Semaphore(1, true); ChannelResponse response = null; public ChannelRequest(String endpoint, Object ...inputs) { this.endpoint = endpoint; this.inputs = inputs; try { lock.acquire(1); } catch (Exception x) { x.printStackTrace(); } } public String getEndpoint() { return endpoint; } public void setEndpoint(String endpoint) { this.endpoint = endpoint; } public Object[] getInputs() { return inputs; } public void setResponse(ChannelResponse response) { try { this.response = response; lock.release(1); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } public ChannelResponse awaitResponse() throws Exception { lock.acquire(1); return response; } }