1. /*
  2. * @(#)_BindingIteratorImplBase.java 1.15 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. /*
  8. * File: ./org/omg/CosNaming/_BindingIteratorImplBase.java
  9. * From: nameservice.idl
  10. * Date: Tue Aug 11 03:12:09 1998
  11. * By: idltojava Java IDL 1.2 Aug 11 1998 02:00:18
  12. * @deprecated Deprecated in JDK 1.4.
  13. */
  14. package org.omg.CosNaming;
  15. public abstract class _BindingIteratorImplBase extends org.omg.CORBA.DynamicImplementation implements org.omg.CosNaming.BindingIterator {
  16. // Constructor
  17. public _BindingIteratorImplBase() {
  18. super();
  19. }
  20. // Type strings for this class and its superclases
  21. private static final String _type_ids[] = {
  22. "IDL:omg.org/CosNaming/BindingIterator:1.0"
  23. };
  24. public String[] _ids() { return (String[]) _type_ids.clone(); }
  25. private static java.util.Dictionary _methods = new java.util.Hashtable();
  26. static {
  27. _methods.put("next_one", new java.lang.Integer(0));
  28. _methods.put("next_n", new java.lang.Integer(1));
  29. _methods.put("destroy", new java.lang.Integer(2));
  30. }
  31. // DSI Dispatch call
  32. public void invoke(org.omg.CORBA.ServerRequest r) {
  33. switch (((java.lang.Integer) _methods.get(r.op_name())).intValue()) {
  34. case 0: // org.omg.CosNaming.BindingIterator.next_one
  35. {
  36. org.omg.CORBA.NVList _list = _orb().create_list(0);
  37. org.omg.CORBA.Any _b = _orb().create_any();
  38. _b.type(org.omg.CosNaming.BindingHelper.type());
  39. _list.add_value("b", _b, org.omg.CORBA.ARG_OUT.value);
  40. r.params(_list);
  41. org.omg.CosNaming.BindingHolder b;
  42. b = new org.omg.CosNaming.BindingHolder();
  43. boolean ___result;
  44. ___result = this.next_one(b);
  45. org.omg.CosNaming.BindingHelper.insert(_b, b.value);
  46. org.omg.CORBA.Any __result = _orb().create_any();
  47. __result.insert_boolean(___result);
  48. r.result(__result);
  49. }
  50. break;
  51. case 1: // org.omg.CosNaming.BindingIterator.next_n
  52. {
  53. org.omg.CORBA.NVList _list = _orb().create_list(0);
  54. org.omg.CORBA.Any _how_many = _orb().create_any();
  55. _how_many.type(org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.tk_ulong));
  56. _list.add_value("how_many", _how_many, org.omg.CORBA.ARG_IN.value);
  57. org.omg.CORBA.Any _bl = _orb().create_any();
  58. _bl.type(org.omg.CosNaming.BindingListHelper.type());
  59. _list.add_value("bl", _bl, org.omg.CORBA.ARG_OUT.value);
  60. r.params(_list);
  61. int how_many;
  62. how_many = _how_many.extract_ulong();
  63. org.omg.CosNaming.BindingListHolder bl;
  64. bl = new org.omg.CosNaming.BindingListHolder();
  65. boolean ___result;
  66. ___result = this.next_n(how_many, bl);
  67. org.omg.CosNaming.BindingListHelper.insert(_bl, bl.value);
  68. org.omg.CORBA.Any __result = _orb().create_any();
  69. __result.insert_boolean(___result);
  70. r.result(__result);
  71. }
  72. break;
  73. case 2: // org.omg.CosNaming.BindingIterator.destroy
  74. {
  75. org.omg.CORBA.NVList _list = _orb().create_list(0);
  76. r.params(_list);
  77. this.destroy();
  78. org.omg.CORBA.Any __return = _orb().create_any();
  79. __return.type(_orb().get_primitive_tc(org.omg.CORBA.TCKind.tk_void));
  80. r.result(__return);
  81. }
  82. break;
  83. default:
  84. throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);
  85. }
  86. }
  87. }