1 /* 2 * JBoss, the OpenSource J2EE webOS 3 * 4 * Distributable under LGPL license. 5 * See terms of license at gnu.org. 6 */ 7 package org.jboss.remoting.stream; 8 9 import java.io.InputStream; 10 import org.jboss.remoting.ServerInvocationHandler; 11 12 /** 13 * This interface is intended for those handlers that expect to 14 * receive calls from clients where a InputStream will be passed. 15 * 16 * @author <a HREF="mailto:tom.elrod@jboss.com">Tom Elrod</a> 17 */ 18 public interface StreamInvocationHandler extends ServerInvocationHandler 19 { 20 /** 21 * Will receive an input stream, which is actually a proxy back 22 * to the original stream on the client's vm. This stream can 23 * be acted upon as though it was a local input stream. 24 * When finished reading from the stream, it MUST be closed, or 25 * will remain open on the client side. 26 * 27 * @param stream stream proxy to client's original stream 28 * @param param the payload associated with the invocation 29 */ 30 public Object handleStream(InputStream stream, Object param); 31 }