1. /*
  2. * @(#)ServerRequest.java 1.25 03/01/23
  3. *
  4. * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
  5. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
  6. */
  7. package com.sun.corba.se.internal.core;
  8. import org.omg.CORBA.SystemException;
  9. import org.omg.CORBA.portable.ResponseHandler;
  10. import org.omg.CORBA.portable.UnknownException;
  11. /**
  12. * ServerRequest represents the incoming request on the server-side.
  13. */
  14. public interface ServerRequest extends MarshalInputStream, Request, ResponseHandler {
  15. /**
  16. * Create a normal (invocation return) response for this request.
  17. */
  18. public ServerResponse
  19. createResponse(ServiceContexts svc);
  20. /**
  21. * Create a response that represents an user exception.
  22. *
  23. */
  24. public ServerResponse
  25. createUserExceptionResponse(ServiceContexts svc);
  26. /**
  27. * Create a response that represents an unknown exception.
  28. *
  29. */
  30. public ServerResponse
  31. createUnknownExceptionResponse(UnknownException ex);
  32. /**
  33. * Create a response that represents a system exception.
  34. */
  35. public ServerResponse
  36. createSystemExceptionResponse(SystemException ex,
  37. ServiceContexts svc);
  38. /**
  39. * Create a response that represents a location forward.
  40. */
  41. public ServerResponse
  42. createLocationForward(IOR ior, ServiceContexts svc);
  43. public boolean executeReturnServantInResponseConstructor();
  44. public void setExecuteReturnServantInResponseConstructor(boolean b);
  45. public boolean executeRemoveThreadInfoInResponseConstructor();
  46. public void setExecuteRemoveThreadInfoInResponseConstructor(boolean b);
  47. /**
  48. * Returns true if we are to execute Portable Interceptors ending
  49. * points in the ServerResponse constructor.
  50. */
  51. public boolean executePIInResponseConstructor();
  52. /**
  53. * Pass in whether we are to execute Portable Interceptors ending
  54. * points in the ServerResponse constructor.
  55. */
  56. public void setExecutePIInResponseConstructor( boolean b );
  57. }