From: claude h. <chu...@us...> - 2004-04-01 14:59:30
|
User: chussenet Date: 04/04/01 06:47:34 Added: src/main/org/jboss/aop/asynchronous/aspects AsynchronousFacade.java AsynchronousFacadeImpl.java Log: Asynchronous Engine Definition/Implementation + Asynchronous Definition/Implementation Revision Changes Path 1.1 jboss-aspects/src/main/org/jboss/aop/asynchronous/aspects/AsynchronousFacade.java Index: AsynchronousFacade.java =================================================================== /* * Asynchronous Engine . * * Copyright (C) 2004 Claude Hussenet * Contact : chu...@ya... * * Distributable under LGPL license. * See terms of license at gnu.org. */ package org.jboss.aop.asynchronous.aspects; import org.jboss.aop.asynchronous.AsynchronousResponse; import org.jboss.aop.asynchronous.ThreadManagerResponse; import org.jboss.aop.asynchronous.AsynchronousTask; /** * @version <tt>$Revision: 1.1 $</tt> * @author <a href="mailto:chu...@ya...">{Claude Hussenet Independent Consultant}</a>. */ public interface AsynchronousFacade { public void setId(String id); public String getId(); public void setTimeout(long timeout); public long getTimeout(); public AsynchronousResponse waitForResponse(); public ThreadManagerResponse getThreadManagerResponse(); public boolean isDone(); public Object getReturnValue(); public AsynchronousTask getAsynchronousTask(); public void setAsynchronousTask(AsynchronousTask asynchronousTask); } 1.1 jboss-aspects/src/main/org/jboss/aop/asynchronous/aspects/AsynchronousFacadeImpl.java Index: AsynchronousFacadeImpl.java =================================================================== /* * Asynchronous Engine . * * Copyright (C) 2004 Claude Hussenet * Contact : chu...@ya... * * Distributable under LGPL license. * See terms of license at gnu.org. */ package org.jboss.aop.asynchronous.aspects; import org.jboss.aop.asynchronous.AsynchronousTask; import org.jboss.aop.asynchronous.ThreadManagerResponse; import org.jboss.aop.asynchronous.AsynchronousResponse; import org.jboss.aop.asynchronous.AsynchronousConstants; /** * @version <tt>$Revision: 1.1 $</tt> * @author <a href="mailto:chu...@ya...">{Claude Hussenet Independent Consultant}</a>. */ public class AsynchronousFacadeImpl implements AsynchronousFacade { private AsynchronousTask asynchronousTask; private long timeout = 0; private String id; public AsynchronousFacadeImpl() { super(); } public AsynchronousTask getAsynchronousTask() { return asynchronousTask; } public void setAsynchronousTask(AsynchronousTask asynchronousTask) { this.asynchronousTask = asynchronousTask; } public void setTimeout(long timeout) { this.timeout = timeout; } public long getTimeout() { return timeout; } public ThreadManagerResponse getThreadManagerResponse() { return asynchronousTask.getResponse(); } public AsynchronousResponse waitForResponse() { if (getThreadManagerResponse().getResponseCode() == AsynchronousConstants.OK) { AsynchronousResponse atask = (AsynchronousResponse)getThreadManagerResponse().getResult(); return atask; } return getThreadManagerResponse(); } public Object getReturnValue() { if (waitForResponse().getResponseCode() == AsynchronousConstants.OK) return waitForResponse().getResult(); else return null; } public boolean isDone() { return asynchronousTask.isDone(); } public void setId(String id) { this.id = id; } public String getId() { return id; } } |