JDK-8049522 : Move @implNote in org.omg.CORBA.ORB to init method
  • Type: Bug
  • Component: other-libs
  • Sub-Component: corba:orb
  • Affected Version: 9
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2014-07-08
  • Updated: 2015-06-03
  • Resolved: 2014-11-11
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b40Fixed
Related Reports
Relates :  
Description
Classloader changes have been made around how a customized 3rd party Singleton ORB is loaded. The behaviour is new to JDK 9. Earlier JDK families had the initial change reversed via JDK-8042789.

An @implNote around this new implementation is already present in the JDK 9 org.omg.CORBA.ORB  API but a request to move the note to the ORB.init() method section has been made.
Comments
I don't object to have having some repetition or retaining a note in the class description. If we do retain it then I think it needs a bit of rewording. I'm happy to work with you on that.
22-10-2014

I'll add the impl notes to the init methods, but I think it is worthwhile retaining some of the information in the general description section below the init example. I think a bit of repetition is useful in this instance, to be sure, to be sure, that the message is imparted successfully.
21-10-2014

The following is what I've been thinking of, it puts an @implNote into the javadoc of each init method. diff --git a/src/share/classes/org/omg/CORBA/ORB.java b/src/share/classes/org/omg/CORBA/ORB.java --- a/src/share/classes/org/omg/CORBA/ORB.java +++ b/src/share/classes/org/omg/CORBA/ORB.java @@ -164,19 +164,6 @@ * An application or applet can be initialized in one or more ORBs. * ORB initialization is a bootstrap call into the CORBA world. * - * - * @implNote - * As described above it is possible to specify, at runtime, an alternative ORBSingleton class and - * an alternative ORB implementation class, via the system properties {@code org.omg.CORBA.ORBSingletonClass} - * and {@code org.omg.CORBA.ORBClass} respectively. - * The class loading strategy is organized, such that, in the case of the ORBSingleton - * the system class loader is used to load the alternative singleton ORB. - * Thus, it is necessary that an application's CLASSPATH - * includes the classes for this alternative ORBSingleton, when specified. - * - * In the case of specifying an alternative ORB implementation class, the loading - * strategy will use the thread context class loader, as appropriate. - * * @since JDK1.2 */ abstract public class ORB { @@ -295,6 +282,10 @@ * creating <code>TypeCode</code> objects are invoked. * * @return the singleton ORB + * + * @implNote + * Where configured, the system-wide/singleton ORB is located via the + * system class loader. */ public static synchronized ORB init() { if (singleton == null) { @@ -354,6 +345,10 @@ * method; may be <code>null</code> * @param props application-specific properties; may be <code>null</code> * @return the newly-created ORB instance + * + * @implNote + * Where configured, the ORB is located via the thread context class + * loader. */ public static ORB init(String[] args, Properties props) { // @@ -392,6 +387,10 @@ * @param app the applet; may be <code>null</code> * @param props applet-specific properties; may be <code>null</code> * @return the newly-created ORB instance + * + * @implNote + * Where configured, the ORB is located via the thread context class + * loader. */ public static ORB init(Applet app, Properties props) { String className;
08-07-2014