1. /*
  2. * @(#)DynamicStub.java 1.5 04/06/21
  3. *
  4. * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
  5. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
  6. */
  7. package com.sun.corba.se.spi.presentation.rmi ;
  8. import java.rmi.RemoteException ;
  9. import org.omg.CORBA.portable.Delegate ;
  10. import org.omg.CORBA.portable.OutputStream ;
  11. import org.omg.CORBA.ORB ;
  12. /** Interface used to support dynamically generated stubs.
  13. * This supplies some methods that are found in
  14. * org.omg.CORBA.portable.ObjectImpl that are not available
  15. * in org.omg.CORBA.Object.
  16. */
  17. public interface DynamicStub extends org.omg.CORBA.Object
  18. {
  19. /** Similar to ObjectImpl._set_delegate
  20. */
  21. void setDelegate( Delegate delegate ) ;
  22. /** Similar to ObjectImpl._get_delegate
  23. */
  24. Delegate getDelegate() ;
  25. /** Similar to ObjectImpl._orb()
  26. */
  27. ORB getORB() ;
  28. /** Similar to ObjectImpl._ids
  29. */
  30. String[] getTypeIds() ;
  31. /** Connect this dynamic stub to an ORB.
  32. * Just as in standard RMI-IIOP, this is required after
  33. * a dynamic stub is deserialized from an ObjectInputStream.
  34. * It is not needed when unmarshalling from a
  35. * org.omg.CORBA.portable.InputStream.
  36. */
  37. void connect( ORB orb ) throws RemoteException ;
  38. boolean isLocal() ;
  39. OutputStream request( String operation, boolean responseExpected ) ;
  40. }