javax.ejb.spi
Interface HandleDelegate


public interface HandleDelegate

The HandleDelegate interface is implemented by the EJB container. It is used by portable implementations of javax.ejb.Handle and javax.ejb.HomeHandle. It is not used by EJB components or by client components. It provides methods to serialize and deserialize EJBObject and EJBHome references to streams.

The HandleDelegate object is obtained by JNDI lookup at the reserved name "java:comp/HandleDelegate".


Method Summary
 EJBHome readEJBHome(ObjectInputStream istream)
          Deserialize the EJBHome reference corresponding to a HomeHandle.
 EJBObject readEJBObject(ObjectInputStream istream)
          Deserialize the EJBObject reference corresponding to a Handle.
 void writeEJBHome(EJBHome ejbHome, ObjectOutputStream ostream)
          Serialize the EJBHome reference corresponding to a HomeHandle.
 void writeEJBObject(EJBObject ejbObject, ObjectOutputStream ostream)
          Serialize the EJBObject reference corresponding to a Handle.
 

Method Detail

writeEJBObject

void writeEJBObject(EJBObject ejbObject,
                    ObjectOutputStream ostream)
                    throws IOException
Serialize the EJBObject reference corresponding to a Handle.

This method is called from the writeObject method of portable Handle implementation classes. The ostream object is the same object that was passed in to the Handle class's writeObject.

Parameters:
ejbObject - The EJBObject reference to be serialized.
ostream - The output stream.
Throws:
IOException - The EJBObject could not be serialized because of a system-level failure.

readEJBObject

EJBObject readEJBObject(ObjectInputStream istream)
                        throws IOException,
                               ClassNotFoundException
Deserialize the EJBObject reference corresponding to a Handle.

readEJBObject is called from the readObject method of portable Handle implementation classes. The istream object is the same object that was passed in to the Handle class's readObject. When readEJBObject is called, istream must point to the location in the stream at which the EJBObject reference can be read. The container must ensure that the EJBObject reference is capable of performing invocations immediately after deserialization.

Parameters:
istream - The input stream.
Returns:
The deserialized EJBObject reference.
Throws:
IOException - The EJBObject could not be deserialized because of a system-level failure.
ClassNotFoundException - The EJBObject could not be deserialized because some class could not be found.

writeEJBHome

void writeEJBHome(EJBHome ejbHome,
                  ObjectOutputStream ostream)
                  throws IOException
Serialize the EJBHome reference corresponding to a HomeHandle.

This method is called from the writeObject method of portable HomeHandle implementation classes. The ostream object is the same object that was passed in to the Handle class's writeObject.

Parameters:
ejbHome - The EJBHome reference to be serialized.
ostream - The output stream.
Throws:
IOException - The EJBObject could not be serialized because of a system-level failure.

readEJBHome

EJBHome readEJBHome(ObjectInputStream istream)
                    throws IOException,
                           ClassNotFoundException
Deserialize the EJBHome reference corresponding to a HomeHandle.

readEJBHome is called from the readObject method of portable HomeHandle implementation classes. The istream object is the same object that was passed in to the HomeHandle class's readObject. When readEJBHome is called, istream must point to the location in the stream at which the EJBHome reference can be read. The container must ensure that the EJBHome reference is capable of performing invocations immediately after deserialization.

Parameters:
istream - The input stream.
Returns:
The deserialized EJBHome reference.
Throws:
IOException - The EJBHome could not be deserialized because of a system-level failure.
ClassNotFoundException - The EJBHome could not be deserialized because some class could not be found.


Submit a bug or feature

Copyright 2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.