UnMarshaller.java |
/* * JBoss, the OpenSource J2EE webOS * * Distributable under LGPL license. * See terms of license at gnu.org. */ package org.jboss.remoting.marshal; import java.io.IOException; import java.io.InputStream; import java.io.Serializable; import java.util.Map; /** * Takes a marshalled byte array and converts to a Java * data object. * * @author <a href="mailto:tom@jboss.org">Tom Elrod</a> */ public interface UnMarshaller extends Serializable { /** * Will read from the inputstream and converty contents to java Object. * * @param inputStream stream to read data from to do conversion * @param metadata can be any transport specific metadata (such as headers from http transport). * This can be null, depending on if transport supports metadata. * @return * @throws IOException all specific i/o exceptions need to be thrown as this. * @throws ClassNotFoundException will be thrown if during the unmarshalling process can not find a specific class * within classloader. */ public Object read(InputStream inputStream, Map metadata) throws IOException, ClassNotFoundException; /** * Set the class loader to use for unmarhsalling. This may * be needed when need to have access to class definitions that * are not part of this unmarshaller's parent classloader (especially * when doing remote classloading). * * @param classloader */ public void setClassLoader(ClassLoader classloader); }
UnMarshaller.java |