1. /*
  2. * @(#)RequestDispatcherDefault.java 1.18 03/12/19
  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.protocol ;
  8. import com.sun.corba.se.pept.protocol.ClientRequestDispatcher;
  9. import com.sun.corba.se.spi.protocol.LocalClientRequestDispatcherFactory ;
  10. import com.sun.corba.se.spi.protocol.CorbaServerRequestDispatcher ;
  11. import com.sun.corba.se.spi.orb.ORB ;
  12. // Used only in the implementation: no client of this class ever needs these
  13. import com.sun.corba.se.spi.ior.IOR ;
  14. import com.sun.corba.se.impl.protocol.CorbaClientRequestDispatcherImpl ;
  15. import com.sun.corba.se.impl.protocol.CorbaServerRequestDispatcherImpl ;
  16. import com.sun.corba.se.impl.protocol.MinimalServantCacheLocalCRDImpl ;
  17. import com.sun.corba.se.impl.protocol.InfoOnlyServantCacheLocalCRDImpl ;
  18. import com.sun.corba.se.impl.protocol.FullServantCacheLocalCRDImpl ;
  19. import com.sun.corba.se.impl.protocol.JIDLLocalCRDImpl ;
  20. import com.sun.corba.se.impl.protocol.POALocalCRDImpl ;
  21. import com.sun.corba.se.impl.protocol.INSServerRequestDispatcher ;
  22. import com.sun.corba.se.impl.protocol.BootstrapServerRequestDispatcher ;
  23. public final class RequestDispatcherDefault {
  24. private RequestDispatcherDefault() {}
  25. public static ClientRequestDispatcher makeClientRequestDispatcher()
  26. {
  27. return new CorbaClientRequestDispatcherImpl() ;
  28. }
  29. public static CorbaServerRequestDispatcher makeServerRequestDispatcher( ORB orb )
  30. {
  31. return new CorbaServerRequestDispatcherImpl( (com.sun.corba.se.spi.orb.ORB)orb ) ;
  32. }
  33. public static CorbaServerRequestDispatcher makeBootstrapServerRequestDispatcher( ORB orb )
  34. {
  35. return new BootstrapServerRequestDispatcher( orb ) ;
  36. }
  37. public static CorbaServerRequestDispatcher makeINSServerRequestDispatcher( ORB orb )
  38. {
  39. return new INSServerRequestDispatcher( orb ) ;
  40. }
  41. public static LocalClientRequestDispatcherFactory makeMinimalServantCacheLocalClientRequestDispatcherFactory( final ORB orb )
  42. {
  43. return new LocalClientRequestDispatcherFactory() {
  44. public LocalClientRequestDispatcher create( int id, IOR ior ) {
  45. return new MinimalServantCacheLocalCRDImpl( orb, id, ior ) ;
  46. }
  47. } ;
  48. }
  49. public static LocalClientRequestDispatcherFactory makeInfoOnlyServantCacheLocalClientRequestDispatcherFactory( final ORB orb )
  50. {
  51. return new LocalClientRequestDispatcherFactory() {
  52. public LocalClientRequestDispatcher create( int id, IOR ior ) {
  53. return new InfoOnlyServantCacheLocalCRDImpl( orb, id, ior ) ;
  54. }
  55. } ;
  56. }
  57. public static LocalClientRequestDispatcherFactory makeFullServantCacheLocalClientRequestDispatcherFactory( final ORB orb )
  58. {
  59. return new LocalClientRequestDispatcherFactory() {
  60. public LocalClientRequestDispatcher create( int id, IOR ior ) {
  61. return new FullServantCacheLocalCRDImpl( orb, id, ior ) ;
  62. }
  63. } ;
  64. }
  65. public static LocalClientRequestDispatcherFactory makeJIDLLocalClientRequestDispatcherFactory( final ORB orb )
  66. {
  67. return new LocalClientRequestDispatcherFactory() {
  68. public LocalClientRequestDispatcher create( int id, IOR ior ) {
  69. return new JIDLLocalCRDImpl( orb, id, ior ) ;
  70. }
  71. } ;
  72. }
  73. public static LocalClientRequestDispatcherFactory makePOALocalClientRequestDispatcherFactory( final ORB orb )
  74. {
  75. return new LocalClientRequestDispatcherFactory() {
  76. public LocalClientRequestDispatcher create( int id, IOR ior ) {
  77. return new POALocalCRDImpl( orb, id, ior ) ;
  78. }
  79. } ;
  80. }
  81. }