1. /*
  2. * @(#)ObjectKeyTemplate.java 1.20 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. // @(#)ObjectKeyTemplate.java 1.20 03/01/23
  8. package com.sun.corba.se.internal.ior;
  9. import com.sun.corba.se.internal.ior.ObjectId ;
  10. import com.sun.corba.se.internal.core.ORBVersion ;
  11. import org.omg.CORBA_2_3.portable.OutputStream ;
  12. import org.omg.CORBA_2_3.portable.InputStream ;
  13. import org.omg.CORBA.ORB ;
  14. /**
  15. * @author
  16. */
  17. public interface ObjectKeyTemplate
  18. {
  19. static final int MAGIC_BASE = 0xAFABCAFE ;
  20. // Magic used in our object keys for JDK 1.2, 1.3, RMI-IIOP OP,
  21. // J2EE 1.0-1.2.1.
  22. static final int JAVAMAGIC_OLD = MAGIC_BASE ;
  23. // Magic used only in JDK 1.3.1. No format changes in object keys.
  24. static final int JAVAMAGIC_NEW = MAGIC_BASE + 1 ;
  25. // New magic used in our object keys for JDK 1.4, J2EE 1.3 and later.
  26. // Format changes: all object keys have version string; POA key format
  27. // is changed.
  28. static final int JAVAMAGIC_NEWER = MAGIC_BASE + 2 ;
  29. static final int MAX_MAGIC = JAVAMAGIC_NEWER ;
  30. // Beginning in JDK 1.3.1_01, we introduced changes which required
  31. // the ability to distinguish between JDK 1.3.1 FCS and the patch
  32. // versions. See OldJIDLObjectKeyTemplate.
  33. public static final byte JDK1_3_1_01_PATCH_LEVEL = 1;
  34. /**
  35. * @param objectId
  36. * @param os
  37. * @return void
  38. * @exception
  39. * @author
  40. * @roseuid 3911CC1701E5
  41. */
  42. public void write(ObjectId objectId, OutputStream os);
  43. /**
  44. * @return int
  45. * @exception
  46. * @author
  47. * @roseuid 3915F48D01F6
  48. */
  49. public int getSubcontractId();
  50. // public byte[] getId( InputStream is ) ;
  51. public int getServerId() ;
  52. public byte[] getAdapterId( ORB orb ) ;
  53. public ORBVersion getORBVersion() ;
  54. }