Tue, 26 Jun 2012 10:13:49 -0700
Merge
1.1 --- a/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java Thu Jun 21 17:07:30 2012 -0700 1.2 +++ b/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java Tue Jun 26 10:13:49 2012 -0700 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -217,7 +217,7 @@ 1.11 1.12 // ClientRequestInfo validity table (see ptc/00-08-06 table 21-1). 1.13 // Note: These must be in the same order as specified in contants. 1.14 - protected static final boolean validCall[][] = { 1.15 + private static final boolean validCall[][] = { 1.16 // LEGEND: 1.17 // s_req = send_request r_rep = receive_reply 1.18 // s_pol = send_poll r_exc = receive_exception
2.1 --- a/src/share/classes/com/sun/corba/se/impl/interceptors/ServerRequestInfoImpl.java Thu Jun 21 17:07:30 2012 -0700 2.2 +++ b/src/share/classes/com/sun/corba/se/impl/interceptors/ServerRequestInfoImpl.java Tue Jun 26 10:13:49 2012 -0700 2.3 @@ -1,5 +1,5 @@ 2.4 /* 2.5 - * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. 2.6 + * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. 2.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 2.8 * 2.9 * This code is free software; you can redistribute it and/or modify it 2.10 @@ -195,7 +195,7 @@ 2.11 2.12 // ServerRequestInfo validity table (see ptc/00-08-06 table 21-2). 2.13 // Note: These must be in the same order as specified in contants. 2.14 - protected static final boolean validCall[][] = { 2.15 + private static final boolean validCall[][] = { 2.16 // LEGEND: 2.17 // r_rsc = receive_request_service_contexts 2.18 // r_req = receive_request
3.1 --- a/src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java Thu Jun 21 17:07:30 2012 -0700 3.2 +++ b/src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java Tue Jun 26 10:13:49 2012 -0700 3.3 @@ -1,5 +1,5 @@ 3.4 /* 3.5 - * Copyright (c) 1999, 2004, Oracle and/or its affiliates. All rights reserved. 3.6 + * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved. 3.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3.8 * 3.9 * This code is free software; you can redistribute it and/or modify it 3.10 @@ -130,10 +130,23 @@ 3.11 private UtilSystemException utilWrapper = UtilSystemException.get( 3.12 CORBALogDomains.RPC_ENCODING); 3.13 3.14 - public static Util instance = null; 3.15 + private static Util instance = null; 3.16 3.17 public Util() { 3.18 - instance = this; 3.19 + setInstance(this); 3.20 + } 3.21 + 3.22 + private static void setInstance( Util util ) { 3.23 + assert instance == null : "Instance already defined"; 3.24 + instance = util; 3.25 + } 3.26 + 3.27 + public static Util getInstance() { 3.28 + return instance; 3.29 + } 3.30 + 3.31 + public static boolean isInstanceDefined() { 3.32 + return instance != null; 3.33 } 3.34 3.35 // Used by TOAFactory.shutdown to unexport all targets for this
4.1 --- a/src/share/classes/com/sun/corba/se/impl/oa/poa/POAPolicyMediatorBase_R.java Thu Jun 21 17:07:30 2012 -0700 4.2 +++ b/src/share/classes/com/sun/corba/se/impl/oa/poa/POAPolicyMediatorBase_R.java Tue Jun 26 10:13:49 2012 -0700 4.3 @@ -1,5 +1,5 @@ 4.4 /* 4.5 - * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. 4.6 + * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. 4.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4.8 * 4.9 * This code is free software; you can redistribute it and/or modify it 4.10 @@ -93,7 +93,7 @@ 4.11 4.12 activeObjectMap.putServant( servant, entry ) ; 4.13 4.14 - if (Util.instance != null) { 4.15 + if (Util.isInstanceDefined()) { 4.16 POAManagerImpl pm = (POAManagerImpl)poa.the_POAManager() ; 4.17 POAFactory factory = pm.getFactory() ; 4.18 factory.registerPOAForServant(poa, servant); 4.19 @@ -129,7 +129,7 @@ 4.20 4.21 activeObjectMap.remove(key); 4.22 4.23 - if (Util.instance != null) { 4.24 + if (Util.isInstanceDefined()) { 4.25 POAManagerImpl pm = (POAManagerImpl)poa.the_POAManager() ; 4.26 POAFactory factory = pm.getFactory() ; 4.27 factory.unregisterPOAForServant(poa, s);
5.1 --- a/src/share/classes/com/sun/corba/se/impl/oa/toa/TOAFactory.java Thu Jun 21 17:07:30 2012 -0700 5.2 +++ b/src/share/classes/com/sun/corba/se/impl/oa/toa/TOAFactory.java Tue Jun 26 10:13:49 2012 -0700 5.3 @@ -1,5 +1,5 @@ 5.4 /* 5.5 - * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved. 5.6 + * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. 5.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 5.8 * 5.9 * This code is free software; you can redistribute it and/or modify it 5.10 @@ -78,8 +78,8 @@ 5.11 5.12 public void shutdown( boolean waitForCompletion ) 5.13 { 5.14 - if (Util.instance != null) { 5.15 - Util.instance.unregisterTargetsForORB(orb); 5.16 + if (Util.isInstanceDefined()) { 5.17 + Util.getInstance().unregisterTargetsForORB(orb); 5.18 } 5.19 } 5.20
6.1 --- a/src/share/classes/com/sun/corba/se/impl/orb/ParserTable.java Thu Jun 21 17:07:30 2012 -0700 6.2 +++ b/src/share/classes/com/sun/corba/se/impl/orb/ParserTable.java Tue Jun 26 10:13:49 2012 -0700 6.3 @@ -1,5 +1,5 @@ 6.4 /* 6.5 - * Copyright (c) 2002, 2006, Oracle and/or its affiliates. All rights reserved. 6.6 + * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. 6.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 6.8 * 6.9 * This code is free software; you can redistribute it and/or modify it 6.10 @@ -106,7 +106,9 @@ 6.11 6.12 public ParserData[] getParserData() 6.13 { 6.14 - return parserData ; 6.15 + ParserData[] parserArray = new ParserData[parserData.length]; 6.16 + System.arraycopy(parserData, 0, parserArray, 0, parserData.length); 6.17 + return parserArray; 6.18 } 6.19 6.20 private ParserTable() {
7.1 --- a/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3.java Thu Jun 21 17:07:30 2012 -0700 7.2 +++ b/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3.java Tue Jun 26 10:13:49 2012 -0700 7.3 @@ -1,5 +1,5 @@ 7.4 /* 7.5 - * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved. 7.6 + * Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. 7.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 7.8 * 7.9 * This code is free software; you can redistribute it and/or modify it 7.10 @@ -62,7 +62,7 @@ 7.11 // legal use of '.' in a Java name. 7.12 7.13 public static final RepositoryIdCache_1_3 cache = new RepositoryIdCache_1_3(); 7.14 - public static final byte[] IDL_IDENTIFIER_CHARS = { 7.15 + private static final byte[] IDL_IDENTIFIER_CHARS = { 7.16 7.17 // 0 1 2 3 4 5 6 7 8 9 a b c d e f 7.18 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f 7.19 @@ -180,7 +180,7 @@ 7.20 public static final String kRemoteTypeStr = ""; 7.21 public static final String kRemoteValueRepID = ""; 7.22 7.23 - public static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); 7.24 + private static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); 7.25 7.26 static { 7.27 kSpecialArrayTypeStrings.put("CORBA.WStringValue", new StringBuffer(java.lang.String.class.getName())); 7.28 @@ -189,7 +189,7 @@ 7.29 7.30 } 7.31 7.32 - public static final Hashtable kSpecialCasesRepIDs = new Hashtable(); 7.33 + private static final Hashtable kSpecialCasesRepIDs = new Hashtable(); 7.34 7.35 static { 7.36 kSpecialCasesRepIDs.put(java.lang.String.class, kWStringValueRepID); 7.37 @@ -197,7 +197,7 @@ 7.38 kSpecialCasesRepIDs.put(java.rmi.Remote.class, kRemoteValueRepID); 7.39 } 7.40 7.41 - public static final Hashtable kSpecialCasesStubValues = new Hashtable(); 7.42 + private static final Hashtable kSpecialCasesStubValues = new Hashtable(); 7.43 7.44 static { 7.45 kSpecialCasesStubValues.put(java.lang.String.class, kWStringStubValue); 7.46 @@ -209,7 +209,7 @@ 7.47 } 7.48 7.49 7.50 - public static final Hashtable kSpecialCasesVersions = new Hashtable(); 7.51 + private static final Hashtable kSpecialCasesVersions = new Hashtable(); 7.52 7.53 static { 7.54 kSpecialCasesVersions.put(java.lang.String.class, kWStringValueHash); 7.55 @@ -220,7 +220,7 @@ 7.56 kSpecialCasesVersions.put(java.rmi.Remote.class, kRemoteValueHash); 7.57 } 7.58 7.59 - public static final Hashtable kSpecialCasesClasses = new Hashtable(); 7.60 + private static final Hashtable kSpecialCasesClasses = new Hashtable(); 7.61 7.62 static { 7.63 kSpecialCasesClasses.put(kWStringTypeStr, java.lang.String.class); 7.64 @@ -232,7 +232,7 @@ 7.65 //kSpecialCasesClasses.put(kRemoteTypeStr, java.rmi.Remote.class); 7.66 } 7.67 7.68 - public static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); 7.69 + private static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); 7.70 7.71 static { 7.72 kSpecialCasesArrayPrefix.put(java.lang.String.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); 7.73 @@ -243,7 +243,7 @@ 7.74 kSpecialCasesArrayPrefix.put(java.rmi.Remote.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); 7.75 } 7.76 7.77 - public static final Hashtable kSpecialPrimitives = new Hashtable(); 7.78 + private static final Hashtable kSpecialPrimitives = new Hashtable(); 7.79 7.80 static { 7.81 kSpecialPrimitives.put("int","long");
8.1 --- a/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3_1.java Thu Jun 21 17:07:30 2012 -0700 8.2 +++ b/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3_1.java Tue Jun 26 10:13:49 2012 -0700 8.3 @@ -1,5 +1,5 @@ 8.4 /* 8.5 - * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved. 8.6 + * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. 8.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 8.8 * 8.9 * This code is free software; you can redistribute it and/or modify it 8.10 @@ -63,7 +63,7 @@ 8.11 // uniformly, and is safe because that is the only 8.12 // legal use of '.' in a Java name. 8.13 8.14 - public static final byte[] IDL_IDENTIFIER_CHARS = { 8.15 + private static final byte[] IDL_IDENTIFIER_CHARS = { 8.16 8.17 // 0 1 2 3 4 5 6 7 8 9 a b c d e f 8.18 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f 8.19 @@ -198,7 +198,7 @@ 8.20 public static final String kRemoteTypeStr = ""; 8.21 public static final String kRemoteValueRepID = ""; 8.22 8.23 - public static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); 8.24 + private static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); 8.25 8.26 static { 8.27 kSpecialArrayTypeStrings.put("CORBA.WStringValue", new StringBuffer(java.lang.String.class.getName())); 8.28 @@ -207,7 +207,7 @@ 8.29 8.30 } 8.31 8.32 - public static final Hashtable kSpecialCasesRepIDs = new Hashtable(); 8.33 + private static final Hashtable kSpecialCasesRepIDs = new Hashtable(); 8.34 8.35 static { 8.36 kSpecialCasesRepIDs.put(java.lang.String.class, kWStringValueRepID); 8.37 @@ -215,7 +215,7 @@ 8.38 kSpecialCasesRepIDs.put(java.rmi.Remote.class, kRemoteValueRepID); 8.39 } 8.40 8.41 - public static final Hashtable kSpecialCasesStubValues = new Hashtable(); 8.42 + private static final Hashtable kSpecialCasesStubValues = new Hashtable(); 8.43 8.44 static { 8.45 kSpecialCasesStubValues.put(java.lang.String.class, kWStringStubValue); 8.46 @@ -227,7 +227,7 @@ 8.47 } 8.48 8.49 8.50 - public static final Hashtable kSpecialCasesVersions = new Hashtable(); 8.51 + private static final Hashtable kSpecialCasesVersions = new Hashtable(); 8.52 8.53 static { 8.54 kSpecialCasesVersions.put(java.lang.String.class, kWStringValueHash); 8.55 @@ -238,7 +238,7 @@ 8.56 kSpecialCasesVersions.put(java.rmi.Remote.class, kRemoteValueHash); 8.57 } 8.58 8.59 - public static final Hashtable kSpecialCasesClasses = new Hashtable(); 8.60 + private static final Hashtable kSpecialCasesClasses = new Hashtable(); 8.61 8.62 static { 8.63 kSpecialCasesClasses.put(kWStringTypeStr, java.lang.String.class); 8.64 @@ -250,7 +250,7 @@ 8.65 //kSpecialCasesClasses.put(kRemoteTypeStr, java.rmi.Remote.class); 8.66 } 8.67 8.68 - public static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); 8.69 + private static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); 8.70 8.71 static { 8.72 kSpecialCasesArrayPrefix.put(java.lang.String.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); 8.73 @@ -261,7 +261,7 @@ 8.74 kSpecialCasesArrayPrefix.put(java.rmi.Remote.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); 8.75 } 8.76 8.77 - public static final Hashtable kSpecialPrimitives = new Hashtable(); 8.78 + private static final Hashtable kSpecialPrimitives = new Hashtable(); 8.79 8.80 static { 8.81 kSpecialPrimitives.put("int","long");
9.1 --- a/src/share/classes/com/sun/corba/se/impl/protocol/LocalClientRequestDispatcherBase.java Thu Jun 21 17:07:30 2012 -0700 9.2 +++ b/src/share/classes/com/sun/corba/se/impl/protocol/LocalClientRequestDispatcherBase.java Tue Jun 26 10:13:49 2012 -0700 9.3 @@ -1,5 +1,5 @@ 9.4 /* 9.5 - * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved. 9.6 + * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. 9.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9.8 * 9.9 * This code is free software; you can redistribute it and/or modify it 9.10 @@ -52,7 +52,7 @@ 9.11 9.12 // If isNextIsLocalValid.get() == Boolean.TRUE, 9.13 // the next call to isLocal should be valid 9.14 - protected static ThreadLocal isNextCallValid = new ThreadLocal() { 9.15 + private static final ThreadLocal isNextCallValid = new ThreadLocal() { 9.16 protected synchronized Object initialValue() { 9.17 return Boolean.TRUE; 9.18 }
10.1 --- a/src/share/classes/com/sun/corba/se/impl/util/RepositoryId.java Thu Jun 21 17:07:30 2012 -0700 10.2 +++ b/src/share/classes/com/sun/corba/se/impl/util/RepositoryId.java Tue Jun 26 10:13:49 2012 -0700 10.3 @@ -1,5 +1,5 @@ 10.4 /* 10.5 - * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved. 10.6 + * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. 10.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 10.8 * 10.9 * This code is free software; you can redistribute it and/or modify it 10.10 @@ -57,7 +57,7 @@ 10.11 // uniformly, and is safe because that is the only 10.12 // legal use of '.' in a Java name. 10.13 10.14 - public static final byte[] IDL_IDENTIFIER_CHARS = { 10.15 + private static final byte[] IDL_IDENTIFIER_CHARS = { 10.16 10.17 // 0 1 2 3 4 5 6 7 8 9 a b c d e f 10.18 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f 10.19 @@ -95,7 +95,7 @@ 10.20 private static IdentityHashtable classIDLToRepStr = new IdentityHashtable(); 10.21 private static IdentityHashtable classSeqToRepStr = new IdentityHashtable(); 10.22 10.23 - private static IdentityHashtable repStrToByteArray = new IdentityHashtable(); 10.24 + private static final IdentityHashtable repStrToByteArray = new IdentityHashtable(); 10.25 private static Hashtable repStrToClass = new Hashtable(); 10.26 10.27 private String repId = null; 10.28 @@ -192,7 +192,7 @@ 10.29 public static final String kRemoteTypeStr = ""; 10.30 public static final String kRemoteValueRepID = ""; 10.31 10.32 - public static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); 10.33 + private static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); 10.34 10.35 static { 10.36 kSpecialArrayTypeStrings.put("CORBA.WStringValue", new StringBuffer(java.lang.String.class.getName())); 10.37 @@ -201,7 +201,7 @@ 10.38 10.39 } 10.40 10.41 - public static final Hashtable kSpecialCasesRepIDs = new Hashtable(); 10.42 + private static final Hashtable kSpecialCasesRepIDs = new Hashtable(); 10.43 10.44 static { 10.45 kSpecialCasesRepIDs.put(java.lang.String.class, kWStringValueRepID); 10.46 @@ -209,7 +209,7 @@ 10.47 kSpecialCasesRepIDs.put(java.rmi.Remote.class, kRemoteValueRepID); 10.48 } 10.49 10.50 - public static final Hashtable kSpecialCasesStubValues = new Hashtable(); 10.51 + private static final Hashtable kSpecialCasesStubValues = new Hashtable(); 10.52 10.53 static { 10.54 kSpecialCasesStubValues.put(java.lang.String.class, kWStringStubValue); 10.55 @@ -221,7 +221,7 @@ 10.56 } 10.57 10.58 10.59 - public static final Hashtable kSpecialCasesVersions = new Hashtable(); 10.60 + private static final Hashtable kSpecialCasesVersions = new Hashtable(); 10.61 10.62 static { 10.63 kSpecialCasesVersions.put(java.lang.String.class, kWStringValueHash); 10.64 @@ -232,7 +232,7 @@ 10.65 kSpecialCasesVersions.put(java.rmi.Remote.class, kRemoteValueHash); 10.66 } 10.67 10.68 - public static final Hashtable kSpecialCasesClasses = new Hashtable(); 10.69 + private static final Hashtable kSpecialCasesClasses = new Hashtable(); 10.70 10.71 static { 10.72 kSpecialCasesClasses.put(kWStringTypeStr, java.lang.String.class); 10.73 @@ -244,7 +244,7 @@ 10.74 //kSpecialCasesClasses.put(kRemoteTypeStr, java.rmi.Remote.class); 10.75 } 10.76 10.77 - public static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); 10.78 + private static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); 10.79 10.80 static { 10.81 kSpecialCasesArrayPrefix.put(java.lang.String.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); 10.82 @@ -255,7 +255,7 @@ 10.83 kSpecialCasesArrayPrefix.put(java.rmi.Remote.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); 10.84 } 10.85 10.86 - public static final Hashtable kSpecialPrimitives = new Hashtable(); 10.87 + private static final Hashtable kSpecialPrimitives = new Hashtable(); 10.88 10.89 static { 10.90 kSpecialPrimitives.put("int","long");
11.1 --- a/src/share/classes/com/sun/corba/se/spi/logging/CORBALogDomains.java Thu Jun 21 17:07:30 2012 -0700 11.2 +++ b/src/share/classes/com/sun/corba/se/spi/logging/CORBALogDomains.java Tue Jun 26 10:13:49 2012 -0700 11.3 @@ -1,5 +1,5 @@ 11.4 /* 11.5 - * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. 11.6 + * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. 11.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 11.8 * 11.9 * This code is free software; you can redistribute it and/or modify it 11.10 @@ -58,7 +58,7 @@ 11.11 private CORBALogDomains() {} 11.12 11.13 // Top level log domain for CORBA 11.14 - public static String TOP_LEVEL_DOMAIN = "javax.enterprise.resource.corba"; 11.15 + public static final String TOP_LEVEL_DOMAIN = "javax.enterprise.resource.corba"; 11.16 11.17 public static final String RPC = "rpc" ; 11.18
12.1 --- a/src/share/classes/sun/rmi/rmic/iiop/IDLNames.java Thu Jun 21 17:07:30 2012 -0700 12.2 +++ b/src/share/classes/sun/rmi/rmic/iiop/IDLNames.java Tue Jun 26 10:13:49 2012 -0700 12.3 @@ -1,5 +1,5 @@ 12.4 /* 12.5 - * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved. 12.6 + * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. 12.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 12.8 * 12.9 * This code is free software; you can redistribute it and/or modify it 12.10 @@ -71,6 +71,34 @@ 12.11 (byte)'F', 12.12 }; 12.13 12.14 + // Legal IDL Identifier characters (1 = legal). Note 12.15 + // that '.' (2E) is marked as legal even though it is 12.16 + // not legal in IDL. This allows us to treat a fully 12.17 + // qualified Java name with '.' package separators 12.18 + // uniformly, and is safe because that is the only 12.19 + // legal use of '.' in a Java name. 12.20 + 12.21 + private static final byte[] IDL_IDENTIFIER_CHARS = { 12.22 + 12.23 + // 0 1 2 3 4 5 6 7 8 9 a b c d e f 12.24 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f 12.25 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 10-1f 12.26 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,1,0, // 20-2f 12.27 + 1,1,1,1, 1,1,1,1, 1,1,0,0, 0,0,0,0, // 30-3f 12.28 + 0,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // 40-4f 12.29 + 1,1,1,1, 1,1,1,1, 1,1,1,0, 0,0,0,1, // 50-5f 12.30 + 0,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // 60-6f 12.31 + 1,1,1,1, 1,1,1,1, 1,1,1,0, 0,0,0,0, // 70-7f 12.32 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 80-8f 12.33 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 90-9f 12.34 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // a0-af 12.35 + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // b0-bf 12.36 + 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // c0-cf 12.37 + 0,1,1,1, 1,1,1,0, 1,1,1,1, 1,0,0,1, // d0-df 12.38 + 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // e0-ef 12.39 + 0,1,1,1, 1,1,1,0, 1,1,1,1, 1,0,0,1, // f0-ff 12.40 + }; 12.41 + 12.42 //_____________________________________________________________________ 12.43 // Public Interfaces 12.44 //_____________________________________________________________________ 12.45 @@ -139,7 +167,7 @@ 12.46 result = replace(result,"x\\U","U"); 12.47 12.48 // Now see if we have any remaining illegal characters (see 12.49 - // RepositoryId.IDL_IDENTIFIER_CHARS array)... 12.50 + // IDL_IDENTIFIER_CHARS array)... 12.51 12.52 int length = result.length(); 12.53 StringBuffer buffer = null; 12.54 @@ -148,7 +176,7 @@ 12.55 12.56 char c = result.charAt(i); 12.57 12.58 - if (c > 255 || RepositoryId.IDL_IDENTIFIER_CHARS[c] == 0) { 12.59 + if (c > 255 || IDL_IDENTIFIER_CHARS[c] == 0) { 12.60 12.61 // We gotta convert. Have we already started? 12.62
13.1 --- a/src/share/classes/sun/rmi/rmic/iiop/StubGenerator.java Thu Jun 21 17:07:30 2012 -0700 13.2 +++ b/src/share/classes/sun/rmi/rmic/iiop/StubGenerator.java Tue Jun 26 10:13:49 2012 -0700 13.3 @@ -1,5 +1,5 @@ 13.4 /* 13.5 - * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved. 13.6 + * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. 13.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 13.8 * 13.9 * This code is free software; you can redistribute it and/or modify it 13.10 @@ -425,7 +425,7 @@ 13.11 // Write the _ids() method... 13.12 13.13 p.plnI("public String[] _ids() { "); 13.14 - p.pln("return _type_ids;"); 13.15 + p.pln("return (String[]) _type_ids.clone();"); 13.16 p.pOln("}"); 13.17 13.18 // Get all the methods and write each stub method... 13.19 @@ -1860,11 +1860,11 @@ 13.20 { 13.21 if(POATie){ 13.22 p.plnI("public String[] _all_interfaces(org.omg.PortableServer.POA poa, byte[] objectId){"); 13.23 - p.pln("return _type_ids;"); 13.24 + p.pln("return (String[]) _type_ids.clone();"); 13.25 p.pOln("}"); 13.26 } else { 13.27 p.plnI("public String[] _ids() { "); 13.28 - p.pln("return _type_ids;"); 13.29 + p.pln("return (String[]) _type_ids.clone();"); 13.30 p.pOln("}"); 13.31 } 13.32 }